Compare commits
2 Commits
e6fa94e2e1
...
80e26c806e
Author | SHA1 | Date | |
---|---|---|---|
|
80e26c806e | ||
|
41a84ab580 |
24
ansible/playbooks/files/os_nova.patch
Normal file
24
ansible/playbooks/files/os_nova.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
diff --git a/tasks/nova_install.yml b/tasks/nova_install.yml
|
||||||
|
index 3002c22..523b867 100644
|
||||||
|
--- a/tasks/nova_install.yml
|
||||||
|
+++ b/tasks/nova_install.yml
|
||||||
|
@@ -38,12 +38,18 @@
|
||||||
|
tags:
|
||||||
|
- nova-pip-packages
|
||||||
|
|
||||||
|
+- name: Retrieve the constraints URL
|
||||||
|
+ uri:
|
||||||
|
+ url: "{{ nova_upper_constraints_url }}"
|
||||||
|
+ return_content: yes
|
||||||
|
+ register: _u_c_contents
|
||||||
|
+
|
||||||
|
- name: Install the python venv
|
||||||
|
import_role:
|
||||||
|
name: "python_venv_build"
|
||||||
|
vars:
|
||||||
|
venv_python_executable: "{{ nova_venv_python_executable }}"
|
||||||
|
- venv_build_constraints: "{{ nova_git_constraints }}"
|
||||||
|
+ venv_build_constraints: "{{ _u_c_contents.content.split('\n') | reject('match', '^(futures|pypowervm)') | list }}"
|
||||||
|
venv_build_distro_package_list: "{{ nova_devel_distro_packages }}"
|
||||||
|
venv_install_destination_path: "{{ nova_bin | dirname }}"
|
||||||
|
venv_pip_install_args: "{{ nova_pip_install_args }}"
|
BIN
ansible/playbooks/files/python38-lxc-3.0.4-11.el8.x86_64.rpm
Normal file
BIN
ansible/playbooks/files/python38-lxc-3.0.4-11.el8.x86_64.rpm
Normal file
Binary file not shown.
2
ansible/playbooks/files/user_debug.yml
Normal file
2
ansible/playbooks/files/user_debug.yml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
nova_git_repo: master
|
@ -1,3 +1,41 @@
|
|||||||
---
|
---
|
||||||
lxc_container_base_name: "rocky-8-amd64"
|
lxc_container_base_name: "rocky-8-amd64"
|
||||||
lxc_hosts_container_build_command: "dnf --assumeyes --installroot=/var/lib/machines/{{ lxc_container_base_name }} install --setopt=install_weak_deps=False --nodocs rootfiles coreutils dnf rocky-release rocky-repos --releasever=8"
|
lxc_hosts_container_build_command: "dnf --assumeyes --installroot=/var/lib/machines/{{ lxc_container_base_name }} install --setopt=install_weak_deps=False --nodocs rootfiles coreutils dnf rocky-release rocky-repos --releasever=8"
|
||||||
|
|
||||||
|
|
||||||
|
lxc_container_map:
|
||||||
|
distro: rockylinux
|
||||||
|
architecture: amd64
|
||||||
|
arch: amd64
|
||||||
|
release: 8
|
||||||
|
lxc_cache_map:
|
||||||
|
distro: rockylinux
|
||||||
|
arch: "{{ lxc_architecture_mapping.get( ansible_facts['architecture'] ) }}"
|
||||||
|
release: 8
|
||||||
|
copy_from_host:
|
||||||
|
- /etc/default/locale
|
||||||
|
- /etc/environment
|
||||||
|
- /etc/localtime
|
||||||
|
- /etc/locale.conf
|
||||||
|
- /etc/protocols
|
||||||
|
- /etc/pki/rpm-gpg/
|
||||||
|
- /etc/yum/pluginconf.d/fastestmirror.conf
|
||||||
|
- /etc/yum.repos.d/
|
||||||
|
|
||||||
|
lxc_cache_extra_distro_packages:
|
||||||
|
- ca-certificates
|
||||||
|
- iputils
|
||||||
|
- iproute
|
||||||
|
- openssh-server
|
||||||
|
- policycoreutils
|
||||||
|
- procps
|
||||||
|
- python3
|
||||||
|
- python3-libs
|
||||||
|
- rsync # os_keystone runs serial=1 and uses rsync before the distro packages have been installed on all keystone targets
|
||||||
|
- setup
|
||||||
|
- sudo
|
||||||
|
- systemd
|
||||||
|
- systemd-networkd
|
||||||
|
- systemd-resolvd
|
||||||
|
- systemd-sysv
|
||||||
|
- tzdata
|
||||||
|
@ -123,7 +123,7 @@
|
|||||||
tags: repos
|
tags: repos
|
||||||
|
|
||||||
- name: fetch patch
|
- name: fetch patch
|
||||||
ansible.builtin.shell: 'git fetch https://review.opendev.org/openstack/openstack-ansible refs/changes/73/823573/5 && git checkout FETCH_HEAD'
|
ansible.builtin.shell: 'git fetch https://review.opendev.org/openstack/openstack-ansible refs/changes/73/823573/6 && git checkout FETCH_HEAD'
|
||||||
args:
|
args:
|
||||||
chdir: /opt/openstack-ansible/
|
chdir: /opt/openstack-ansible/
|
||||||
|
|
||||||
|
@ -73,6 +73,8 @@
|
|||||||
args:
|
args:
|
||||||
creates: /etc/openstack_deploy/user_secrets.yml.tar
|
creates: /etc/openstack_deploy/user_secrets.yml.tar
|
||||||
|
|
||||||
|
- import_tasks: tasks/python3-lxc.yml
|
||||||
|
|
||||||
- name: "[AIO] Deploy and setup configuration / bootstrap"
|
- name: "[AIO] Deploy and setup configuration / bootstrap"
|
||||||
when: aio_install | default('false')
|
when: aio_install | default('false')
|
||||||
block:
|
block:
|
||||||
@ -80,12 +82,14 @@
|
|||||||
debug:
|
debug:
|
||||||
var: aio_install
|
var: aio_install
|
||||||
|
|
||||||
- name: Run bootstrap ansible with included args
|
- name: Run bootstrap aio with included args
|
||||||
ansible.builtin.shell: scripts/bootstrap-aio.sh
|
ansible.builtin.shell: scripts/bootstrap-aio.sh
|
||||||
become: true
|
become: true
|
||||||
args:
|
args:
|
||||||
chdir: /opt/openstack-ansible/
|
chdir: /opt/openstack-ansible/
|
||||||
creates: /etc/openstack_deploy/
|
creates: /etc/openstack_deploy/
|
||||||
|
environment:
|
||||||
|
SCENARIO: "{{ SCENARIO | default('') }}"
|
||||||
tags:
|
tags:
|
||||||
- bootstrap
|
- bootstrap
|
||||||
- aio
|
- aio
|
||||||
@ -104,9 +108,10 @@
|
|||||||
with_items:
|
with_items:
|
||||||
- user_lxc
|
- user_lxc
|
||||||
- user_galera
|
- user_galera
|
||||||
|
- user_debug
|
||||||
tags: config
|
tags: config
|
||||||
|
|
||||||
- name: fuck my entire life
|
- name: manually patch lxc_hosts role to bring in powertools repo
|
||||||
ansible.builtin.copy:
|
ansible.builtin.copy:
|
||||||
src: "files/{{ item }}.yml"
|
src: "files/{{ item }}.yml"
|
||||||
dest: /etc/ansible/roles/lxc_hosts/tasks/
|
dest: /etc/ansible/roles/lxc_hosts/tasks/
|
||||||
@ -115,6 +120,21 @@
|
|||||||
- lxc_install_dnf
|
- lxc_install_dnf
|
||||||
tags: config
|
tags: config
|
||||||
|
|
||||||
|
- name: manually patch os_nova role to kill powervmtools and futures== requiresments
|
||||||
|
ansible.builtin.copy:
|
||||||
|
src: "files/{{ item }}"
|
||||||
|
dest: /tmp/
|
||||||
|
mode: '0644'
|
||||||
|
with_items:
|
||||||
|
- os_nova.patch
|
||||||
|
tags: config
|
||||||
|
|
||||||
|
- name: patch the thing
|
||||||
|
args:
|
||||||
|
chdir: /etc/ansible/roles/os_nova/
|
||||||
|
ansible.builtin.shell: patch -p1 < /tmp/os_nova.patch
|
||||||
|
when: do_patch | bool
|
||||||
|
|
||||||
- name: Disable SSH Agent Forwarding
|
- name: Disable SSH Agent Forwarding
|
||||||
lineinfile:
|
lineinfile:
|
||||||
dest: /etc/ssh/sshd_config
|
dest: /etc/ssh/sshd_config
|
||||||
|
26
ansible/playbooks/tasks/python3-lxc.yml
Normal file
26
ansible/playbooks/tasks/python3-lxc.yml
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
---
|
||||||
|
- name: Enable PowerTools repo
|
||||||
|
# NB: doesn't run command `dnf config-manager --set-enabled PowerTools` as can't make that idempotent
|
||||||
|
lineinfile:
|
||||||
|
path: /etc/yum.repos.d/Rocky-PowerTools.repo
|
||||||
|
create: false # so raise error if not already installed
|
||||||
|
regexp: enabled=
|
||||||
|
line: enabled=1
|
||||||
|
when: ansible_distribution_major_version == "8"
|
||||||
|
|
||||||
|
- name: Copy distributed openstack configs
|
||||||
|
ansible.builtin.copy:
|
||||||
|
src: "files/{{ item }}"
|
||||||
|
dest: /tmp/
|
||||||
|
mode: '0644'
|
||||||
|
with_items:
|
||||||
|
- python38-lxc-3.0.4-11.el8.x86_64.rpm
|
||||||
|
|
||||||
|
- name: Install package
|
||||||
|
ansible.builtin.dnf:
|
||||||
|
name: "{{ item }}"
|
||||||
|
with_items:
|
||||||
|
- https://download.copr.fedorainfracloud.org/results/neil/lxc3.0/epel-8-x86_64/03253339-lxc/lxc-4.0.10-2.el8.x86_64.rpm
|
||||||
|
- https://download.copr.fedorainfracloud.org/results/neil/lxc3.0/epel-8-x86_64/03253339-lxc/lxc-devel-4.0.10-2.el8.x86_64.rpm
|
||||||
|
- https://download.copr.fedorainfracloud.org/results/neil/lxc3.0/epel-8-x86_64/03253339-lxc/lxc-libs-4.0.10-2.el8.x86_64.rpm
|
||||||
|
- /tmp/python38-lxc-3.0.4-11.el8.x86_64.rpm
|
Loading…
x
Reference in New Issue
Block a user