Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
150 commits
Select commit Hold shift + click to select a range
926133c
More example images
oneswig Jul 7, 2023
15608e6
Add StackHPC project and images
Wasaac Jul 26, 2023
4c23c55
Wrap lines and add missing new line at end of file
priteau Aug 10, 2023
ebab9f7
Merge pull request #15 from stackhpc/noeol
markgoddard Aug 10, 2023
2f32964
Prevent load balancer creation errors
priteau Aug 16, 2023
8c5c7c4
Add RBAC support into openstack-networks.yml
MoteHue Aug 23, 2023
382918a
Merge pull request #17 from stackhpc/os-networks-rbac
MoteHue Aug 24, 2023
c0524db
Add azimuth project
Aug 30, 2023
29d3a4b
Merge pull request #4 from ACRC/azimuth-project
sd109 Aug 31, 2023
f39f640
Update Rocky containerfiles to fix releaseserver
MoteHue Aug 31, 2023
d7ec36b
Define stackhpc project
MoteHue Aug 31, 2023
44e703c
Initial stackhpc networks
MoteHue Aug 31, 2023
0453c74
Add HPC flavors
MoteHue Aug 31, 2023
c3d211d
Initial images + OFED images
MoteHue Aug 31, 2023
ab1b35a
vGPU resources
MoteHue Aug 31, 2023
394141b
External Ceph network
MoteHue Aug 31, 2023
9bc8d3f
Cloud services project
MoteHue Aug 31, 2023
39bd2e6
nvidia client token
MoteHue Aug 31, 2023
7f63c4d
Ignore cache and venv
MoteHue Aug 31, 2023
55832de
Merge branch 'acrc-main' into openstack-config-git-sync
MoteHue Aug 31, 2023
d1392e2
Uncomment in-use resources
MoteHue Aug 31, 2023
9281e9a
Merge pull request #5 from ACRC/openstack-config-git-sync
MoteHue Aug 31, 2023
961f102
Merge pull request #16 from stackhpc/octavia-quotas
markgoddard Sep 4, 2023
8ea98a4
add domains
bbezak Sep 5, 2023
8429a57
Merge pull request #18 from stackhpc/domains
bbezak Sep 5, 2023
f652f13
changes for ansible-collection-openstack
Nov 30, 2023
4a7350e
separate venv is unnecessary now as all roles updated to new sdk
Nov 30, 2023
5d09004
change to official collection
Dec 4, 2023
16aacaa
comments
scrungus Dec 4, 2023
bcab111
role install no longer needed
scrungus Dec 6, 2023
6c5d498
Make vpgu flavors public
Jan 30, 2024
75ab7ef
Bump to stackhpc.openstack version 0.1.0
Feb 27, 2024
51c5608
Remove outdated fixed_ips option from example
Feb 27, 2024
fbe04a0
Merge pull request #20 from stackhpc/convert-ans-coll
markgoddard Mar 4, 2024
7a50177
Add simplified Magnum template generation playbook
Mar 5, 2024
fb00a1f
Rename magnum_flavor_name -> magnum_default_flavor_name
Mar 5, 2024
494e39b
Address review feedback
Mar 6, 2024
828aafc
Add section partition
Mar 7, 2024
c19930c
Merge pull request #21 from stackhpc/feat/magnum-capi-templates
markgoddard Mar 7, 2024
f2afbe7
Add Horizon account for Seunghun Lee (StackHPC)
seunghun1ee Mar 18, 2024
7e7cf7d
Merge pull request #6 from ACRC/add-seunghun
seunghun1ee Mar 18, 2024
15c1b11
Merge remote-tracking branch 'stackhpc/main' into stackhpc-sync
seunghun1ee Mar 18, 2024
c7b1025
Merge pull request #7 from ACRC/stackhpc-sync
seunghun1ee Mar 19, 2024
28a541c
Remove fixed_ips from quota
seunghun1ee Mar 19, 2024
3c8bfeb
Merge pull request #8 from ACRC/remove-fixed-ips-quota
seunghun1ee Mar 19, 2024
e29167b
Ignore vscode folder
Mar 25, 2024
216e5cf
Disable keystone auth webhook by default
Mar 25, 2024
c67a42c
Make labels lowercase
Mar 25, 2024
2595e0e
feat!: bump `stackhpc.openstack` collection
jackhodgkiss Mar 26, 2024
3d1c5dd
Merge pull request #23 from stackhpc/bump-openstack-collection
markgoddard Mar 26, 2024
0642c52
Merge pull request #22 from stackhpc/fix/magnum-keystone-webhook
sd109 Mar 26, 2024
0fa6619
Add Cloudkitty role variables definition to openstack-config.
MaxBed4d Apr 5, 2024
05a6443
Cloudkitty.yml example file.
MaxBed4d Apr 8, 2024
375183b
Added ratings role config and example. Changed requirements.
MaxBed4d Apr 8, 2024
5c95e93
Configure some cloudkitty settings.
MaxBed4d Apr 9, 2024
da06a05
Add type to GitHub requirements.
MaxBed4d Apr 9, 2024
d4a1650
Amend group variable default.
MaxBed4d Apr 9, 2024
15c130c
Fix Ansible Galaxy instructions
MoteHue Apr 9, 2024
0dac19c
Change cloudkitty venv to point to openstack_venv.
MaxBed4d Apr 9, 2024
f874110
Merge pull request #24 from stackhpc/fix-readme
markgoddard Apr 10, 2024
f95b0f8
Working Cloudkitty config.
MaxBed4d Apr 10, 2024
97f6f05
Updated and tidied config for Cloudkitty configuration role.
MaxBed4d Apr 10, 2024
5f39695
Tidy up group_vars
MaxBed4d Apr 10, 2024
71c5913
Pointing to the now merged CloudKitty Ansible role.
MaxBed4d Apr 10, 2024
6cbf191
Merge pull request #25 from stackhpc/cloudkitty-role-config
markgoddard Apr 11, 2024
cea418a
Allow extra labels in generated cluster templates
Apr 12, 2024
7ab4335
Improve handling of empty extra labels variable
Apr 16, 2024
a545002
Ensure required Magnum images are public
Apr 16, 2024
b0ae102
Merge pull request #27 from stackhpc/feat/allow-extra-magnum-labels
markgoddard Apr 17, 2024
e12b0f3
Merge pull request #28 from stackhpc/fix/magnum-image-visibility
markgoddard Apr 17, 2024
7801226
Update readme python venv instructions
Alex-Welsh Apr 22, 2024
00fb091
Merge pull request #29 from stackhpc/readme
markgoddard Apr 22, 2024
3d085a4
Allow unlimited server groups for Octavia
priteau May 7, 2024
786bada
Merge pull request #30 from stackhpc/octavia-server-group
priteau May 8, 2024
7f0e070
removed mention of Yoga
g0rgamesh Jun 3, 2024
b6d80b8
Merge pull request #31 from stackhpc/readme_update
g0rgamesh Jun 3, 2024
1fd68c8
Rework example security group to avoid SSH and ICMP in default secgroup
markgoddard Jul 8, 2024
707f921
Merge pull request #32 from stackhpc/example-secgroups
markgoddard Jul 8, 2024
54668be
Add ansible.cfg
cityofships Aug 14, 2024
2b63171
Bump stackhpc.openstack collection to 0.2.2
markgoddard Aug 14, 2024
e730ee1
Merge pull request #33 from stackhpc/ansible_cfg
markgoddard Aug 16, 2024
8cf03a8
Merge pull request #34 from stackhpc/bump-collection
markgoddard Aug 20, 2024
602136d
Fix Azimuth artefact URLs
cityofships Sep 26, 2024
6a15739
Use 22.04 in magnum-capi-images.j2
MoteHue Oct 14, 2024
6e18848
Use the latest collection
cityofships Nov 6, 2024
37ac0df
Merge pull request #39 from stackhpc/bump_collection
bbezak Nov 6, 2024
07e05c1
Support configuring Cinder volume types
priteau Dec 10, 2024
2251c3c
Remove duplicate OpenStack word
priteau Dec 10, 2024
e17bed6
Merge pull request #40 from stackhpc/volume-types
priteau Dec 10, 2024
2074767
bump openstack.cloud version
GregWhiteyBialas Jan 22, 2025
b095d5a
Merge pull request #43 from stackhpc/opensctackcloud_version_bump
GregWhiteyBialas Jan 22, 2025
0a3a558
add default var definition for openstack_volumes_types
g0rgamesh Jan 29, 2025
156a803
Merge pull request #44 from stackhpc/volume_type_fix
g0rgamesh Jan 29, 2025
8576553
CI: Add ansible-lint
mnasiadka Jan 29, 2025
abe8e80
Fix all ansible-lint issues
mnasiadka Jan 29, 2025
699b14a
Merge pull request #45 from stackhpc/ci
g0rgamesh Jan 29, 2025
521f00b
make cloudkitty playbooks optional
g0rgamesh Jan 29, 2025
6233dd7
new line
g0rgamesh Jan 29, 2025
56a54b0
Merge pull request #46 from stackhpc/cloudkitty_opt-in
g0rgamesh Jan 29, 2025
4c36b5e
set GRUB vars in example file
g0rgamesh Feb 18, 2025
e55953a
Merge pull request #47 from stackhpc/grub_vars
g0rgamesh Feb 18, 2025
964f80a
Docs: Magnum templates are tied to Azimuth release
MoteHue Feb 19, 2025
d450155
Merge pull request #38 from stackhpc/jammy-magnum-templates
MoteHue Feb 27, 2025
381bd89
Update example images to new versions
MoteHue Feb 27, 2025
80516bc
Add newer version of ansible for later python
seunghun1ee Mar 18, 2025
c2508a6
Merge pull request #50 from stackhpc/master-test
mnasiadka Mar 18, 2025
ce31ab9
Merge pull request #41 from stackhpc/remove-duplicate-openstack
jackhodgkiss Mar 23, 2025
c064fc4
Merge pull request #49 from stackhpc/update-examples
jackhodgkiss Mar 23, 2025
5c50653
Merge pull request #48 from stackhpc/document-templates-release-link
MoteHue Mar 24, 2025
4501f90
Define new flavors for slurm phase 1
MoteHue Mar 27, 2025
6051df1
Merge pull request #9 from ACRC/slurm-new-flavors
MoteHue Apr 1, 2025
8481cde
Create slurm-staging
MoteHue Apr 1, 2025
32bdbab
Create slurm-production
MoteHue Apr 14, 2025
3c4a402
Merge pull request #11 from ACRC/slurm-prod-updates
MoteHue May 14, 2025
f8c32fc
Magnum: default to OVN load balanacer provider
MoteHue May 19, 2025
ba5a81e
Merge pull request #52 from stackhpc/magnum-ovn-lb-by-default
MoteHue May 21, 2025
044fb62
Increase stackhpc.openstack to 0.5.2
MoteHue May 23, 2025
72daec2
Merge pull request #53 from stackhpc/collection-0.5.0
MoteHue Jun 4, 2025
8273a5d
CI: Run only in stackhpc repository
priteau Jun 5, 2025
fc01794
Fix helm chart release version download
Alex-Welsh Jun 17, 2025
e4b66d0
Merge pull request #54 from stackhpc/ci-pull-request
jackhodgkiss Jun 17, 2025
72c105c
Merge pull request #55 from stackhpc/fix-versioning
jackhodgkiss Jun 17, 2025
3a1c99b
Update highmem flavor
MoteHue Jul 10, 2025
a3d094a
Merge pull request #12 from ACRC/update-highmem-flavor
MoteHue Jul 10, 2025
562ba0c
Merge remote-tracking branch 'stackhpc/main' into cinder-volume-types
MoteHue Jul 29, 2025
502d534
Define new volume types
MoteHue Jul 29, 2025
31a9cf9
Define rack-level Nova AZs
oneswig Jul 30, 2025
c76c5a9
Merge pull request #13 from ACRC/cinder-volume-types
MoteHue Jul 31, 2025
99f8031
AZ corrections
MoteHue Aug 5, 2025
648e66a
Update compute flavours for gen2 hardware
MoteHue Aug 5, 2025
4023e11
Merge pull request #15 from ACRC/flavours-v2
MoteHue Aug 11, 2025
cb7a9e0
Merge branch 'acrc-main' into add-azs
oneswig Aug 11, 2025
cc5418c
Merge pull request #14 from ACRC/add-azs
oneswig Aug 11, 2025
ac6d8dc
Add compute17, compute18 to the aggregate / AZ cofiguration
MoteHue Aug 14, 2025
5816251
Add resources for Slurm staging on physnet3
MoteHue Aug 14, 2025
2db3939
Increase size of slurm-production net
MoteHue Aug 14, 2025
8ee7df1
Merge pull request #16 from ACRC/physnet3
oneswig Aug 14, 2025
544a89b
Set 1500 MTU for slurm-staging-control network
MoteHue Aug 14, 2025
c53ac91
Merge pull request #17 from ACRC/increase-slurm-production
oneswig Aug 14, 2025
194bd28
Merge branch 'acrc-main' of https://github.com/ACRC/openstack-config …
MoteHue Aug 14, 2025
d67e45d
Add physnet3 network for slurm-production
MoteHue Aug 14, 2025
abc266a
Reconfigure external network for VLAN 2280
oneswig Sep 12, 2025
fcbc8a0
Add compute10 Aggregate/AZ configuration
oneswig Sep 12, 2025
aa2086e
Updates for latest iteration of Slurm Appliance
oneswig Sep 12, 2025
b71d1d8
Feedback from Matt
oneswig Sep 12, 2025
7b676b3
Merge branch 'physnet3' into compute10
oneswig Sep 12, 2025
58e8065
Merge pull request #19 from ACRC/vlan-2280
MoteHue Sep 15, 2025
3b9946e
Merge pull request #20 from ACRC/compute10
MoteHue Sep 15, 2025
9756b0a
Add compute14 and compute28 to rack AZs
oneswig Dec 17, 2025
954aae6
Merge pull request #21 from ACRC/az-compute28
MoteHue Dec 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions .github/workflows/pull-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
name: Pull request
"on":
pull_request:
jobs:
lint:
if: github.repository == 'stackhpc/openstack-config'
runs-on: ubuntu-22.04
permissions: {}
strategy:
fail-fast: false
matrix:
include:
# NOTE(upgrade): Keep these in sync with Kayobe's supported Ansible and Python versions (see release notes).
- ansible: "2.16"
python: "3.12"
name: Ansible ${{ matrix.ansible }} lint with Python ${{ matrix.python }}
steps:
- name: GitHub Checkout 🛎
uses: actions/checkout@v4

- name: Setup Python ${{ matrix.python-version }} 🐍
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python }}

- name: Install dependencies 📦
run: |
python -m pip install --upgrade pip
pip install ansible-core==${{ matrix.ansible }}.* ansible-lint

- name: Linting code 🧪
run: |
ansible-lint -v --force-color
12 changes: 12 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,20 @@ ansible/*.retry
ansible/roles/*\.*/
# Galaxy collections
ansible/collections/**/
# Image cache
ansible/openstack-config-image-cache
# Venvs
ansible/openstack-config-venv

# Editors
*~
.*.swp
.*sw?
.vscode/

# Ignore working dirs
ansible/openstack-config-image-cache
ansible/openstack-config-venv

# Ignore tmp output from template generation playbook
generated-magnum-snippets/
62 changes: 51 additions & 11 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,31 +3,26 @@ OpenStack Configuration
=============================================

This project contains Ansible playbooks and configuration of infrastructure on
an existing OpenStack cloud for the OpenStack system. (Supported up to Yoga
release.)
an existing OpenStack cloud for the OpenStack system.

Preparation
===========

Ensure that Ansible is installed, either via the system package manager or pip.
If required, use a virtualenv to avoid interference with the system python
packages. For example:
It is recommended that you use a python virtual environment to avoid
interference with the system python packages. For example:

.. code-block::

$ virtualenv venv
$ source venv/bin/activate
$ pip install -U pip
$ python3 -m venv openstack-venv
$ source openstack-venv/bin/activate
$ python -m pip install --upgrade pip
$ pip install -r requirements.txt

Install Ansible role and collection dependencies from Ansible Galaxy:

.. code-block::

$ ansible-galaxy role install \
-p ansible/roles \
-r requirements.yml

$ ansible-galaxy collection install \
-p ansible/collections \
-r requirements.yml
Expand Down Expand Up @@ -81,3 +76,48 @@ configuration parameter:
.. code-block::

$ tools/openstack-config -- --vault-password-file config-secret.vault


Magnum Cluster Templates
========================

To generate a new set of Magnum cluster templates and corresponding Glance image
definitions which utilise the latest stable upstream release tag, set the following
variables in `etc/openstack-config.yml`

.. code-block:: yaml

# Chosen flavor on target cloud
magnum_default_master_flavor_name:
# Chosen flavor on target cloud
magnum_default_worker_flavor_name:
# External network to use for load balancers etc.
magnum_external_net_name:
# Optional list of extra labels to add to all generated cluster templates
magnum_template_extra_labels:

The load balancer provider defaults to OVN. This can be changed to Amphora, but you
should only do this if OVN load balancers are unavailable.

.. code-block:: yaml

magnum_loadbalancer_provider: amphora

Then run the provided playbook with

.. code-block:: bash

$ tools/openstack-config -p ansible/generate-magnum-capi-templates.yml

This will create a ``generated-magnum-snippets`` directory in the repo root with
a timestamped sub-directory containing an ``images.yml`` file and a ``templates.yml``
file. The contents of these two files can then be added to any existing images and
cluster templates in ``etc/openstack-config.yml``. When deploying the updated config,
be sure to run the ``openstack-images.yml`` playbook *before* running the
``openstack-container-clusters.yml`` playbook, otherwise the Magnum API will return
an error referencing an invalid cluster type with image ``None``. This is handled
automatically if running the full ``openstack.yml`` playbook.

Note that these templates are a tested set against the specific CAPI management
cluster release. As such, you should make sure to update your CAPI management
cluster to the latest release before updating to the latest templates.
4 changes: 4 additions & 0 deletions ansible.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[defaults]
bin_ansible_callbacks = True
callbacks_enabled = ansible.posix.profile_tasks
stdout_callback = yaml
65 changes: 65 additions & 0 deletions ansible/generate-magnum-capi-templates.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
---
- name: Generate cluster templates
hosts: localhost
vars:
root_dir: ../
tasks:
- name: Check that required variables are defined
ansible.builtin.assert:
that:
- magnum_default_master_flavor_name is defined
- magnum_default_worker_flavor_name is defined
- magnum_external_net_name is defined
- magnum_loadbalancer_provider is defined

- name: Fetch capi-helm-charts release information
ansible.builtin.uri:
url: https://api.github.com/repos/azimuth-cloud/capi-helm-charts/releases/latest
register: capi_helm_chart_release_data

- name: Fetch dependencies.json for capi-helm-charts release
ansible.builtin.uri:
url: https://raw.githubusercontent.com/azimuth-cloud/capi-helm-charts/{{ capi_helm_chart_release_data.json.tag_name }}/dependencies.json
return_content: true
register: dependencies_response

- name: Ensure wget packages is installed
become: true
ansible.builtin.package:
name: wget
state: present

- name: Fetch manifest.json for capi-helm-charts images # noqa command-instead-of-module
vars:
dependencies: "{{ dependencies_response.content }}"
# ansible.builtin.uri:
# url: https://raw.githubusercontent.com/azimuth-cloud/azimuth-images/{{ dependencies_response.json['azimuth-images'] }}/manifest.json
# Above URL returns 404 even though similar URL for capi-helm-charts repo works fine
# Not sure why but fall back to wget + JSON parsing for now.
ansible.builtin.command: >-
wget -O - https://github.com/azimuth-cloud/azimuth-images/releases/download/{{ dependencies['azimuth-images'] }}/manifest.json
register: manifest_response
changed_when: false

- name: Parse JSON response
ansible.builtin.set_fact:
new_template_data: "{{ manifest_response.stdout | from_json | dict2items | selectattr('key', 'match', 'kubernetes*') | list }}"

- name: Ensure output dir exists
ansible.builtin.file:
path: "{{ [root_dir, 'generated-magnum-snippets', now(utc=true, fmt='%Y-%m-%d-T%H-%M-%S')] | path_join }}"
state: directory
mode: "0755"
register: output_dir

- name: Write new image config to file
ansible.builtin.template:
src: "magnum-capi-images.j2"
dest: "{{ output_dir.path }}/images.yml"
mode: "0644"

- name: Write new cluster template config to file
ansible.builtin.template:
src: "magnum-capi-templates.j2"
dest: "{{ output_dir.path }}/templates.yml"
mode: "0644"
31 changes: 31 additions & 0 deletions ansible/group_vars/all/openstack
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
###############################################################################
# Configuration of OpenStack user environment for OpenStack.

# List of OpenStack domains. Format is as required by the stackhpc.os-projects
# role.
openstack_domains: []

# List of OpenStack projects. Format is as required by the stackhpc.os-projects
# role.
openstack_projects: []
Expand All @@ -21,6 +25,10 @@ openstack_routers: []
# stackhpc.os-networks role.
openstack_security_groups: []

# List of RBAC definitions in the openstack projct. Format is as required by the
# stackhpc.os-networks role.
openstack_networks_rbac: []

###############################################################################
# Configuration of nova flavors for OpenStack.

Expand Down Expand Up @@ -54,3 +62,26 @@ openstack_host_aggregates: []
# List of clusters templates in the openstack project. Format is as required by the
# stackhpc.os-container-clusters role.
openstack_container_clusters_templates: []

###############################################################################
# Configuration variables for a CloudKitty ratings service deployment.

# A list where each item is a dictionary mapping the associated fields,
# with the 'mappings' field also being a list of dictionaries.
# Example of the mappings and their fields can be found below,
# however for more information please refer to the README.md file.
#
openstack_ratings_hashmap_field_mappings: []

# Much like the field mappings above, the service mappings are a list of
# dictionaries, however these are not associated with a field.
#
openstack_ratings_hashmap_service_mappings: []

###############################################################################
# Configuration of volumes for OpenStack.
openstack_volumes_types: []

###############################################################################
# Configuration of Cloudkitty for OpenStack.
openstack_cloudkitty_enable: false
2 changes: 1 addition & 1 deletion ansible/openstack-container-clusters.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
tags:
- container-clusters-templates
roles:
- role: stackhpc.os-container-clusters
- role: stackhpc.openstack.os_container_clusters
os_container_clusters_venv: "{{ openstack_venv }}"
os_container_clusters_auth_type: "{{ openstack_auth_type }}"
os_container_clusters_auth: "{{ openstack_auth }}"
Expand Down
4 changes: 2 additions & 2 deletions ansible/openstack-flavors.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
- name: Ensure OpenStack OpenStack nova flavors exist
- name: Ensure OpenStack nova flavors exist
hosts: localhost
tags:
- flavors
roles:
- role: stackhpc.os-flavors
- role: stackhpc.openstack.os_flavors
os_flavors_venv: "{{ openstack_venv }}"
os_flavors_auth_type: "{{ openstack_auth_type }}"
os_flavors_auth: "{{ openstack_auth }}"
Expand Down
4 changes: 2 additions & 2 deletions ansible/openstack-host-aggregates.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
- name: Ensure OpenStack OpenStack nova host aggregates exist
- name: Ensure OpenStack nova host aggregates exist
hosts: localhost
tags:
- host_aggregates
roles:
- role: stackhpc.os_host_aggregates
- role: stackhpc.openstack.os_host_aggregates
os_host_aggregates_venv: "{{ openstack_venv }}"
os_host_aggregates_auth_type: "{{ openstack_auth_type }}"
os_host_aggregates_auth: "{{ openstack_auth }}"
Expand Down
2 changes: 1 addition & 1 deletion ansible/openstack-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
tags:
- images
roles:
- role: stackhpc.os-images
- role: stackhpc.openstack.os_images
os_images_venv: "{{ openstack_venv }}"
os_images_cache: "{{ ansible_env.PWD }}/openstack-config-image-cache"
os_images_auth_type: "{{ openstack_auth_type }}"
Expand Down
5 changes: 3 additions & 2 deletions ansible/openstack-networks.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
---
- name: Ensure OpenStack OpenStack networks exist
- name: Ensure OpenStack networks exist
hosts: localhost
tags:
- networks
roles:
- role: stackhpc.os-networks
- role: stackhpc.openstack.os_networks
os_networks_venv: "{{ openstack_venv }}"
os_networks_auth_type: "{{ openstack_auth_type }}"
os_networks_auth: "{{ openstack_auth }}"
os_networks_cacert: "{{ openstack_cacert }}"
os_networks: "{{ openstack_networks }}"
os_networks_routers: "{{ openstack_routers }}"
os_networks_security_groups: "{{ openstack_security_groups }}"
os_networks_rbac: "{{ openstack_networks_rbac }}"
5 changes: 3 additions & 2 deletions ansible/openstack-project.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
---
- name: Ensure OpenStack OpenStack projects exist
- name: Ensure OpenStack projects exist
hosts: localhost
tags:
- project
roles:
- role: stackhpc.os-projects
- role: stackhpc.openstack.os_projects
os_projects_venv: "{{ openstack_venv }}"
os_projects_auth_type: "{{ openstack_auth_type }}"
os_projects_admin_auth: "{{ openstack_auth }}"
os_projects_cacert: "{{ openstack_cacert }}"
os_projects: "{{ openstack_projects }}"
os_projects_domains: "{{ openstack_domains }}"
10 changes: 10 additions & 0 deletions ansible/openstack-ratings.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
- name: Generate OpenStack software ratings
hosts: localhost
tags:
- ratings
roles:
- role: stackhpc.openstack.os_ratings
os_ratings_hashmap_field_mappings: "{{ openstack_ratings_hashmap_field_mappings }}"
os_ratings_hashmap_service_mappings: "{{ openstack_ratings_hashmap_service_mappings }}"
os_ratings_venv: "{{ openstack_venv }}"
12 changes: 12 additions & 0 deletions ansible/openstack-volume-types.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
- name: Ensure OpenStack volume types exist
hosts: localhost
tags:
- volume-types
roles:
- role: stackhpc.openstack.os_volumes
os_volumes_venv: "{{ openstack_venv }}"
os_volumes_auth_type: "{{ openstack_auth_type }}"
os_volumes_auth: "{{ openstack_auth }}"
os_volumes_cacert: "{{ openstack_cacert }}"
os_volumes_types: "{{ openstack_volumes_types }}"
16 changes: 10 additions & 6 deletions ansible/openstack.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
---
# Top level playbook that includes all others.
- import_playbook: openstack-project.yml
- import_playbook: openstack-networks.yml
- import_playbook: openstack-flavors.yml
- import_playbook: openstack-images.yml
- import_playbook: openstack-host-aggregates.yml
- import_playbook: openstack-container-clusters.yml

- import_playbook: openstack-project.yml # noqa name[play]
- import_playbook: openstack-networks.yml # noqa name[play]
- import_playbook: openstack-flavors.yml # noqa name[play]
- import_playbook: openstack-images.yml # noqa name[play]
- import_playbook: openstack-host-aggregates.yml # noqa name[play]
- import_playbook: openstack-volume-types.yml # noqa name[play]
- import_playbook: openstack-container-clusters.yml # noqa name[play]
- import_playbook: openstack-ratings.yml # noqa name[play]
when: openstack_cloudkitty_enable | bool
Empty file removed ansible/roles/.keep
Empty file.
Loading