Automatic config update

Generated by StarDoctor, see https://cr-buildbucket.appspot.com/build/8742670190644058561 for the recipe.

BUG=None
TEST=regenerated configs

Change-Id: I8a2850b43351860f3a84bfbff2a004108868ffb4
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/infra/suite_scheduler/+/5697873
Tested-by: ChromeOS Prod (Robot) <chromeos-ci-prod@chromeos-bot.iam.gserviceaccount.com>
Bot-Commit: ChromeOS Prod (Robot) <chromeos-ci-prod@chromeos-bot.iam.gserviceaccount.com>
Commit-Queue: ChromeOS Prod (Robot) <chromeos-ci-prod@chromeos-bot.iam.gserviceaccount.com>
1 file changed
tree: 2ca97f8f962fad20c53e2627a8732cd0cc5d76ba
  1. bin/
  2. configs/
  3. generated_configs/
  4. notebook/
  5. www/
  6. .gitignore
  7. .style.yapf
  8. __init__.py
  9. analytics.py
  10. analytics_unittest.py
  11. app.yaml
  12. appengine_config.py
  13. base_event.py
  14. base_event_unittest.py
  15. build_3d_event.py
  16. build_3d_event_unittest.py
  17. build_event.py
  18. build_event_unittest.py
  19. build_lib.py
  20. build_lib_unittest.py
  21. build_utils.py
  22. build_utils_unittest.py
  23. buildbucket.py
  24. buildbucket_unittest.py
  25. config_reader.py
  26. config_reader_unittest.py
  27. constants.py
  28. cron.py
  29. cron.yaml
  30. ctpv2_requester.py
  31. datastore_client.py
  32. datastore_client_unittest.py
  33. file_getter.py
  34. gae_import.py
  35. gae_test.py
  36. global_config.py
  37. local_integration_test.py
  38. main.py
  39. multi_duts_lib.py
  40. multi_duts_lib_unittest.py
  41. OWNERS
  42. PRESUBMIT.cfg
  43. queue.yaml
  44. README.md
  45. request_helper.py
  46. request_helper_unittest.py
  47. requirements.txt
  48. rest_client.py
  49. retry.py
  50. retry_unittest.py
  51. runner.py
  52. safe_log.py
  53. setup_environment.py
  54. stackdriver_lib.py
  55. task.py
  56. task_config_reader.py
  57. task_config_reader_unittest.py
  58. task_executor.py
  59. task_executor_unittest.py
  60. task_unittest.py
  61. test.yaml
  62. time_converter.py
  63. time_converter_unittest.py
  64. timed_event.py
  65. timed_event_unittest.py
  66. tot_manager.py
  67. tot_manager_unittest.py
  68. trigger_receiver.py
  69. trigger_receiver_unittest.py
  70. unblocked_terms.txt
  71. utils.py
  72. utils_unittest.py
README.md

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.