Add discovery and build for multiple CPU architectures
This adds support for discovery of repo build servers for multiple CPU architectures. When multiple architectures are detected among the repo servers, this patch allows repo-install to assign and store a list of 'master' build servers for each CPU architecture, then use this to build artifacts independently for each CPU architecture in the deployment. Partially-Implements: bp/multi-arch-repo Change-Id: Ibfb77cc4ce87c9064f9af84946c5a9bbba5e1fb4
This commit is contained in:
parent
e1c2f89808
commit
108ea96349
@ -13,14 +13,28 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
- name: Group repo servers by architecture
|
||||
hosts: repo_all
|
||||
tasks:
|
||||
- name: Group repo servers by architecture
|
||||
group_by:
|
||||
key: repo_servers_{{ ansible_architecture }}
|
||||
tags:
|
||||
- "repo-build"
|
||||
|
||||
# repo_all[0] is built last to ensure it has all build artifacts for final indexing
|
||||
- name: Build new repo packages for a given release
|
||||
hosts: repo_all[0]
|
||||
hosts: repo_all[1:],repo_all[0]
|
||||
gather_facts: true
|
||||
user: root
|
||||
serial: 1
|
||||
pre_tasks:
|
||||
- name: Load local packages
|
||||
debug:
|
||||
msg: "Loading Packages"
|
||||
when:
|
||||
- "groups['repo_servers_{{ ansible_architecture }}'] | length > 0"
|
||||
- "inventory_hostname == groups['repo_servers_{{ ansible_architecture }}'][0]"
|
||||
with_py_pkgs: "{{ pkg_locations }}"
|
||||
register: local_packages
|
||||
tags:
|
||||
@ -28,6 +42,9 @@
|
||||
roles:
|
||||
- role: "repo_build"
|
||||
repo_build_release_tag: "{{ openstack_release }}"
|
||||
when:
|
||||
- "groups['repo_servers_{{ ansible_architecture }}'] | length > 0"
|
||||
- "inventory_hostname == groups['repo_servers_{{ ansible_architecture }}'][0]"
|
||||
tags:
|
||||
- "repo-build"
|
||||
vars:
|
||||
|
@ -0,0 +1,8 @@
|
||||
---
|
||||
features:
|
||||
- The repo install process is now able to support building and synchronizing
|
||||
artifacts for multiple CPU architectures. To support multiple architectures,
|
||||
one or more repo servers must be created for each CPU architecture in the
|
||||
deployment. When multiple CPU architectures are detected among the repo
|
||||
servers, the repo-discovery process will automatically assign a repo
|
||||
master to perform the build process for each architecture.
|
Loading…
Reference in New Issue
Block a user