Publish Helm charts into tarballs.openstack.org

This will start publishing all of the charts into tarballs.openstack.org
which should allow for easier public consumption of these charts.  This
patch covers adding publishing for openstack-helm-infra first.

Change-Id: Iaa14629c0d0c36b98c2295119af3008f14c0cd39
This commit is contained in:
Mohammed Naser 2020-09-11 11:19:53 -04:00
parent 6afb3e19e9
commit 887327aff8
4 changed files with 71 additions and 0 deletions

View File

@ -0,0 +1,42 @@
---
# Copyright 2020 VEXXHOST, Inc.
#
# 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: all
tasks:
- name: Download current index
register: _get_url
failed_when: _get_url.status_code not in (200, 404)
get_url:
url: https://tarballs.opendev.org/openstack/openstack-helm/index.yaml
dest: "{{ zuul.project.src_dir }}/index.yaml"
- name: Create a new index
when: _get_url.status_code == 404
- name: Merge into existing index
when: _get_url.status_code == 200
shell: helm repo index {{ zuul.project.src_dir }} --merge {{ zuul.project.src_dir }}/index.yaml
- name: Update Helm repository
synchronize:
mode: pull
src: "{{ zuul.project.src_dir }}"
dest: "{{ zuul.executor.work_root }}/artifacts/"
verify_host: true
rsync_opts:
- "--include=index.yaml"
- "--include=*.tgz"
- "--exclude=*"
...

View File

@ -0,0 +1,20 @@
---
# Copyright 2020 VEXXHOST, Inc.
#
# 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: all
roles:
- name: build-helm-packages
work_dir: "{{ zuul.project.src_dir }}"
...

View File

@ -25,6 +25,12 @@
- ^doc/.*$
- ^releasenotes/.*$
- job:
name: publish-openstack-helm-charts
parent: publish-openstack-artifacts
run: playbooks/publish/run.yaml
post-run: playbooks/publish/post.yaml
- job:
name: openstack-helm-infra-functional
run: playbooks/osh-infra-gate-runner.yaml

View File

@ -41,6 +41,9 @@
- openstack-helm-infra-aio-logging
- openstack-helm-infra-aio-monitoring
- openstack-helm-infra-openstack-support
post:
jobs:
- publish-openstack-helm-charts
# NOTE(srwilkers): Disabling all periodic and experimental jobs until
# issues with the kubeadm-aio based deployments are addressed
periodic: