A Battlesnake AI written in Python 3, based off the python-starter-snake.
This AI client uses the bottle web framework to serve requests and the gunicorn web server for running bottle on Heroku. Dependencies are listed in requirements.txt.
- a working Python 3.7 development environment (getting started guide)
- experience deploying Python apps to Heroku
- pip to install Python dependencies
-
Clone repo to your development environment:
git clone [email protected]:username/battlesnake-python.git
- Install dependencies using pip:
pip install -r requirements.txt
- Run unit tests
pip install -r requirements.dev.txt
pytest
- Run local server:
python app/main.py
- Test client in your browser: http://localhost:8080.
- Create a new Heroku app:
heroku create [APP_NAME]
- Deploy code to Heroku servers:
git push heroku master
- Open Heroku app in browser:
heroku open
or visit http://APP_NAME.herokuapp.com.
- View server logs with the
heroku logs
command:
heroku logs --tail
Other notes:
- To get a local environment going, ensure you've got both the snake AND the engine going.
#start engine cd ~/dev/battlesnake-2019/battlesnake-engine/ ./engine dev
#start snake cd ~/dev/battlesnake-2019/python-snake #python3 app/main.py gunicorn app.main:app #or for with console output PYTHONPATH=./ python app/main.py
- If the pytests are breaking and complaining about not being able to find the conftest.py file, delete the compiled python files in the projectsfind ''' . -name *.pyc -delete '''
- Jared Middleton ([email protected])
- Matthew Casiro ([email protected])