The Life-cycle Tags
Creates- install:code
- install:configuration
Resolves vars and drops env.yml/auth.yml - install:vhosts
Builds nginx vhosts when relevant, can run locally or remotely - assets:pre-reqs
Installs ruby/sass/grunt/node - assets:gather
Processes assets
Migrates the RDBMS using manage.py today, make migrate in the future- migrate:mongodb
As above, but for whichever nosql option - manage:app-users
- manage:db
create/ensure the database and db users exist - manage:stop
- test:unit
- test:integration
- test:acceptance
Notes
- For the moment, we can implement "wildcard" tags by tagging tasks with
tags: [install, install:vhosts]
In the future, we may want to move all of the supervisor- and linking-related stuff into a separate tag (including rereading supervisor). (It's currently in install:configuration, which seems wrong. Maybe it should just go in manage:start?)
Sample Application
https://github.com/edx/configuration/pull/2265