diff --git a/ansible/inventory/group_vars/all/source-repositories b/ansible/inventory/group_vars/all/source-repositories index 1ca18d38..e679e3ee 100644 --- a/ansible/inventory/group_vars/all/source-repositories +++ b/ansible/inventory/group_vars/all/source-repositories @@ -41,15 +41,15 @@ community_files: * @stackhpc/smslab source_repositories: # Kayobe team - kolla: - ignored_releases: - - victoria - - wallaby - - xena - community_files: - - codeowners: - content: "{{ community_files.codeowners.kayobe }}" - dest: ".github/CODEOWNERS" + # kolla: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.kayobe }}" + # dest: ".github/CODEOWNERS" kayobe: ignored_releases: - victoria @@ -59,600 +59,600 @@ source_repositories: - codeowners: content: "{{ community_files.codeowners.kayobe }}" dest: ".github/CODEOWNERS" - kayobe-automation: - repository_type: "single-branch" - workflows: [] - community_files: - - codeowners: - content: "{{ community_files.codeowners.kayobe }}" - dest: ".github/CODEOWNERS" - kolla-ansible: - ignored_releases: - - victoria - - wallaby - - xena - community_files: - - codeowners: - content: "{{ community_files.codeowners.kayobe }}" - dest: ".github/CODEOWNERS" - openstack-admin-guide: - repository_type: "docs" - workflows: [] - community_files: - - codeowners: - content: "{{ community_files.codeowners.kayobe }}" - dest: ".github/CODEOWNERS" - stackhpc-kayobe-config: - workflows: - ignored_workflows: - default_branch_only: - - upstream-sync - elsewhere: - - tox - workflow_args: - upstream: "https://github.com/openstack/kayobe-config" - community_files: - - codeowners: - content: "{{ community_files.codeowners.kayobe }}" - dest: ".github/CODEOWNERS" - ansible-collection-kayobe-workflows: - repository_type: "ansible" - workflows: "{{ ansible_workflows.collection }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.kayobe }}" - dest: ".github/CODEOWNERS" - bifrost: - ignored_releases: - - victoria - - yoga - - zed - - 2023.1 - community_files: - - codeowners: - content: "{{ community_files.codeowners.kayobe }}" - dest: ".github/CODEOWNERS" - # OpenStack team - barbican: - ignored_releases: - - victoria - - xena - - yoga - - zed - - 2023.1 - - 2024.1 - - master - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - blazar: - ignored_releases: - - victoria - - wallaby - - xena - - yoga - - zed - - 2023.1 - - 2024.1 - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - cinder: - ignored_releases: - - victoria - - wallaby - - xena - - yoga - - zed - - 2023.1 - - 2024.1 - - master - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - cloudkitty: - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - cloudkitty-dashboard: - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - designate-dashboard: - ignored_releases: - - victoria - - wallaby - - xena - - zed - - 2023.1 - - 2024.1 - - master - workflows: - ignored_workflows: - elsewhere: - - tox - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - glance: - ignored_releases: - - victoria - - wallaby - - xena - - 2023.1 - - 2024.1 - - master - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - horizon: - ignored_releases: - - victoria - - wallaby - - xena - - zed - - 2024.1 - - master - workflows: - ignored_workflows: - elsewhere: - - tox - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - ironic-python-agent: - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - ignored_releases: - - zed - - 2024.1 - - master - ironic-ui: - ignored_releases: - - victoria - - wallaby - - xena - - zed - - 2023.1 - - 2024.1 - - master - workflows: - ignored_workflows: - elsewhere: - - tox - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - magnum: - ignored_releases: - - victoria - - wallaby - - xena - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - magnum-ui: - ignored_releases: - - victoria - - wallaby - - xena - - zed - - 2023.1 - - 2024.1 - - master - workflows: - ignored_workflows: - elsewhere: - - tox - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - networking-generic-switch: - ignored_releases: - - victoria - - wallaby - - xena - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - neutron: - ignored_releases: - - victoria - - wallaby - - xena - - 2024.1 - - master - workflows: - ignored_workflows: - elsewhere: - - tox - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - nova: - ignored_releases: - - victoria - - xena - - 2024.1 - - master - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - octavia: - ignored_releases: - - victoria - - wallaby - - xena - - yoga - - zed - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - octavia-dashboard: - ignored_releases: - - victoria - - wallaby - - xena - - zed - - 2023.1 - - 2024.1 - - master - workflows: - ignored_workflows: - elsewhere: - - tox - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - ovn-octavia-provider: - ignored_releases: - - victoria - - wallaby - - xena - - yoga - - zed - - 2024.1 - - master - workflows: - ignored_workflows: - elsewhere: - - tox - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - stackhpc-inspector-plugins: - repository_type: "branchless" - workflows: "{{ openstack_workflows.elsewhere }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - requirements: - ignored_releases: - - xena - - wallaby - - victoria - community_files: - - codeowners: - content: "{{ community_files.codeowners.openstack }}" - dest: ".github/CODEOWNERS" - # Ansible team - ansible-role-libvirt-host: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-libvirt-vm: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-os-manila-mount: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-vxlan: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - drac: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-luks: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-sriov: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-timezone: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-os-shade: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-grafana-conf: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-systemd-networkd: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - monasca-default-alarms: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - stackhpc.ssm: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-monasca-rsyslog: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-cluster-infra: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-os-ironic-state: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-openvpn: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - stackhpc.ipmi-exporter: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-mlnx-ufm: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-rundeck: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - dell-powerconnect-switch: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - drac-facts: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-gluster-cluster: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - mellanox-switch: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-os-config: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-role-mlnx-neo: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-collection-cephadm: - repository_type: "ansible" - workflows: - # Linters workflows not currently working on the Cephadm collection. - - publish-collection - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-collection-pulp: - repository_type: "ansible" - workflows: "{{ ansible_workflows.collection }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-collection-hashicorp: - repository_type: "ansible" - workflows: "{{ ansible_workflows.collection }}" - workflow_args: - lint_pip_dependencies: "git+https://github.com/stackhpc/ansible-modules-hashivault@stackhpc" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-collection-linux: - repository_type: "ansible" - workflows: "{{ ansible_workflows.collection }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-collection-network: - repository_type: "ansible" - workflows: "{{ ansible_workflows.collection }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-collection-openstack: - repository_type: "ansible" - workflows: "{{ ansible_workflows.collection }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - ansible-collection-openstack-ops: - repository_type: "ansible" - workflows: "{{ ansible_workflows.collection }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - openstack-config: - repository_type: "ansible" - workflows: [] - community_files: - - codeowners: - content: "{{ community_files.codeowners.ansible }}" - dest: ".github/CODEOWNERS" - # Batch team - ansible-role-cluster-nfs: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.batch }}" - dest: ".github/CODEOWNERS" - ansible-role-openhpc: - repository_type: "ansible" - workflows: "{{ ansible_workflows.role }}" - community_files: - - codeowners: - content: "{{ community_files.codeowners.batch }}" - dest: ".github/CODEOWNERS" - caas-slurm-appliance: - repository_type: "ansible" - workflows: [] - community_files: - - codeowners: - content: "{{ community_files.codeowners.batch }}" - dest: ".github/CODEOWNERS" - ansible-slurm-appliance: - repository_type: "ansible" - workflows: [] - community_files: - - codeowners: - content: "{{ community_files.codeowners.batch }}" - dest: ".github/CODEOWNERS" - # ReleaseTrain team - .github: - repository_type: "single-branch" - workflows: [] - community_files: - - codeowners: - content: "{{ community_files.codeowners.release_train }}" - dest: ".github/CODEOWNERS" - ARC-Installer: - repository_type: "single-branch" - workflows: [] - community_files: - - codeowners: - content: "{{ community_files.codeowners.release_train }}" - dest: ".github/CODEOWNERS" - stackhpc-release-train: - repository_type: "ansible" - workflows: [] - community_files: - - codeowners: - content: "{{ community_files.codeowners.release_train }}" - dest: ".github/CODEOWNERS" - stackhpc-release-train-clients: - repository_type: "ansible" - workflows: [] - community_files: - - codeowners: - content: "{{ community_files.codeowners.release_train }}" - dest: ".github/CODEOWNERS" + # kayobe-automation: + # repository_type: "single-branch" + # workflows: [] + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.kayobe }}" + # dest: ".github/CODEOWNERS" + # kolla-ansible: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.kayobe }}" + # dest: ".github/CODEOWNERS" + # openstack-admin-guide: + # repository_type: "docs" + # workflows: [] + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.kayobe }}" + # dest: ".github/CODEOWNERS" + # stackhpc-kayobe-config: + # workflows: + # ignored_workflows: + # default_branch_only: + # - upstream-sync + # elsewhere: + # - tox + # workflow_args: + # upstream: "https://github.com/openstack/kayobe-config" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.kayobe }}" + # dest: ".github/CODEOWNERS" + # ansible-collection-kayobe-workflows: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.collection }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.kayobe }}" + # dest: ".github/CODEOWNERS" + # bifrost: + # ignored_releases: + # - victoria + # - yoga + # - zed + # - 2023.1 + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.kayobe }}" + # dest: ".github/CODEOWNERS" + # # OpenStack team + # barbican: + # ignored_releases: + # - victoria + # - xena + # - yoga + # - zed + # - 2023.1 + # - 2024.1 + # - master + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # blazar: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # - yoga + # - zed + # - 2023.1 + # - 2024.1 + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # cinder: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # - yoga + # - zed + # - 2023.1 + # - 2024.1 + # - master + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # cloudkitty: + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # cloudkitty-dashboard: + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # designate-dashboard: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # - zed + # - 2023.1 + # - 2024.1 + # - master + # workflows: + # ignored_workflows: + # elsewhere: + # - tox + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # glance: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # - 2023.1 + # - 2024.1 + # - master + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # horizon: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # - zed + # - 2024.1 + # - master + # workflows: + # ignored_workflows: + # elsewhere: + # - tox + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # ironic-python-agent: + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # ignored_releases: + # - zed + # - 2024.1 + # - master + # ironic-ui: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # - zed + # - 2023.1 + # - 2024.1 + # - master + # workflows: + # ignored_workflows: + # elsewhere: + # - tox + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # magnum: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # magnum-ui: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # - zed + # - 2023.1 + # - 2024.1 + # - master + # workflows: + # ignored_workflows: + # elsewhere: + # - tox + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # networking-generic-switch: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # neutron: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # - 2024.1 + # - master + # workflows: + # ignored_workflows: + # elsewhere: + # - tox + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # nova: + # ignored_releases: + # - victoria + # - xena + # - 2024.1 + # - master + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # octavia: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # - yoga + # - zed + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # octavia-dashboard: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # - zed + # - 2023.1 + # - 2024.1 + # - master + # workflows: + # ignored_workflows: + # elsewhere: + # - tox + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # ovn-octavia-provider: + # ignored_releases: + # - victoria + # - wallaby + # - xena + # - yoga + # - zed + # - 2024.1 + # - master + # workflows: + # ignored_workflows: + # elsewhere: + # - tox + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # stackhpc-inspector-plugins: + # repository_type: "branchless" + # workflows: "{{ openstack_workflows.elsewhere }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # requirements: + # ignored_releases: + # - xena + # - wallaby + # - victoria + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.openstack }}" + # dest: ".github/CODEOWNERS" + # # Ansible team + # ansible-role-libvirt-host: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-libvirt-vm: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-os-manila-mount: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-vxlan: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # drac: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-luks: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-sriov: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-timezone: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-os-shade: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-grafana-conf: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-systemd-networkd: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # monasca-default-alarms: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # stackhpc.ssm: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-monasca-rsyslog: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-cluster-infra: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-os-ironic-state: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-openvpn: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # stackhpc.ipmi-exporter: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-mlnx-ufm: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-rundeck: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # dell-powerconnect-switch: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # drac-facts: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-gluster-cluster: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # mellanox-switch: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-os-config: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-role-mlnx-neo: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-collection-cephadm: + # repository_type: "ansible" + # workflows: + # # Linters workflows not currently working on the Cephadm collection. + # - publish-collection + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-collection-pulp: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.collection }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-collection-hashicorp: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.collection }}" + # workflow_args: + # lint_pip_dependencies: "git+https://github.com/stackhpc/ansible-modules-hashivault@stackhpc" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-collection-linux: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.collection }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-collection-network: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.collection }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-collection-openstack: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.collection }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # ansible-collection-openstack-ops: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.collection }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # openstack-config: + # repository_type: "ansible" + # workflows: [] + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.ansible }}" + # dest: ".github/CODEOWNERS" + # # Batch team + # ansible-role-cluster-nfs: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.batch }}" + # dest: ".github/CODEOWNERS" + # ansible-role-openhpc: + # repository_type: "ansible" + # workflows: "{{ ansible_workflows.role }}" + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.batch }}" + # dest: ".github/CODEOWNERS" + # caas-slurm-appliance: + # repository_type: "ansible" + # workflows: [] + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.batch }}" + # dest: ".github/CODEOWNERS" + # ansible-slurm-appliance: + # repository_type: "ansible" + # workflows: [] + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.batch }}" + # dest: ".github/CODEOWNERS" + # # ReleaseTrain team + # .github: + # repository_type: "single-branch" + # workflows: [] + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.release_train }}" + # dest: ".github/CODEOWNERS" + # ARC-Installer: + # repository_type: "single-branch" + # workflows: [] + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.release_train }}" + # dest: ".github/CODEOWNERS" + # stackhpc-release-train: + # repository_type: "ansible" + # workflows: [] + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.release_train }}" + # dest: ".github/CODEOWNERS" + # stackhpc-release-train-clients: + # repository_type: "ansible" + # workflows: [] + # community_files: + # - codeowners: + # content: "{{ community_files.codeowners.release_train }}" + # dest: ".github/CODEOWNERS" diff --git a/ansible/roles/source-repo-sync/tasks/add_community_files.yml b/ansible/roles/source-repo-sync/tasks/add_community_files.yml index cee41f28..00993721 100644 --- a/ansible/roles/source-repo-sync/tasks/add_community_files.yml +++ b/ansible/roles/source-repo-sync/tasks/add_community_files.yml @@ -17,7 +17,7 @@ cmd: | gh api \ -H "Accept: application/vnd.github.v3+json" \ - /repos/{{ owner }}/{{ repository_manifest.name }}/git/ref/heads/{{ community_manifest.branch }}-community-files + /repos/{{ owner }}/{{ repository_manifest.name }}/git/ref/heads/{{ community_manifest.prefix | default("") }}{{ community_manifest.branch }}-community-files changed_when: false failed_when: false register: branch_exists @@ -28,13 +28,13 @@ gh api \ --method DELETE \ -H "Accept: application/vnd.github.v3+json" \ - /repos/{{ owner }}/{{ repository_manifest.name }}/git/refs/heads/{{ community_manifest.branch }}-community-files + /repos/{{ owner }}/{{ repository_manifest.name }}/git/refs/heads/{{ community_manifest.prefix | default("") }}{{ community_manifest.branch }}-community-files when: branch_exists.rc == 0 - name: Create working branch # noqa command-instead-of-module ansible.builtin.shell: cmd: > - git checkout -b {{ community_manifest.branch }}-community-files \ + git checkout -b {{ community_manifest.prefix | default("") }}{{ community_manifest.branch }}-community-files \ origin/{{ community_manifest.prefix | default("") }}{{ community_manifest.branch }} chdir: "{{ staging_path }}/{{ repository_manifest.name }}" changed_when: true @@ -65,7 +65,7 @@ - name: Push branch to remote # noqa command-instead-of-module command-instead-of-shell no-handler ansible.builtin.shell: - cmd: "git push -u origin {{ community_manifest.branch }}-community-files" + cmd: "git push -u origin {{ community_manifest.prefix | default('') }}{{ community_manifest.branch }}-community-files" chdir: "{{ staging_path }}/{{ repository_manifest.name }}" when: community_copy.changed | bool diff --git a/ansible/roles/source-repo-sync/tasks/add_workflows.yml b/ansible/roles/source-repo-sync/tasks/add_workflows.yml index 5c9998cf..2ee72bba 100644 --- a/ansible/roles/source-repo-sync/tasks/add_workflows.yml +++ b/ansible/roles/source-repo-sync/tasks/add_workflows.yml @@ -17,7 +17,7 @@ cmd: | gh api \ -H "Accept: application/vnd.github.v3+json" \ - /repos/{{ owner }}/{{ repository_manifest.name }}/git/ref/heads/{{ workflow_manifest.branch }}-workflows + /repos/{{ owner }}/{{ repository_manifest.name }}/git/ref/heads/{{ workflow_manifest.prefix | default("") }}{{ workflow_manifest.branch }}-workflows changed_when: false failed_when: false register: working_branch_exists @@ -28,13 +28,13 @@ gh api \ --method DELETE \ -H "Accept: application/vnd.github.v3+json" \ - /repos/{{ owner }}/{{ repository_manifest.name }}/git/refs/heads/{{ workflow_manifest.branch }}-workflows + /repos/{{ owner }}/{{ repository_manifest.name }}/git/refs/heads/{{ workflow_manifest.prefix | default("") }}{{ workflow_manifest.branch }}-workflows when: working_branch_exists.rc == 0 - name: Create working branch # noqa command-instead-of-module ansible.builtin.shell: cmd: > - git checkout -b {{ workflow_manifest.branch }}-workflows \ + git checkout -b {{ workflow_manifest.prefix | default("") }}{{ workflow_manifest.branch }}-workflows \ origin/{{ workflow_manifest.prefix | default("") }}{{ workflow_manifest.branch }} chdir: "{{ staging_path }}/{{ repository_manifest.name }}" changed_when: true @@ -84,7 +84,7 @@ - name: Push branch to remote # noqa command-instead-of-module command-instead-of-shell no-handler ansible.builtin.shell: - cmd: "git push -u origin {{ workflow_manifest.branch }}-workflows" + cmd: "git push -u origin {{ workflow_manifest.prefix | default('') }}{{ workflow_manifest.branch }}-workflows" chdir: "{{ staging_path }}/{{ repository_manifest.name }}" changed_when: true diff --git a/terraform/github/branches.tf b/terraform/github/branches.tf index 71f62507..ccf980e7 100644 --- a/terraform/github/branches.tf +++ b/terraform/github/branches.tf @@ -204,6 +204,41 @@ resource "github_branch_protection" "kayobe_branch_protection_caracal" { } } +resource "github_branch_protection" "kayobe_branch_protection_master" { + for_each = toset(var.repositories["Kayobe"]) + repository_id = data.github_repository.repositories[each.key].node_id + + pattern = "stackhpc/master" + require_conversation_resolution = true + allows_deletions = false + allows_force_pushes = false + + required_pull_request_reviews { + dismiss_stale_reviews = true + require_code_owner_reviews = true + required_approving_review_count = 1 + } + + push_restrictions = [ + resource.github_team.organisation_teams["Developers"].node_id + ] + + required_status_checks { + contexts = lookup(lookup(var.required_status_checks, each.key, {}), "stackhpc/master", lookup(var.required_status_checks, each.key, { + "default" : [ + "tox / Tox pep8 with Python 3.12", + "tox / Tox py3 with Python 3.12", + "tox / Tox py3 with Python 3.10" + ] + }).default) + strict = false + } + + lifecycle { + prevent_destroy = true + } +} + resource "github_branch_protection" "openstack_branch_protection_py_3-6" { for_each = toset(var.repositories["OpenStack"]) repository_id = data.github_repository.repositories[each.key].node_id @@ -346,6 +381,41 @@ resource "github_branch_protection" "openstack_branch_protection_caracal" { } } +resource "github_branch_protection" "openstack_branch_protection_master" { + for_each = toset(var.repositories["OpenStack"]) + repository_id = data.github_repository.repositories[each.key].node_id + + pattern = "stackhpc/master" + require_conversation_resolution = true + allows_deletions = false + allows_force_pushes = false + + push_restrictions = [ + resource.github_team.organisation_teams["Developers"].node_id + ] + + required_pull_request_reviews { + dismiss_stale_reviews = true + require_code_owner_reviews = true + required_approving_review_count = 1 + } + + required_status_checks { + contexts = lookup(lookup(var.required_status_checks, each.key, {}), "stackhpc/master", lookup(var.required_status_checks, each.key, { + "default" : [ + "tox / Tox pep8 with Python 3.12", + "tox / Tox py3 with Python 3.12", + "tox / Tox py3 with Python 3.10" + ] + }).default) + strict = false + } + + lifecycle { + prevent_destroy = false + } +} + resource "github_branch_protection" "platform_branch_protection" { for_each = toset(var.repositories["Platform"]) repository_id = data.github_repository.repositories[each.key].node_id