# Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - job: name: airship-airshipctl-roles-test run: tests/ansible/role-test-runner.yaml nodeset: airship-airshipctl-single-node files: - ^roles/.*$ - job: name: airship-airshipctl-golint pre-run: playbooks/airship-airshipctl-deploy-docker.yaml run: playbooks/airship-airshipctl-golint.yaml nodeset: airship-airshipctl-single-node voting: false files: &gofiles - ^Makefile$ - ^\.golangci\.yaml$ - ^(go\.(mod|sum)|.*\.go)$ - ^playbooks/airship-airshipctl-(golint|lint|unit)\.yaml$ - ^tools/(coverage_check|golint|gomod_check|install_linter)$ - job: name: airship-airshipctl-lint pre-run: playbooks/airship-airshipctl-deploy-docker.yaml run: playbooks/airship-airshipctl-lint.yaml nodeset: airship-airshipctl-single-node - job: name: airship-airshipctl-unit pre-run: playbooks/airship-airshipctl-deploy-docker.yaml run: playbooks/airship-airshipctl-unit.yaml nodeset: airship-airshipctl-single-node files: *gofiles - job: name: airship-airshipctl-check-github-issues description: Checks if a Github issue is referenced in the commit message run: playbooks/airship-airshipctl-check-github-issues.yaml nodeset: airship-airshipctl-single-node voting: false - job: name: airship-airshipctl-update-github-issues description: Updates and/or closes related issues on Github on merge run: playbooks/airship-airshipctl-update-github-issues.yaml nodeset: airship-airshipctl-single-node secrets: - name: github_credentials secret: airship_airshipctl_airshipit_github_token - job: name: airship-airshipctl-build-image nodeset: airship-airshipctl-single-node run: playbooks/airship-airshipctl-build-images.yaml irrelevant-files: &noncodefiles - ^certs/.*$ - ^docs/.*$ - ^.*\.md$ - ^\.github/.*$ - job: name: airship-airshipctl-validate-site-docs timeout: 3600 pre-run: - playbooks/airship-airshipctl-deploy-docker.yaml run: playbooks/airshipctl-gate-runner.yaml nodeset: airship-airshipctl-single-node irrelevant-files: *noncodefiles vars: gate_scripts: - ./tools/deployment/01_install_kubectl.sh - ./tools/deployment/21_systemwide_executable.sh - ./tools/validate_docs voting: false - job: name: airship-airshipctl-functional-existing-k8s pre-run: playbooks/airship-airshipctl-deploy-existing-k8s.yaml run: playbooks/airship-airshipctl-functional-existing-k8s.yaml nodeset: airship-airshipctl-single-node - job: name: airship-airshipctl-upload-git-mirror parent: upload-git-mirror description: Mirrors airship/airshipctl to airshipit/airshipctl vars: git_mirror_repository: airshipit/airshipctl secrets: - name: git_mirror_credentials secret: airship_airshipctl_airshipit_github_secret pass-to-parent: true - job: name: airship-airshipctl-gate-script-runner attempts: 1 timeout: 7200 pre-run: - playbooks/airship-airshipctl-deploy-docker.yaml - playbooks/airship-airshipctl-build-gate.yaml post-run: playbooks/airship-collect-logs.yaml run: playbooks/airshipctl-gate-runner.yaml nodeset: airship-airshipctl-single-16GB-bionic-node irrelevant-files: *noncodefiles dependencies: - name: openstack-tox-docs soft: true - name: airship-airshipctl-lint soft: true - name: airship-airshipctl-golint soft: true - name: airship-airshipctl-unit soft: true - name: airship-airshipctl-build-image soft: true - name: airship-airshipctl-validate-site-docs soft: true vars: site_name: test-site gate_scripts: - ./tools/deployment/01_install_kubectl.sh # 21_systemwide_executable.sh is run in the build-gate pre-run above - ./tools/deployment/22_test_configs.sh - ./tools/deployment/23_pull_documents.sh - ./tools/deployment/24_build_ephemeral_iso.sh - ./tools/deployment/25_deploy_ephemeral_node.sh - ./tools/deployment/26_deploy_metal3_capi_ephemeral_node.sh - ./tools/deployment/30_deploy_controlplane.sh - ./tools/deployment/31_deploy_initinfra_target_node.sh - ./tools/deployment/32_cluster_init_target_node.sh - ./tools/deployment/33_cluster_move_target_node.sh - ./tools/deployment/34_deploy_worker_node.sh - ./tools/deployment/35_deploy_workload.sh - ./tools/deployment/36_verify_hwcc_profiles.sh serve_dir: /srv/iso serve_port: 8099 log_roles: - gather-system-logs - airship-gather-apache-logs - airship-gather-libvirt-logs - airship-gather-runtime-logs - airship-airshipctl-gather-configs - describe-kubernetes-objects - airship-gather-pod-logs - job: name: airship-airshipctl-gate-script-runner-azuretest attempts: 1 timeout: 3600 pre-run: playbooks/airship-airshipctl-deploy-docker.yaml post-run: playbooks/airship-collect-azure-logs.yaml run: playbooks/airshipctl-gate-runner.yaml nodeset: airship-airshipctl-single-node irrelevant-files: *noncodefiles dependencies: - name: openstack-tox-docs soft: true - name: airship-airshipctl-lint soft: true - name: airship-airshipctl-golint soft: true - name: airship-airshipctl-unit soft: true - name: airship-airshipctl-build-image soft: true - name: airship-airshipctl-validate-site-docs soft: true vars: site_name: azure-test-site gate_scripts: - ./tools/deployment/01_install_kubectl.sh - ./tools/deployment/azure/11_build_kind_cluster.sh - ./tools/deployment/21_systemwide_executable.sh - ./tools/deployment/azure/31_create_configs.sh - ./tools/deployment/azure/41_initialize_management_cluster.sh serve_dir: /srv/iso serve_port: 8099 voting: false - job: name: airship-airshipctl-publish-image parent: airship-airshipctl-build-image post-run: playbooks/airship-airshipctl-publish-images.yaml irrelevant-files: *noncodefiles secrets: - name: airshipctl_image_repo_credentials secret: airshipctl_image_repo_credentials pass-to-parent: true vars: image: quay.io/airshipit/airshipctl image_repo: https://quay.io/api/v1/