Battlesnakes created by a small team of GitHub Enterprise Support Engineers as a learning and team-building exercise.
- Add snake directory within
snakes
- Make new program config in
supervisord.conf
choosing a new port. Currently we have snakes in two languages (Ruby and Go)- Ruby snakes run on ports 4567+
- Go snakes run on 8080+
- Run
script/server
to launch all snakes - Make port public as needed to access from outside
docker build -t battlesnake .
docker run -p 4567:4567 -d battlesnake
Beyond language and snake-specific testing, we also run simulated games to get quick feedback on how snakes are performing.
[Testing isntructions here]
Development environment:
Deployment environment:
- Azure Container Instances
- Azure Traffic Manager
- Azure Log Analytics
CI/CD:
To deploy a change to this repository, follow the general process laid out below:
- Create a new branch and pull request with your changes
- Observe CI to ensure it is passing
- Get an approval from from the required codeowners
- Run
.deploy
on your pull request to deploy your changes to production - If you branch deployment completes successfully, merge your pull request!
To roll back a deployment to the last main
version, run .deploy main
.