2 # Self-service job to lock/unlock a branch for release work or code-freeze
3 # The job also can enable/disable supercommitter rights for any given branch.
5 name: "{project-name}-gerrit-branch-lock-{stream}"
13 git-url: "$GIT_URL/$GERRIT_PROJECT"
15 submodule-disable: true
16 gerrit_merge_triggers: ""
22 project-type: freestyle
24 disabled: "{disable-job}"
27 - lf-infra-properties:
32 - lf-infra-parameters:
40 If DRY_RUN is enabled the permission changes are not pushed to Gerrit.
42 name: GERRIT_ACCESS_MODE
49 If CODE_FREEZE is selected then the GERRIT_BRANCH is locked for registered users.
50 If RELEASE_PREP is selected then the GERRIT_BRANCH is locked for registered users and unlocked for RELENG.
51 If SUPERCOMMITTERS is selected then supercommitters rights are granted on the GERRIT_BRANCH.
52 If UNLOCK is selected then the GERRIT_BRANCH is unlocked, anything under the section is removed.
57 jenkins-ssh-credential: "{jenkins-ssh-credential}"
60 - lf-infra-gerrit-scm:
63 branch: "$GERRIT_BRANCH"
64 submodule-recursive: false
65 submodule-timeout: "{submodule-timeout}"
66 submodule-disable: "{submodule-disable}"
67 choosing-strategy: default
68 jenkins-ssh-credential: "{jenkins-ssh-credential}"
71 - shell: !include-raw-escape: autorelease-gerrit-branch-lock.sh
77 name: autorelease-branch-lock
78 project: releng/autorelease
79 project-name: autorelease
81 - "{project-name}-gerrit-branch-lock-{stream}"
86 branch: "stable/sulfur"
88 branch: "stable/phosphorus"
90 branch: "stable/silicon"