enable inronic source install in integration test 53/13253/2
authorRozzii <adam.rozman@est.tech>
Fri, 8 Apr 2022 11:39:16 +0000 (14:39 +0300)
committerRozzii <adam.rozman@est.tech>
Thu, 21 Apr 2022 11:27:03 +0000 (14:27 +0300)
Change-Id: I2331f005f8d2eecc246f8dd5b11820ce4bcff1e3

jjb/metal3/defaults.yml
jjb/metal3/job_integration_tests.yml
jjb/metal3/projects.yml

index 884d641d4f0390badea8bc881d2056a9f351e49d..12371c397a00cedd2a8a6fa49a841d6505ec914f 100644 (file)
@@ -24,7 +24,7 @@
 # This file contains global default values for metal3 projects
 
 # Project Defaults
-- defaults:
+- defaults: &global_defaults
     name: global
     job_prefix: 'metal3'
     ci_github_admin_user: 'nordixinfra'
     ci_github_pipeline: 'jenkins/jobs/integration_tests.pipeline'
     ci_github_jenkins_credentials_id: 'metal3-jenkins-github-username-token'
     ci_ghprb_auth_id: '66556785-bf9b-42a0-812f-ccfd3c59f85c'
+- defaults:
+    name: integration-default-values
+    <<: *global_defaults
+    ironic_install_type: 'rpm'
+    name_postfix: ''
+    trigger_postfix: ''
+    ironic_repo: 'https://github.com/metal3-io/ironic-image.git'
+    ironic_branch: 'main'
index c8e52af9ad84d35b4f2bf44692b4aa234b10baee..edd807ebf6e77de2b91c9c926cd2ea7fd8bd02f9 100644 (file)
 # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository.
 
 - job-template:
-    id: integration_tests
-    name: '{job_prefix}_{proj}_{version}_integration_test_{image_os}'
-    description: "CAPM3 {capm3_version} integration tests for {org}/{repo} on {image_os}."
+    name: '{job_prefix}_{proj}_{version}_integration_test_{image_os}{name_postfix}'
+    description: "CAPM3 {capm3_version} integration tests for {org}/{repo} on {image_os} with ironic installed from {ironic_install_type}."
+    id: 'integration_tests'
     project-type: pipeline
-    defaults: global
+    defaults: integration-default-values
     disabled: False
     concurrent: True
     parameters:
         name: TARGET_NODE_MEMORY
         default: 4096
         description: 'RAM size of the target host.'
-
+    - string:
+        name: IRONIC_INSTALL_TYPE
+        default: '{ironic_install_type}'
+        description: 'Sets the installation type of ironic during ironic-image build of the BMO deployment'
+    - string:
+        name: IRONIC_LOCAL_IMAGE
+        default: '{ironic_repo}'
+        description: 'In case of ironic-image PR tested with ironic source install, the source repo of the PR  will be used to build the local ironic-image'
+    - string:
+        name: IRONIC_LOCAL_IMAGE_BRANCH
+        default: '${ironic_branch}'
+        description: 'In case of ironic-image PR tested with ironic source install, the source branch of the PR  will be used to build the local ironic-image'
     properties:
     - build-discarder:
         days-to-keep: 30
@@ -86,7 +97,7 @@
         org-list: "{ci_github_whitelist_org}"
         cron: 'H/5 * * * *'
         auth-id: "{ci_ghprb_auth_id}"
-        trigger-phrase: '((.|\n)*\s)?/test-{version}-{image_os}-integration(\s(.|\n)*)?'
+        trigger-phrase: '((.|\n)*\s)?/test-{{version}}-{{image_os}}-integration{trigger_postfix}(\s(.|\n)*)?'
         skip-build-phrase: '/skip-test'
         only-trigger-phrase: True
         github-hooks: True
index 692d6adfba34da1145b6d6d62a4438669e55029d..742c6a594fcdc69144caa59ba749228696c5a080 100644 (file)
           repo: baremetal-operator
       - ipam:
           repo: ip-address-manager
+      - ironic_image:
+          repo: ironic-image
+          name_postfix: '_ironic_from_source'
+          trigger_postfix: '-ironic-source'
+          ironic_repo: '${{ghprbAuthorRepoGitUrl}}'
+          ironic_branch: '${{ghprbActualCommit}}'
+          ironic_install_type: 'source'
       - ironic_image:
           repo: ironic-image
       - ironic_ipa_downloader: