5c349a458d
* Eliminate global DB connections. Instead, one connection is established (with the underlying object supporting pooling) and passed through the gin.Context. This allows test/prod to inject the appropriate DB object into the context. * Refactor tests appropriately for this new style of DB connection * Fix a bug in the routing caught by refactoring of tests |
||
---|---|---|
tools | ||
.dockerignore | ||
.gitignore | ||
auth_test.go | ||
auth.go | ||
config.go | ||
docker-compose.yml | ||
Dockerfile | ||
kolide.go | ||
models.go | ||
osquery.go | ||
README.md | ||
server.go | ||
sessions_test.go | ||
sessions.go | ||
story_test.go | ||
test_util.go | ||
users_test.go | ||
users.go |
Kolide
Building
To build the code, run the following from the root of the repository:
go build -o kolide
Testing
To run the application's tests, run the following from the root of the repository:
go test
Or if you using the Docker development environment run:
docker-compose app exec go test
Development Environment
To set up a canonical development environment via docker, run the following from the root of the repository:
docker-compose up
Once completed, you can access the application at https://<your-docker-ip>:8080
where your-docker-ip
is localhost in most native docker installations.
This requires that you have docker installed. At this point in time, automatic configuration tools are not included with this project.
If you'd like to shut down the virtual infrastructure created by docker, run the following from the root of the repository:
docker-compose down
Once you docker-compose up
and are running the databases, you can re-build
the code with:
docker-compose exec app go build -o kolide
and then run the following command to create the database tables:
docker-compose exec app ./kolide prepare-db
Docker Deployment
This repository comes with a simple Dockerfile. You can use this to easily deploy Kolide in any infrastructure context that can consume a docker image (heroku, kubernetes, rancher, etc).
To build the image locally, run:
docker build --rm -t kolide .
To run the image locally, simply run:
docker run -t -p 8080:8080 kolide