X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=blobdiff_plain;f=jjb%2Flf-rtd-jobs.yaml;h=24bef44567d92afe0cb6800edcec62247a91249b;hb=7c8c0136203f61317e6904030f86dfbd5a6c402e;hp=64c6dac56a0d1ea7993ec2e8e6ba5fb0ae9bdddf;hpb=0ea9b36c7eb7f0cc9a3e9d6ab324685ebf1a8592;p=releng%2Fglobal-jjb.git diff --git a/jjb/lf-rtd-jobs.yaml b/jjb/lf-rtd-jobs.yaml index 64c6dac5..24bef445 100644 --- a/jjb/lf-rtd-jobs.yaml +++ b/jjb/lf-rtd-jobs.yaml @@ -1,47 +1,37 @@ --- -- job-group: - name: '{project-name}-rtd-jobs' - - # This job group contains all the ReadTheDocs jobs - - jobs: - - gerrit-rtd-merge - - gerrit-rtd-verify - -- job-group: - name: '{project-name}-github-rtd-jobs' - - # This job group contains all the ReadTheDocs jobs - - jobs: - - github-rtd-merge - - github-rtd-verify - #################### # COMMON FUNCTIONS # #################### -- lf_rtd_common: &lf_rtd_common +- _lf_rtd_common: &lf_rtd_common name: lf-rtd-common - # RTD verify and merge jobs are the same except for their scm, trigger, and - # builders definition. This anchor is the common template. ###################### # Default parameters # ###################### - gerrit_trigger_file_paths: - - compare-type: ANT - pattern: '**/*.rst' - - compare-type: ANT - pattern: '**/conf.py' + - compare-type: REG_EXP + pattern: '.*\.css' + - compare-type: REG_EXP + pattern: '.*\.html' + - compare-type: REG_EXP + pattern: '.*\.rst' + - compare-type: REG_EXP + pattern: '.*\/conf.py' + + # github_included_regions MUST match gerrit_trigger_file_paths + github_included_regions: + - '.*\.css' + - '.*\.html' + - '.*\.rst' + - '.*\/conf.py' ##################### # Job Configuration # ##################### project-type: freestyle - node: '{build-node}' + node: "{build-node}" properties: - lf-infra-properties: @@ -49,16 +39,15 @@ parameters: - lf-infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - stream: '{stream}' - lftools-version: '{lftools-version}' + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + stream: "{stream}" wrappers: - lf-infra-wrappers: - build-timeout: '{build-timeout}' - jenkins-ssh-credential: '{jenkins-ssh-credential}' + build-timeout: "{build-timeout}" + jenkins-ssh-credential: "{jenkins-ssh-credential}" publishers: - lf-infra-publish @@ -67,34 +56,9 @@ # RTD MERGE # ############# -- lf_rtd_merge: &lf_rtd_merge +- _lf_rtd_merge: &lf_rtd_merge name: lf-rtd-merge - # Merge job which triggers a POST of the docs project to readthedocs - # - # Required parameters: - # - # :rtd-project: This is the name of the project on ReadTheDocs.org. - # - # Optional parameters: - # - # :branch: Git branch to fetch for the build. (default: master) - # :build-days-to-keep: Days to keep build logs in Jenkins. (default: 7) - # :build-node: The node to run build on. - # :build-timeout: Timeout in seconds before aborting build. (default: 15) - # :git-url: base URL of git project. (default: https://github.com) - # :project-pattern: Project to trigger build against. (default: **) - # :stream: Keyword that can be used to represent a release code-name. - # Often the same as the branch. (default: master) - # - # :gerrit_merge_triggers: Override Gerrit Triggers. - # :gerrit_trigger_file_paths: Override file paths which can be used to - # filter which file modifications will trigger a build. - # (default: - compare-type: ANT - # pattern: '**/*.rst' - # - compare-type: ANT - # pattern: '**/conf.py') - ###################### # Default parameters # ###################### @@ -102,26 +66,32 @@ branch: master build-days-to-keep: 7 build-timeout: 15 + disable-job: false git-url: https://github.com - project-pattern: '**' + github-url: "https://github.com" + project-pattern: "**" stream: master submodule-recursive: true gerrit_merge_triggers: - change-merged-event - comment-added-contains-event: - comment-contains-value: remerge$ + comment-contains-value: '^Patch Set\s+\d+:\s+remerge\s*$' ##################### # Job Configuration # ##################### + disabled: "{disable-job}" + builders: + - lf-infra-pre-build - lf-rtd-trigger-build: - rtd-project: '{rtd-project}' + rtd-build-url: "{rtd-build-url}" + rtd-token: "{rtd-token}" - job-template: - name: '{project-name}-rtd-merge-{stream}' + name: "{project-name}-rtd-merge-{stream}" id: gerrit-rtd-merge <<: *lf_rtd_common # yamllint disable-line rule:key-duplicates @@ -129,71 +99,56 @@ triggers: - gerrit: - server-name: '{gerrit-server-name}' - trigger-on: '{obj:gerrit_merge_triggers}' + server-name: "{gerrit-server-name}" + trigger-on: "{obj:gerrit_merge_triggers}" projects: - - project-compare-type: 'ANT' - project-pattern: '{project-pattern}' + - project-compare-type: "ANT" + project-pattern: "{project-pattern}" branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: '{obj:gerrit_trigger_file_paths}' + - branch-compare-type: "ANT" + branch-pattern: "**/{branch}" + - branch-compare-type: "ANT" + branch-pattern: "refs/tags/**" + file-paths: "{obj:gerrit_trigger_file_paths}" - job-template: - name: '{project-name}-rtd-merge-{stream}' + name: "{project-name}-rtd-merge-{stream}" id: github-rtd-merge <<: *lf_rtd_common # yamllint disable-line rule:key-duplicates <<: *lf_rtd_merge properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" - github: - url: '{git-url}/{github-org}/{project}' + url: "{github-url}/{github-org}/{project}" triggers: - - lf-infra-github-pr-trigger: - trigger-phrase: '^remerge$' - only-trigger-phrase: false - status-context: 'RTD Merge' + - timed: "H H * * *" + - github + - pollscm: + cron: "" + - github-pull-request: + trigger-phrase: "^remerge$" + only-trigger-phrase: true + status-context: "RTD Merge" permit-all: true github-hooks: true - github-org: '' - github_pr_whitelist: - - '' - github_pr_admin_list: - - '' - - timed: 'H H * * *' + org-list: + - "{github-org}" + white-list: "{obj:github_pr_allowlist}" + admin-list: "{obj:github_pr_admin_list}" + included-regions: "{obj:github_included_regions}" + white-list-target-branches: + - "{branch}" ############# # RTD VERIFY# ############# -- lf_rtd_verify: &lf_rtd_verify +- _lf_rtd_verify: &lf_rtd_verify name: lf-rtd-verify - # Verify job which runs a tox build of the docs project - # - # Optional parameters: - # - # :branch: Git branch to fetch for the build. (default: master) - # :build-days-to-keep: Days to keep build logs in Jenkins. (default: 7) - # :build-node: The node to run build on. - # :build-timeout: Timeout in seconds before aborting build. (default: 15) - # :doc-dir: Directory where tox will place built docs. - # as defined in the tox.ini (default: docs/_build/html) - # :git-url: URL clone project from. (default: $GIT_URL/$PROJECT) - # :project-pattern: Project to trigger build against. (default: **) - # :stream: Keyword that can be used to represent a release code-name. - # Often the same as the branch. (default: master) - # :submodule-recursive: Whether to checkout submodules recursively. - # (default: true) - # - # :gerrit_verify_triggers: Override Gerrit Triggers. - # :gerrit_trigger_file_paths: Override file paths which can be used to - # filter which file modifications will trigger a build. - # (default: - compare-type: ANT - # pattern: '**/*.rst' - # - compare-type: ANT - # pattern: '**/conf.py') ###################### # Default parameters # @@ -202,11 +157,17 @@ branch: master build-days-to-keep: 7 build-timeout: 15 + disable-job: false doc-dir: docs/_build/html - git-url: '$GIT_URL/$PROJECT' - project-pattern: '**' + git-url: "$GIT_URL/$PROJECT" + github-url: "https://github.com" + project-pattern: "**" + python-version: python3 stream: master submodule-recursive: true + submodule-timeout: 10 + submodule-disable: false + gerrit-skip-vote: false gerrit_verify_triggers: - patchset-created-event: @@ -215,18 +176,22 @@ exclude-no-code-change: false - draft-published-event - comment-added-contains-event: - comment-contains-value: recheck$ + comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$' ##################### # Job Configuration # ##################### + disabled: "{disable-job}" + builders: + - lf-infra-pre-build - lf-rtd-verify: - doc-dir: '{doc-dir}' + doc-dir: "{doc-dir}" + python-version: "{python-version}" - job-template: - name: '{project-name}-rtd-verify-{stream}' + name: "{project-name}-rtd-verify-{stream}" id: gerrit-rtd-verify concurrent: true <<: *lf_rtd_common @@ -235,27 +200,34 @@ scm: - lf-infra-gerrit-scm: - branch: '{branch}' - jenkins-ssh-credential: '{jenkins-ssh-credential}' - git-url: '{git-url}' - refspec: '' - submodule-recursive: '{submodule-recursive}' + branch: "$GERRIT_BRANCH" + jenkins-ssh-credential: "{jenkins-ssh-credential}" + git-url: "{git-url}" + refspec: "" # Leave blank!! A later script will handle fetching + submodule-recursive: "{submodule-recursive}" + submodule-timeout: "{submodule-timeout}" + submodule-disable: "{submodule-disable}" choosing-strategy: default triggers: - gerrit: - server-name: '{gerrit-server-name}' - trigger-on: '{obj:gerrit_verify_triggers}' + server-name: "{gerrit-server-name}" + trigger-on: "{obj:gerrit_verify_triggers}" projects: - - project-compare-type: 'ANT' - project-pattern: '{project-pattern}' + - project-compare-type: "ANT" + project-pattern: "{project-pattern}" branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: '{obj:gerrit_trigger_file_paths}' + - branch-compare-type: "ANT" + branch-pattern: "**/{branch}" + file-paths: "{obj:gerrit_trigger_file_paths}" + skip-vote: + successful: "{gerrit-skip-vote}" + failed: "{gerrit-skip-vote}" + unstable: "{gerrit-skip-vote}" + notbuilt: "{gerrit-skip-vote}" - job-template: - name: '{project-name}-rtd-verify-{stream}' + name: "{project-name}-rtd-verify-{stream}" id: github-rtd-verify concurrent: true <<: *lf_rtd_common @@ -263,27 +235,29 @@ <<: *lf_rtd_verify properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" - github: - url: '{git-url}/{github-org}/{project}' + url: "{github-url}/{github-org}/{project}" scm: - lf-infra-github-scm: - url: '{git-clone-url}{github-org}/{project}' - refspec: '+refs/pull/*:refs/remotes/origin/pr/*' - branch: '{branch}' - submodule-recursive: '{submodule-recursive}' + url: "{git-clone-url}{github-org}/{project}" + refspec: "+refs/pull/*:refs/remotes/origin/pr/*" + branch: "$sha1" + submodule-recursive: "{submodule-recursive}" + submodule-timeout: "{submodule-timeout}" + submodule-disable: "{submodule-disable}" choosing-strategy: default - jenkins-ssh-credential: '{jenkins-ssh-credential}' + jenkins-ssh-credential: "{jenkins-ssh-credential}" triggers: - - lf-infra-github-pr-trigger: - trigger-phrase: '^recheck$' + - github-pull-request: + trigger-phrase: "^(recheck|reverify)$" only-trigger-phrase: false - status-context: 'RTD Verify' + status-context: "RTD Verify" permit-all: true github-hooks: true - github-org: '' - github_pr_whitelist: - - '' - github_pr_admin_list: - - '' + included-regions: "{obj:github_included_regions}" + white-list-target-branches: + - "{branch}"