CI: Add chart build job for latest Helm toolkit

This commit introduces a non-voting job to lint Helm charts against the
latest version of Helm toolkit from OpenStack-Helm Infra. This job
should serve as an indicator of when it's safe to advance the version of
Helm toolkit used by Airship.

Additionally, this commit modifies all Helm chart lint jobs to run on
each commit, regardless of the files modified by a change. This should
not introduce a noticeable difference in CI runtime, as these jobs
execute quicker than the tox jobs.

Change-Id: Iffbe718f2f8cabaac74910e0c40a13e17e3f0578
This commit is contained in:
Drew Walters 2019-03-28 16:49:03 -05:00
parent 9a632008a1
commit 4846a2d5c1
2 changed files with 44 additions and 0 deletions

View File

@ -23,9 +23,12 @@
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- airship-divingbell-chart-build-gate
- airship-divingbell-chart-build-latest-htk
gate:
jobs:
- airship-divingbell-linter
- airship-divingbell-chart-build-gate
# NOTE(portdirect): enable when voting enabled.
# - airship-divingbell-ubuntu:
# irrelevant-files:
@ -37,6 +40,23 @@
run: tools/gate/playbooks/zuul-linter.yaml
nodeset: openstack-helm-single-node
- job:
name: airship-divingbell-chart-build-gate
description: Builds charts using pinned Helm toolkit.
timeout: 7200
run: ./tools/gate/playbooks/build-charts.yaml
nodeset: openstack-helm-single-node
- job:
name: airship-divingbell-chart-build-latest-htk
description: Builds charts using latest Helm toolkit.
timeout: 7200
voting: false
run: ./tools/gate/playbooks/build-charts.yaml
nodeset: openstack-helm-single-node
vars:
HTK_COMMIT: master
- job:
name: airship-divingbell
roles:

View File

@ -0,0 +1,24 @@
# Copyright 2019, AT&T Intellectual Property
#
# 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.
- hosts: primary
tasks:
- name: Execute the make target to package Helm charts.
make:
chdir: "{{ zuul.project.src_dir }}"
target: charts
params:
HTK_COMMIT: "{{ HTK_COMMIT | default('') }}"
register: result
failed_when: result.failed