public inbox for kdevops@lists.linux.dev
 help / color / mirror / Atom feed
* [PATCH v2 00/12] Convert bringup_guestfs to a single Ansible role
@ 2025-05-30 17:52 Chuck Lever
  2025-05-30 17:52 ` [PATCH v2 01/12] guestfs: Replace scripts/destroy_guestfs.sh with an Ansible playbook Chuck Lever
                   ` (12 more replies)
  0 siblings, 13 replies; 16+ messages in thread
From: Chuck Lever @ 2025-05-30 17:52 UTC (permalink / raw)
  To: kdevops; +Cc: Chuck Lever

From: Chuck Lever <chuck.lever@oracle.com>

This series demonstrates some ideas about how libvirt/guestfs bring-
up might be expressed using only Ansible (ie. with a minimal use of
shell scripting). Benefits include:

- Starting guests is now done in parallel
- "make bringup" is more idempotent
- Lets us create utilities that both guestfs and Terraform can use

The new parts that handle custom upstream images has not yet been
tested.

Changes since RFC:
- All of bringup_guestfs.sh has now been converted to Ansible
- Remove the old code as the last step in the series
- Reorganize the series to reduce the size of each patch
- Modernize steps that Ansible can now do with builtin modules

Chuck Lever (12):
  guestfs: Replace scripts/destroy_guestfs.sh with an Ansible playbook
  Move the guestfs install-deps to the guestfs playbook
  guestfs: Do not use the config-check tag
  guestfs: Add a "bringup" tag to the guestfs role
  guestfs: Copy "network" tag steps to guestfs role
  guestfs: Move the QEMU_GROUP check
  Add a base-image role
  guestfs: Convert scripts/bringup_guestfs.sh to Ansible
  guestfs: Move console-related steps to guestfs role
  bringup_guestfs: Remove the role
  scripts: Remove the bringup_guestfs.sh script
  scripts: Remove the destroy_guestfs.sh script

 .gitignore                                    |   1 +
 playbooks/base_image.yml                      |   7 +
 playbooks/bringup_guestfs.yml                 |   4 -
 playbooks/guestfs.yml                         |   7 +
 playbooks/roles/base_image/README.md          |  45 ++
 playbooks/roles/base_image/defaults/main.yml  |   7 +
 .../roles/base_image/tasks/base-image.yml     |  80 ++++
 .../roles/base_image/tasks/custom-image.yml   | 159 +++++++
 playbooks/roles/base_image/tasks/main.yml     |  19 +
 .../base_image/templates/custom-index.j2      |   2 +
 .../base_image/templates/custom-source.j2     |   3 +
 .../base_image/templates/virt-builder.j2      |  77 ++++
 .../roles/bringup_guestfs/defaults/main.yml   |  12 -
 .../tasks/install-deps/main.yml               |  17 -
 .../roles/bringup_guestfs/tasks/main.yml      | 243 -----------
 playbooks/roles/guestfs/defaults/main.yml     |   5 +
 .../tasks/bringup/console-permissions.yml     |  31 ++
 .../guestfs/tasks/bringup/extra-disks.yml     |  16 +
 .../roles/guestfs/tasks/bringup/largeio.yml   |  11 +
 .../roles/guestfs/tasks/bringup/main.yml      | 132 ++++++
 .../roles/guestfs/tasks/bringup/network.yml   |  83 ++++
 .../tasks/bringup/storage-pool-path.yml       |  92 ++++
 playbooks/roles/guestfs/tasks/destroy.yml     |  32 ++
 .../tasks/install-deps/debian/main.yml        |   3 +-
 .../roles/guestfs/tasks/install-deps/main.yml |  21 +
 .../tasks/install-deps/redhat/main.yml        |   5 +-
 .../tasks/install-deps/suse/main.yml          |   3 +-
 playbooks/roles/guestfs/tasks/main.yml        |  67 +++
 scripts/bringup_guestfs.sh                    | 399 ------------------
 scripts/destroy_guestfs.sh                    |  36 --
 scripts/guestfs.Makefile                      |  23 +-
 31 files changed, 911 insertions(+), 731 deletions(-)
 create mode 100644 playbooks/base_image.yml
 delete mode 100644 playbooks/bringup_guestfs.yml
 create mode 100644 playbooks/guestfs.yml
 create mode 100644 playbooks/roles/base_image/README.md
 create mode 100644 playbooks/roles/base_image/defaults/main.yml
 create mode 100644 playbooks/roles/base_image/tasks/base-image.yml
 create mode 100644 playbooks/roles/base_image/tasks/custom-image.yml
 create mode 100644 playbooks/roles/base_image/tasks/main.yml
 create mode 100644 playbooks/roles/base_image/templates/custom-index.j2
 create mode 100644 playbooks/roles/base_image/templates/custom-source.j2
 create mode 100644 playbooks/roles/base_image/templates/virt-builder.j2
 delete mode 100644 playbooks/roles/bringup_guestfs/defaults/main.yml
 delete mode 100644 playbooks/roles/bringup_guestfs/tasks/install-deps/main.yml
 delete mode 100644 playbooks/roles/bringup_guestfs/tasks/main.yml
 create mode 100644 playbooks/roles/guestfs/defaults/main.yml
 create mode 100644 playbooks/roles/guestfs/tasks/bringup/console-permissions.yml
 create mode 100644 playbooks/roles/guestfs/tasks/bringup/extra-disks.yml
 create mode 100644 playbooks/roles/guestfs/tasks/bringup/largeio.yml
 create mode 100644 playbooks/roles/guestfs/tasks/bringup/main.yml
 create mode 100644 playbooks/roles/guestfs/tasks/bringup/network.yml
 create mode 100644 playbooks/roles/guestfs/tasks/bringup/storage-pool-path.yml
 create mode 100644 playbooks/roles/guestfs/tasks/destroy.yml
 rename playbooks/roles/{bringup_guestfs => guestfs}/tasks/install-deps/debian/main.yml (78%)
 create mode 100644 playbooks/roles/guestfs/tasks/install-deps/main.yml
 rename playbooks/roles/{bringup_guestfs => guestfs}/tasks/install-deps/redhat/main.yml (62%)
 rename playbooks/roles/{bringup_guestfs => guestfs}/tasks/install-deps/suse/main.yml (71%)
 create mode 100644 playbooks/roles/guestfs/tasks/main.yml
 delete mode 100755 scripts/bringup_guestfs.sh
 delete mode 100755 scripts/destroy_guestfs.sh

-- 
2.49.0


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2025-06-04 17:02 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-30 17:52 [PATCH v2 00/12] Convert bringup_guestfs to a single Ansible role Chuck Lever
2025-05-30 17:52 ` [PATCH v2 01/12] guestfs: Replace scripts/destroy_guestfs.sh with an Ansible playbook Chuck Lever
2025-05-30 17:52 ` [PATCH v2 02/12] Move the guestfs install-deps to the guestfs playbook Chuck Lever
2025-05-30 17:52 ` [PATCH v2 03/12] guestfs: Do not use the config-check tag Chuck Lever
2025-05-30 17:52 ` [PATCH v2 04/12] guestfs: Add a "bringup" tag to the guestfs role Chuck Lever
2025-05-30 17:52 ` [PATCH v2 05/12] guestfs: Copy "network" tag steps to " Chuck Lever
2025-05-30 17:52 ` [PATCH v2 06/12] guestfs: Move the QEMU_GROUP check Chuck Lever
2025-05-30 17:52 ` [PATCH v2 07/12] Add a base-image role Chuck Lever
2025-05-30 17:52 ` [PATCH v2 08/12] guestfs: Convert scripts/bringup_guestfs.sh to Ansible Chuck Lever
2025-05-30 17:52 ` [PATCH v2 09/12] guestfs: Move console-related steps to guestfs role Chuck Lever
2025-05-30 17:52 ` [PATCH v2 10/12] bringup_guestfs: Remove the role Chuck Lever
2025-05-30 17:52 ` [PATCH v2 11/12] scripts: Remove the bringup_guestfs.sh script Chuck Lever
2025-05-30 17:52 ` [PATCH v2 12/12] scripts: Remove the destroy_guestfs.sh script Chuck Lever
2025-06-03 19:29 ` [PATCH v2 00/12] Convert bringup_guestfs to a single Ansible role Luis Chamberlain
2025-06-04 14:29   ` Chuck Lever
2025-06-04 17:02     ` Luis Chamberlain

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox