Regroup OpenStack-Helm* gating under a folder
This move definitions of openstack-helm-infra into a newly created zuul.d folder. The advantage is to simplify readability of gating, and makes it easier for contributors to step into the gating of the openstack-helm-* projects. - zuul.d/playbooks will contain all the playbooks used for gating - zuul.d/nodesets.yaml contains all the specific nodesets required by OpenStack-Helm* projects - zuul.d/project.yaml will be defined in each repo, and will contain the repo's pipelines information (so this repository's project.yaml only contains openstack-helm-infra pipelines) - zuul.d/jobs.yaml will contain all the openstack-helm-* repositories jobs This patch also introduces a first common 'lint' playbook and 'openstack-helm-lint' job, showing how a job can be re-used across repositories without requiring repetition of job definition/plays in other repositories. Change-Id: Id055ddac4da4971b1fb13ac075a7659369cd2b24
This commit is contained in:
parent
e231a7c5fd
commit
100c900da0
2
Makefile
2
Makefile
@ -18,7 +18,7 @@ SHELL := /bin/bash
|
||||
HELM := helm
|
||||
TASK := build
|
||||
|
||||
EXCLUDES := helm-toolkit doc tests tools logs tmp roles playbooks releasenotes
|
||||
EXCLUDES := helm-toolkit doc tests tools logs tmp roles playbooks releasenotes zuul.d
|
||||
CHARTS := helm-toolkit $(filter-out $(EXCLUDES), $(patsubst %/.,%,$(wildcard */.)))
|
||||
|
||||
.PHONY: $(EXCLUDES) $(CHARTS)
|
||||
|
@ -1,4 +1,5 @@
|
||||
# Copyright 2017 The Openstack-Helm Authors.
|
||||
---
|
||||
# Copyright 2018 SUSE LINUX GmbH.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
@ -12,172 +13,10 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
- project:
|
||||
templates:
|
||||
- publish-openstack-docs-pti
|
||||
check:
|
||||
jobs:
|
||||
- openstack-helm-infra-linter
|
||||
- openstack-helm-infra-five-ubuntu
|
||||
- openstack-helm-infra-dev-deploy-ceph:
|
||||
# NOTE(srwilkers): Changing the dev-deploy-ceph job to nonvoting
|
||||
# until we can agree on the proper services to deploy with this job
|
||||
voting: false
|
||||
- openstack-helm-infra-dev-deploy-nfs:
|
||||
#NOTE(srwilkers): Changing the dev-deploy-nfs job to nonvoting until
|
||||
# we can agree on the proper services to deploy with this job
|
||||
voting: false
|
||||
- openstack-helm-infra-openstack-support
|
||||
- openstack-helm-infra-kubernetes-keystone-auth
|
||||
gate:
|
||||
jobs:
|
||||
- openstack-helm-infra-linter
|
||||
- openstack-helm-infra-five-ubuntu
|
||||
- openstack-helm-infra-openstack-support
|
||||
- openstack-helm-infra-kubernetes-keystone-auth
|
||||
experimental:
|
||||
jobs:
|
||||
#NOTE(srwilkers): Make fedora job experimental until issues resolved
|
||||
- openstack-helm-infra-five-fedora
|
||||
#NOTE(srwilkers): Make centos job experimental until issues resolved
|
||||
- openstack-helm-infra-five-centos
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-single-node
|
||||
nodes:
|
||||
- name: primary
|
||||
label: ubuntu-xenial
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-ubuntu
|
||||
nodes:
|
||||
- name: primary
|
||||
label: ubuntu-xenial
|
||||
- name: node-1
|
||||
label: ubuntu-xenial
|
||||
- name: node-2
|
||||
label: ubuntu-xenial
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
- name: nodes
|
||||
nodes:
|
||||
- node-1
|
||||
- node-2
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-centos
|
||||
nodes:
|
||||
- name: primary
|
||||
label: centos-7
|
||||
- name: node-1
|
||||
label: centos-7
|
||||
- name: node-2
|
||||
label: centos-7
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
- name: nodes
|
||||
nodes:
|
||||
- node-1
|
||||
- node-2
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-fedora
|
||||
nodes:
|
||||
- name: primary
|
||||
label: fedora-latest
|
||||
- name: node-1
|
||||
label: fedora-latest
|
||||
- name: node-2
|
||||
label: fedora-latest
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
- name: nodes
|
||||
nodes:
|
||||
- node-1
|
||||
- node-2
|
||||
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-five-node-ubuntu
|
||||
nodes:
|
||||
- name: primary
|
||||
label: ubuntu-xenial
|
||||
- name: node-1
|
||||
label: ubuntu-xenial
|
||||
- name: node-2
|
||||
label: ubuntu-xenial
|
||||
- name: node-3
|
||||
label: ubuntu-xenial
|
||||
- name: node-4
|
||||
label: ubuntu-xenial
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
- name: nodes
|
||||
nodes:
|
||||
- node-1
|
||||
- node-2
|
||||
- node-3
|
||||
- node-4
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-five-node-centos
|
||||
nodes:
|
||||
- name: primary
|
||||
label: centos-7
|
||||
- name: node-1
|
||||
label: centos-7
|
||||
- name: node-2
|
||||
label: centos-7
|
||||
- name: node-3
|
||||
label: centos-7
|
||||
- name: node-4
|
||||
label: centos-7
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
- name: nodes
|
||||
nodes:
|
||||
- node-1
|
||||
- node-2
|
||||
- node-3
|
||||
- node-4
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-five-node-fedora
|
||||
nodes:
|
||||
- name: primary
|
||||
label: fedora-latest
|
||||
- name: node-1
|
||||
label: fedora-latest
|
||||
- name: node-2
|
||||
label: fedora-latest
|
||||
- name: node-3
|
||||
label: fedora-latest
|
||||
- name: node-4
|
||||
label: fedora-latest
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
- name: nodes
|
||||
nodes:
|
||||
- node-1
|
||||
- node-2
|
||||
- node-3
|
||||
- node-4
|
||||
- job:
|
||||
name: openstack-helm-lint
|
||||
run: zuul.d/playbooks/lint.yml
|
||||
nodeset: ubuntu-xenial
|
||||
|
||||
- job:
|
||||
name: openstack-helm-infra-functional
|
||||
@ -224,6 +63,7 @@
|
||||
- ./tools/deployment/multinode/130-fluent-logging.sh
|
||||
- ./tools/deployment/multinode/140-kibana.sh
|
||||
|
||||
|
||||
- job:
|
||||
name: openstack-helm-infra-ubuntu
|
||||
parent: openstack-helm-infra
|
||||
@ -319,7 +159,6 @@
|
||||
- ./tools/deployment/openstack-support/035-mariadb.sh
|
||||
- ./tools/deployment/openstack-support/040-libvirt.sh
|
||||
- ./tools/deployment/openstack-support/045-openvswitch.sh
|
||||
|
||||
- job:
|
||||
name: openstack-helm-infra-five-ubuntu
|
||||
parent: openstack-helm-infra
|
151
zuul.d/nodesets.yaml
Normal file
151
zuul.d/nodesets.yaml
Normal file
@ -0,0 +1,151 @@
|
||||
---
|
||||
# Copyright 2017 The Openstack-Helm Authors.
|
||||
#
|
||||
# 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.
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-single-node
|
||||
nodes:
|
||||
- name: primary
|
||||
label: ubuntu-xenial
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-ubuntu
|
||||
nodes:
|
||||
- name: primary
|
||||
label: ubuntu-xenial
|
||||
- name: node-1
|
||||
label: ubuntu-xenial
|
||||
- name: node-2
|
||||
label: ubuntu-xenial
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
- name: nodes
|
||||
nodes:
|
||||
- node-1
|
||||
- node-2
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-centos
|
||||
nodes:
|
||||
- name: primary
|
||||
label: centos-7
|
||||
- name: node-1
|
||||
label: centos-7
|
||||
- name: node-2
|
||||
label: centos-7
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
- name: nodes
|
||||
nodes:
|
||||
- node-1
|
||||
- node-2
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-fedora
|
||||
nodes:
|
||||
- name: primary
|
||||
label: fedora-27
|
||||
- name: node-1
|
||||
label: fedora-27
|
||||
- name: node-2
|
||||
label: fedora-27
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
- name: nodes
|
||||
nodes:
|
||||
- node-1
|
||||
- node-2
|
||||
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-five-node-ubuntu
|
||||
nodes:
|
||||
- name: primary
|
||||
label: ubuntu-xenial
|
||||
- name: node-1
|
||||
label: ubuntu-xenial
|
||||
- name: node-2
|
||||
label: ubuntu-xenial
|
||||
- name: node-3
|
||||
label: ubuntu-xenial
|
||||
- name: node-4
|
||||
label: ubuntu-xenial
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
- name: nodes
|
||||
nodes:
|
||||
- node-1
|
||||
- node-2
|
||||
- node-3
|
||||
- node-4
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-five-node-centos
|
||||
nodes:
|
||||
- name: primary
|
||||
label: centos-7
|
||||
- name: node-1
|
||||
label: centos-7
|
||||
- name: node-2
|
||||
label: centos-7
|
||||
- name: node-3
|
||||
label: centos-7
|
||||
- name: node-4
|
||||
label: centos-7
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
- name: nodes
|
||||
nodes:
|
||||
- node-1
|
||||
- node-2
|
||||
- node-3
|
||||
- node-4
|
||||
|
||||
- nodeset:
|
||||
name: openstack-helm-five-node-fedora
|
||||
nodes:
|
||||
- name: primary
|
||||
label: fedora-27
|
||||
- name: node-1
|
||||
label: fedora-27
|
||||
- name: node-2
|
||||
label: fedora-27
|
||||
- name: node-3
|
||||
label: fedora-27
|
||||
- name: node-4
|
||||
label: fedora-27
|
||||
groups:
|
||||
- name: primary
|
||||
nodes:
|
||||
- primary
|
||||
- name: nodes
|
||||
nodes:
|
||||
- node-1
|
||||
- node-2
|
||||
- node-3
|
||||
- node-4
|
23
zuul.d/playbooks/lint.yml
Normal file
23
zuul.d/playbooks/lint.yml
Normal file
@ -0,0 +1,23 @@
|
||||
---
|
||||
# Copyright 2018 SUSE LINUX GmbH.
|
||||
#
|
||||
# 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[0]
|
||||
tasks:
|
||||
- name: Prevent trailing whitespaces
|
||||
shell: find . -not -path "*/\.*" -not -path "*/doc/build/*" -not -name "*.tgz" -type f -exec egrep -l " +$" {} \;
|
||||
register: _found_whitespaces
|
||||
failed_when: _found_whitespaces.stdout != ""
|
||||
args:
|
||||
chdir: "{{ ansible_user_dir }}/src/{{ zuul.project.canonical_name }}"
|
44
zuul.d/project.yaml
Normal file
44
zuul.d/project.yaml
Normal file
@ -0,0 +1,44 @@
|
||||
---
|
||||
# Copyright 2018 SUSE LINUX GmbH.
|
||||
#
|
||||
# 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.
|
||||
|
||||
- project:
|
||||
templates:
|
||||
- publish-openstack-docs-pti
|
||||
check:
|
||||
jobs:
|
||||
- openstack-helm-lint
|
||||
- openstack-helm-infra-five-ubuntu
|
||||
- openstack-helm-infra-dev-deploy-ceph:
|
||||
# NOTE(srwilkers): Changing the dev-deploy-ceph job to nonvoting
|
||||
# until we can agree on the proper services to deploy with this job
|
||||
voting: false
|
||||
- openstack-helm-infra-dev-deploy-nfs:
|
||||
#NOTE(srwilkers): Changing the dev-deploy-nfs job to nonvoting until
|
||||
# we can agree on the proper services to deploy with this job
|
||||
voting: false
|
||||
- openstack-helm-infra-openstack-support
|
||||
- openstack-helm-infra-kubernetes-keystone-auth
|
||||
gate:
|
||||
jobs:
|
||||
- openstack-helm-lint
|
||||
- openstack-helm-infra-five-ubuntu
|
||||
- openstack-helm-infra-openstack-support
|
||||
- openstack-helm-infra-kubernetes-keystone-auth
|
||||
experimental:
|
||||
jobs:
|
||||
#NOTE(srwilkers): Make fedora job experimental until issues resolved
|
||||
- openstack-helm-infra-five-fedora
|
||||
#NOTE(srwilkers): Make centos job experimental until issues resolved
|
||||
- openstack-helm-infra-five-centos
|
Loading…
Reference in New Issue
Block a user