The timeline here is:
- Last successful echis deploy
- Migration merged into master
- Current attempted (failed) echis deploy
cchq echis django-manage populate_application_access will attempt to run the command on the
current release directory, which was created in #1 above, though the command isn’t available until #2.
While a deploy can’t be completed until the command is run, a more recent release directory can be set up, which should allow for this command to be run.
cchq echis fab setup_limited_release:keep_days=1 --set code_branch=origin/master
Then you can ssh to the django manage machine:
cchq echis ssh django_manage
Navigate to the newly created directory, which should be the most recent timestamp in
setup_limited_release command will also output the location of this directory)
Then you can enter the python environment and run the command manually:
$ source python_env-3.6/bin/activate
$ ./manage.py populate_application_access
Alternatively, you could deploy a commit from after the command was added and before the migration made it mandatory, run
cchq echis django-manage populate_application_access, then deploy the latest code. That’s more straightforward to describe, but requires two full deploys, and isn’t actually any easier in my opinion. Whichever you’re more comfortable with should be fine.