Clone this repo:
  1. 0bb97f6 Automatic config update by chromeos-ci-prod · 13 hours ago main
  2. ac792da Automatic config update by chromeos-ci-prod · 19 hours ago
  3. 63e260f Automatic config update by chromeos-ci-prod · 26 hours ago
  4. d1626de Automatic config update by chromeos-ci-prod · 32 hours ago
  5. 95fefc3 Automatic config update by chromeos-ci-prod · 2 days ago

Suite-Scheduler README

Developer Setup

SDK

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:

  • Install Google Cloud SDK:
    • Follow the instructions to install the Python App Engine component.
  • Log in to gcloud: gcloud auth login <username>@google.com
  • Install App Engine Python extensions
    • ./install_gcp_reqs

Developer environment

Suite-scheduler development must be done in the standard Chrome OS source checkout but entirely outside the Chrome OS chroot environment.

suite-scheduler uses depot_tools/vpython to provide a stable environment for development and release.

First, make sure you have depot_tools installed and stored within your $PATH

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,

  • Double check you're logged into the Google Cloud SDK by running gcloud auth list.
  • Contact Test Platform team or one of the OWNERS to be allowlisted.

Testing your changes

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. **

Making configuration changes

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.

Releasing to production

There are two instances of suite-scheduler:

Detailed deployment instructions can be found at go/suite-scheduler#deployment.