Technical Tasks
- Figure out how to make wheels work well
- Build a machine to host testing the workspace
- Deploy to app engine better
- use supervisord to start ngrok, bigsky, binder manager server, nginx, dartium, tee http://supervisord.org/, dump logs to /logs
- build a new mininal datastore from scratch (locally and against an appspot remotely)
- Move bam tool to CLI tool that's available anywhere and doesn't have to be ran from root of project http://click.pocoo.org/5/
- build multiple things in parallel
- Add logging to splunk
Deveoper stories As a SB developer I want to build a configuration for the project I'm working on So that I can share and reuse that configuration
As a SB developer I want to use a configuration to quickly build a workspace So that I can contribute code to core Workiva repos
Metrics to track:
- Time to build a new workspace from scratch (no git cache, no wheels, no pip cache)
- Time to build a new workspace from a configuration where you have a full cache
Target
CLI commands:
create - create a new binder workspace, spit out an empty config file with a sample config, create the gist to store the config clean - clean out the workspace to a state where a fresh build will succeed build - build bigsky, python env, link virtualenv to repos, link client side repos, build binder manager, doc viewer, binder manager admin update - how do I pull in new bigsky, new requirements ** just clean and build run - ngrok, bigsky, binder manager server, nginx, dartium, tee create-datastore - runs the initialize datastore script + additions save-datastore - save a datastore to your user-cache of datastores, optionally providing a name load-datastore - load the default datastore, or specify a datastore by name / timespamp list-datastore - list your user datastores load-config - load a config from a user/ticket repo save-config - update config
create-migration - spit out an empty migration file named with a prefixed with a timestamp run-migration - run a file that performs actions against the datastore run-all-migrations - run all migrations for this project
config.json datastore/ logs/ migrations/ repos/