mozilla-releng / mozilla-releng/scriptworker

potentially move production `cot_restricted_scopes` etc to the scriptworker-scripts repo

Open
#442 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
5
Forks
39
Avg merge
4h 18m
Merged PRs (30d)
6

Description

This may include:

  • zeroing out, or minimizing, the production CoT configs in scriptworker.cot.config.DEFAULT_CONFIG
    • e.g. cot_restricted_scopes, trusted_vcs_rules. valid_tasks_for, cot_restricted_trees, etc.
  • adding a single config file in scriptworker-scripts with the production CoT configs (or a config file per cot_product).
    • this file should be baked into the appropriate docker images.
  • download and use the production scriptworker-scripts production CoT config file during scriptworker production tests
    • we should also run these tests in scriptworker-scripts, on CoT config file change.

Details:

tom.prince:matrix: 10:36
@aki I was wondering if it would make sense to move cot_restricted_scopes to the -scripts repo, now that there is a single script repo (possibly also some of the other default config as well).

aki 10:37
@tom.prince moving it makes some sense overall. however, we do use those for testing production cot in the scriptworker repo.
10:37
we may want to move those tests if the production config is elsewhere
10:38
and then it's harder to see if you broke something when you refactor cot

aki 10:51
we solved for that in puppet by allowing for it to be set in both places, with eventual consistency (landing a puppet change for emergency changes, updating scriptworker with less urgency) and removing the puppet copy once they were in sync
10:52
could also download a config file from scriptworker-scripts during scriptworker tests

tom.prince:matrix: 12:26
Yeah, the later seems like a better solution.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading scriptworker.cot.config.DEFAULT_CONFIG and the existing production CoT tests, then compare how scriptworker-scripts packages configuration into its Docker images. Define where each production config belongs and how scriptworker tests obtain it. Done means the configs are maintained in scriptworker-scripts, available in the appropriate images, and production tests run against them in both repositories when relevant changes land.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
ci-cd, devops, testing
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.