X-Git-Url: https://gerrit.akraino.org/r/gitweb?p=ci-management.git;a=blobdiff_plain;f=jjb%2Fakraino-templates%2Fakraino-jjb-kni.yaml;h=7edb45c6003b2955fe500d0bd0971acd5514581a;hp=1f64bcc872001c591603292cbc8b0c6efe4fb240;hb=HEAD;hpb=257552b81ad9c547bf9c081d508ffa91d83840d5 diff --git a/jjb/akraino-templates/akraino-jjb-kni.yaml b/jjb/akraino-templates/akraino-jjb-kni.yaml index 1f64bcc..91e1a54 100644 --- a/jjb/akraino-templates/akraino-jjb-kni.yaml +++ b/jjb/akraino-templates/akraino-jjb-kni.yaml @@ -14,14 +14,36 @@ # See the License for the specific language governing permissions and # limitations under the License. # -- kni_common: &kni_common + +# A builder to ship logs from a bare metal Akraino deploy test node. +# Similar to lf-infra-ship-logs without python-tools-install.sh and +# job-cost.sh. +- builder: + name: kni-deploy-ship-logs + builders: + # Ensure no pre-existing .netrc files are overriding logs config + - lf-provide-maven-settings-cleanup + - config-file-provider: + files: + - file-id: "jenkins-log-archives-settings" + variable: "SETTINGS_FILE" + - lf-infra-create-netrc: + server-id: logs + - shell: !include-raw-escape: + - ../../global-jjb/shell/logs-deploy.sh + - shell: !include-raw-escape: + - ../../global-jjb/shell/logs-clear-credentials.sh + - description-setter: + regexp: "(^(Nexus|S3) build logs: .*)" + +- _kni_common: &kni_common name: kni-common ###################### # Default parameters # ###################### - build-node: "{build-node}" + build-node: "" build-days-to-keep: 30 build-timeout: 60 submodule-recursive: true @@ -35,30 +57,30 @@ node: "{build-node}" properties: - lf-infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - lf-infra-parameters: - project: '{project}' - branch: '{branch}' - stream: '{stream}' - lftools-version: '{lftools-version}' + project: "{project}" + branch: "{branch}" + stream: "{stream}" + lftools-version: "{lftools-version}" wrappers: - lf-infra-wrappers: - build-timeout: '{build-timeout}' - jenkins-ssh-credential: '{jenkins-ssh-credential}' + build-timeout: "{build-timeout}" + jenkins-ssh-credential: "{jenkins-ssh-credential}" scm: - lf-infra-gerrit-scm: - jenkins-ssh-credential: '{jenkins-ssh-credential}' - git-url: '{git-url}/{project}.git' - refspec: '$GERRIT_REFSPEC' - branch: '$GERRIT_BRANCH' - submodule-recursive: '{submodule-recursive}' - submodule-timeout: '{submodule-timeout}' + jenkins-ssh-credential: "{jenkins-ssh-credential}" + git-url: "{git-url}/{project}.git" + refspec: "$GERRIT_REFSPEC" + branch: "$GERRIT_BRANCH" + submodule-recursive: "{submodule-recursive}" + submodule-timeout: "{submodule-timeout}" submodule-disable: false - choosing-strategy: default + choosing-strategy: gerrit gerrit_verify_triggers: - patchset-created-event: @@ -71,19 +93,19 @@ 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}' + project-pattern: "{project}" branches: - branch-compare-type: ANT - branch-pattern: '**/{branch}' - file-paths: '{obj:gerrit_trigger_file_paths}' + branch-pattern: "**/{branch}" + file-paths: "{obj:gerrit_trigger_file_paths}" publishers: - lf-infra-publish -- kni_common_deploy: &kni_common_deploy +- _kni_common_deploy: &kni_common_deploy name: kni-common-deploy <<: *kni_common archive-artifacts: > @@ -91,51 +113,71 @@ parameters: - lf-infra-parameters: - project: '{project}' - branch: '{branch}' - stream: '{stream}' - lftools-version: '{lftools-version}' + project: "{project}" + branch: "{branch}" + stream: "{stream}" + lftools-version: "{lftools-version}" - string: name: ARCHIVE_ARTIFACTS - default: '{archive-artifacts}' + default: "{archive-artifacts}" description: Artifacts to archive to the logs server. wrappers: - lf-infra-wrappers: - build-timeout: '{build-timeout}' - jenkins-ssh-credential: '{jenkins-ssh-credential}' + build-timeout: "{build-timeout}" + jenkins-ssh-credential: "{jenkins-ssh-credential}" - credentials-binding: - ssh-user-private-key: credential-id: kni-secrets key-file-variable: KNI_KEY_PATH scm: - akraino-lf-infra-gerrit-scm: - jenkins-ssh-credential: '{jenkins-ssh-credential}' - git-url: '{git-url}/{project}.git' - refspec: '$GERRIT_REFSPEC' - branch: '$GERRIT_BRANCH' - submodule-recursive: '{submodule-recursive}' - submodule-timeout: '{submodule-timeout}' + jenkins-ssh-credential: "{jenkins-ssh-credential}" + git-url: "{git-url}/{project}.git" + refspec: "$GERRIT_REFSPEC" + branch: "$GERRIT_BRANCH" + submodule-recursive: "{submodule-recursive}" + submodule-timeout: "{submodule-timeout}" submodule-disable: false - choosing-strategy: default - basedir: '{project-name}' + choosing-strategy: gerrit + basedir: "{project-name}" - akraino-lf-infra-gerrit-scm: - jenkins-ssh-credential: '{jenkins-ssh-credential}' - git-url: '{git-url}/kni/installer.git' - refspec: 'refs/heads/master' - branch: 'master' - submodule-recursive: '{submodule-recursive}' - submodule-timeout: '{submodule-timeout}' + jenkins-ssh-credential: "{jenkins-ssh-credential}" + git-url: "{git-url}/kni/installer.git" + refspec: "refs/heads/master" + branch: "master" + submodule-recursive: "{submodule-recursive}" + submodule-timeout: "{submodule-timeout}" submodule-disable: false choosing-strategy: default - basedir: 'installer' + basedir: "installer" + + publishers: + - postbuildscript: + builders: + - role: BOTH + build-on: + - ABORTED + - FAILURE + - NOT_BUILT + - SUCCESS + - UNSTABLE + build-steps: + - kni-deploy-ship-logs + mark-unstable-if-failed: true + - workspace-cleanup: + exclude: + # Do not clean up *.jenkins-trigger files for jobs that use a + # properties file as input for triggering another build. + - "**/*.jenkins-trigger" + fail-build: false - job-template: id: kni-installer-verify-installer - name: '{project-name}-verify-installer' + name: "{project-name}-verify-installer" gerrit_trigger_file_paths: - compare-type: ANT - pattern: '**' + pattern: "**" <<: *kni_common build-node: centos7-builder-2c-1g @@ -147,66 +189,68 @@ - ../shell/build_kni_installer.sh - job-template: - id: kni-installer-verify-binary - name: '{project-name}-verify-binary' - <<: *kni_common - build-node: centos7-builder-8c-8g + id: kni-verify-deploy-aws + name: "kni-{project-name}-verify-deploy-aws" + build-node: kni-cloud + <<: *kni_common_deploy gerrit_trigger_file_paths: - compare-type: ANT - pattern: 'Makefile' + pattern: "profiles/production.aws/**" - compare-type: ANT - pattern: 'cmd/binary.go' - - triggers: - - gerrit: - server-name: '{gerrit-server-name}' - trigger-on: '{obj:gerrit_verify_triggers}' - projects: - - project-compare-type: ANT - project-pattern: '{project}' - branches: - - branch-compare-type: ANT - branch-pattern: '**/{branch}' - file-paths: '{obj:gerrit_trigger_file_paths}' + pattern: "sites/testing.aws.edge-sites.net/**" + - compare-type: ANT + pattern: "base/**" builders: - lf-infra-pre-build + - config-file-provider: + files: + - file-id: kni-coreos-pull-secret + target: akraino-secrets/coreos-pull-secret - shell: !include-raw-escape: - ../shell/install_go.sh - - shell: !include-raw-escape: - - ../shell/build_kni_binary.sh + - shell: ./installer/ci/kni_deploy_aws.sh - job-template: - id: kni-installer-publish-openshift-install-libvirt-binary - name: '{project-name}-publish-openshift-install-libvirt-binary' - <<: *kni_common - build-node: centos7-builder-8c-8g + id: kni-verify-deploy-gcp + name: "kni-{project-name}-verify-deploy-gcp" + site: edge-sites-testing.gcp.devcluster.openshift.com + build-node: kni-cloud + <<: *kni_common_deploy + + gerrit_trigger_file_paths: + - compare-type: ANT + pattern: "profiles/production.gcp/**" + - compare-type: ANT + pattern: "sites/edge-sites-testing.gcp.devcluster.openshift.com/**" + - compare-type: ANT + pattern: "base/**" - gerrit_trigger_file_paths: [] - gerrit_build_triggers: - - comment-added-contains-event: - comment-contains-value: '^build-binary' builders: - lf-infra-pre-build + - config-file-provider: + files: + - file-id: kni-coreos-pull-secret + target: akraino-secrets/coreos-pull-secret - shell: !include-raw-escape: - ../shell/install_go.sh - - shell: !include-raw-escape: - - ../shell/build_openshift_install_libvirt_binary.sh + - shell: ./installer/ci/kni_deploy_gcp.sh {site} - job-template: - id: kni-verify-deploy-aws - name: 'kni-{project-name}-verify-deploy-aws' - build-node: kni-libvirt + id: kni-verify-deploy-gcp-hub + name: "kni-{project-name}-verify-deploy-gcp" + site: kni-mgmt-hub.gcp.devcluster.openshift.com + build-node: kni-cloud <<: *kni_common_deploy gerrit_trigger_file_paths: - compare-type: ANT - pattern: 'profiles/production.aws/**' + pattern: "profiles/production.gcp/**" - compare-type: ANT - pattern: 'sites/testing.aws.edge-sites.net/**' + pattern: "sites/kni-mgmt-hub.gcp.devcluster.openshift.com/**" - compare-type: ANT - pattern: 'base/**' + pattern: "base/**" builders: - lf-infra-pre-build @@ -216,21 +260,22 @@ target: akraino-secrets/coreos-pull-secret - shell: !include-raw-escape: - ../shell/install_go.sh - - shell: ./installer/ci/kni_deploy_aws.sh + - shell: ./installer/ci/kni_deploy_gcp.sh {site} - job-template: - id: kni-verify-deploy-libvirt - name: 'kni-{project-name}-verify-deploy-libvirt' - build-node: kni-libvirt + id: kni-verify-deploy-gcp-ie + name: "kni-{project-name}-verify-deploy-gcp" + site: kni-ie.gcp.devcluster.openshift.com + build-node: kni-cloud <<: *kni_common_deploy gerrit_trigger_file_paths: - compare-type: ANT - pattern: 'profiles/testing.libvirt/**' + pattern: "profiles/production.gcp/**" - compare-type: ANT - pattern: 'sites/testing.virt.edge-sites.net/**' + pattern: "sites/kni-ie.gcp.devcluster.openshift.com/**" - compare-type: ANT - pattern: 'base/**' + pattern: "base/**" builders: - lf-infra-pre-build @@ -238,48 +283,46 @@ files: - file-id: kni-coreos-pull-secret target: akraino-secrets/coreos-pull-secret - - file-id: kni-ssh-pub-key - target: akraino-secrets/ssh-pub-key - shell: !include-raw-escape: - ../shell/install_go.sh - - shell: ./installer/ci/kni_deploy_libvirt.sh + - shell: ./installer/ci/kni_deploy_gcp.sh {site} - job-template: id: kni-verify-deploy-baremetal - name: 'kni-{project-name}-verify-deploy-baremetal' + name: "kni-{project-name}-verify-deploy-baremetal" <<: *kni_common_deploy build-timeout: 120 build-node: kni-baremetal gerrit_trigger_file_paths: - compare-type: ANT - pattern: 'profiles/production.baremetal/**' + pattern: "profiles/production.baremetal/**" - compare-type: ANT - pattern: 'sites/testing.baremetal.edge-sites.net/**' + pattern: "sites/testing.baremetal.edge-sites.net/**" - compare-type: ANT - pattern: 'base/**' + pattern: "base/**" scm: - akraino-lf-infra-gerrit-scm: - jenkins-ssh-credential: '{jenkins-ssh-credential}' - git-url: 'https://github.com/yrobla/testing.baremetal.edge-sites.net' - refspec: '$GERRIT_REFSPEC' - branch: '$GERRIT_BRANCH' - submodule-recursive: '{submodule-recursive}' - submodule-timeout: '{submodule-timeout}' + jenkins-ssh-credential: "{jenkins-ssh-credential}" + git-url: "https://gerrit.akraino.org/r/kni/blueprint-pae" + refspec: "$GERRIT_REFSPEC" + branch: "$GERRIT_BRANCH" + submodule-recursive: "{submodule-recursive}" + submodule-timeout: "{submodule-timeout}" submodule-disable: false - choosing-strategy: default - basedir: 'testing.baremetal.edge-sites.net' + choosing-strategy: gerrit + basedir: "kni-blueprint-pae" - akraino-lf-infra-gerrit-scm: - jenkins-ssh-credential: '{jenkins-ssh-credential}' - git-url: '{git-url}/kni/installer.git' - refspec: 'refs/heads/master' - branch: 'master' - submodule-recursive: '{submodule-recursive}' - submodule-timeout: '{submodule-timeout}' + jenkins-ssh-credential: "{jenkins-ssh-credential}" + git-url: "{git-url}/kni/installer.git" + refspec: "refs/heads/master" + branch: "master" + submodule-recursive: "{submodule-recursive}" + submodule-timeout: "{submodule-timeout}" submodule-disable: false choosing-strategy: default - basedir: 'installer' + basedir: "installer" builders: - lf-infra-pre-build