A commandline interface for provisioning AWS environments for the Ski Analytics Services project.
This tool is used in development and in the Continuous Integration Pipeline of the Ski Analytics Services project. Originally these tools formed a part of that project but have been ported to their own repo to take advantage of an automated build pipeline to create the docker image and to simplify the services project. Plus it was a bit too meta having the tools to build the services project embedded in the build of that project.
- As a java utility program to manage deployment environments + data
- As a complete development environment for ski-analytics-services (via docker)
- As part of the CI pipeline for
- Full database backup & restore
- Per user account backup & restore
- Backup to local storage or a designated S3 bucket
- Show the current deployment status of a given environmentDefinition
- Provision an environmentDefinition from scratch
- Update a running environmentDefinition with only modules that have changed
- De-provision an environmentDefinition & clean up resources
To use the docker image:
docker run -e BB_PASS=<password> -it aengus/crunch-ski-tools:LATEST /bin/sh
- password to bitbucket account with rw access to (only) the environmentDefinition repository
When using the docker container from CI ensure that on startup the environmentDefinition variable is passed in.
See circleci docs
There are a few tools that need to be manually configured to run this project.
Tool used to enforce commit message format. Use the commit
script to commit.
npm i -g commitizen
- IntelliJ -> Preferences -> Build, Execution , Deployment -> Compiler
- Enable Annotation processing
- Obtain processors from project classpath
- Install IDE plugin