suite-scheduler is an AppEngine Standard Python Environment V1 application. You need the Google Cloud SDK's AppEngine Python component to develop and deploy this application:
gcloud auth login <username>@google.com
gcloud components install app-engine-python
gcloud components install app-engine-python-extras
Suite-scheduler development must be done in the standard Chrome OS source checkout but entirely outside the Chrome OS chroot environment.
suite-scheduler uses infra_virtualenv to provide a stable environment for development and release.
First, make sure you install virtualenv
with version at least 20.0.
Then, to (re)initialize developer environment, run
bin/setup_environment
For testing changes beyond to the configs/
directory, and for deploying suite-scheduler, you must also obtain certain service credentials used by suite-scheduler.
bin/setup_environment --load-creds
If you get failures when trying to download credentials,
gcloud auth list
.Changes must be validated with the full test suite:
bin/run_tests bin/run_tests --debug # More verbose
These tests include some integration tests that can take over 5 minutes to run.
** WARNING: suite-scheduler unittests do not currently run in presubmit. You MUST ensure that unit-tests pass locally for your change. **
Changes to suite-scheduler configs are made in config-internal, as of 2020. Detailed instructions on adding/editing config files can be found at go/ss-configs.
There are two instances of suite-scheduler:
Detailed deployment instructions can be found at go/suite-scheduler#deployment.