From dc35524c93376a8c7320ffa62954a1f171d48809 Mon Sep 17 00:00:00 2001 From: Maximilian Kolb Date: Thu, 21 May 2026 14:06:45 +0200 Subject: [PATCH 1/5] Rename module to delete CV versions via WebUI This patch is a prerequisite to adding a module for Hammer CLI. $ rg -i "Deleting_Multiple_Content_View_Versions_" Refs https://community.theforeman.org/t/quick-question-on-automating-the-removal-of-old-content-versions/46402?u=maximilian --- guides/common/assembly_managing-content-views.adoc | 2 +- ...ing-multiple-content-view-versions-by-using-web-ui.adoc} | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) rename guides/common/modules/{proc_deleting-multiple-content-view-versions.adoc => proc_deleting-multiple-content-view-versions-by-using-web-ui.adoc} (75%) diff --git a/guides/common/assembly_managing-content-views.adoc b/guides/common/assembly_managing-content-views.adoc index b073400d08f..fb0413786a4 100644 --- a/guides/common/assembly_managing-content-views.adoc +++ b/guides/common/assembly_managing-content-views.adoc @@ -66,7 +66,7 @@ include::modules/proc_creating-a-content-view-filter-by-using-web-ui.adoc[levelo include::modules/proc_creating-a-content-view-filter-by-using-cli.adoc[leveloffset=+1] -include::modules/proc_deleting-multiple-content-view-versions.adoc[leveloffset=+1] +include::modules/proc_deleting-multiple-content-view-versions-by-using-web-ui.adoc[leveloffset=+1] include::modules/con_clearing-the-search-filter.adoc[leveloffset=+1] diff --git a/guides/common/modules/proc_deleting-multiple-content-view-versions.adoc b/guides/common/modules/proc_deleting-multiple-content-view-versions-by-using-web-ui.adoc similarity index 75% rename from guides/common/modules/proc_deleting-multiple-content-view-versions.adoc rename to guides/common/modules/proc_deleting-multiple-content-view-versions-by-using-web-ui.adoc index 65a48279065..983d52ff85c 100644 --- a/guides/common/modules/proc_deleting-multiple-content-view-versions.adoc +++ b/guides/common/modules/proc_deleting-multiple-content-view-versions-by-using-web-ui.adoc @@ -1,10 +1,10 @@ :_mod-docs-content-type: PROCEDURE -[id="Deleting_Multiple_Content_View_Versions_{context}"] -= Deleting multiple content view versions +[id="deleting-multiple-content-view-versions-by-using-web-ui"] += Deleting multiple content view versions by using {ProjectWebUI} [role="_abstract"] -You can delete multiple content view versions simultaneously. +You can delete multiple content view versions simultaneously by using {ProjectWebUI}. .Procedure . In the {ProjectWebUI}, navigate to *Content* > *Lifecycle* > *Content Views*. From 5cef9e4511b333bf57974bf4215355741a9380e8 Mon Sep 17 00:00:00 2001 From: Maximilian Kolb Date: Thu, 21 May 2026 14:18:00 +0200 Subject: [PATCH 2/5] Add module to delete CV versions via CLI Tested on Foreman 3.18/Katello 4.20 with Hammer CLI katello 1.20. Refs https://community.theforeman.org/t/quick-question-on-automating-the-removal-of-old-content-versions/46402?u=maximilian --- .../assembly_managing-content-views.adoc | 2 ++ ...le-content-view-versions-by-using-cli.adoc | 35 +++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 guides/common/modules/proc_deleting-multiple-content-view-versions-by-using-cli.adoc diff --git a/guides/common/assembly_managing-content-views.adoc b/guides/common/assembly_managing-content-views.adoc index fb0413786a4..063fae863d2 100644 --- a/guides/common/assembly_managing-content-views.adoc +++ b/guides/common/assembly_managing-content-views.adoc @@ -68,6 +68,8 @@ include::modules/proc_creating-a-content-view-filter-by-using-cli.adoc[leveloffs include::modules/proc_deleting-multiple-content-view-versions-by-using-web-ui.adoc[leveloffset=+1] +include::modules/proc_deleting-multiple-content-view-versions-by-using-cli.adoc[leveloffset=+1] + include::modules/con_clearing-the-search-filter.adoc[leveloffset=+1] include::modules/con_standardizing-content-view-empty-states.adoc[leveloffset=+1] diff --git a/guides/common/modules/proc_deleting-multiple-content-view-versions-by-using-cli.adoc b/guides/common/modules/proc_deleting-multiple-content-view-versions-by-using-cli.adoc new file mode 100644 index 00000000000..6f7fcdcf335 --- /dev/null +++ b/guides/common/modules/proc_deleting-multiple-content-view-versions-by-using-cli.adoc @@ -0,0 +1,35 @@ +:_mod-docs-content-type: PROCEDURE + +[id="deleting-multiple-content-view-versions-by-using-cli"] += Deleting multiple content view versions by using Hammer CLI + +[role="_abstract"] +You can delete multiple content view versions simultaneously by using Hammer CLI. + +.Procedure +. List versions of your content view: ++ +[options="nowrap", subs="verbatim,quotes,attributes"] +---- +$ hammer content-view info \ +--name "_My_Content_View_Name_" \ +--organization-id _My_Organization_ID_ +---- +. Delete content view versions: ++ +[options="nowrap", subs="verbatim,quotes,attributes"] +---- +$ hammer content-view remove \ +--content-view-version-ids _My_Content_View_Version_ID_1_,_My_Content_View_Version_ID_2_ \ +--id _My_Content_View_ID_ +---- + +.Verification +* Verify that {Project} deleted the content view versions: ++ +[options="nowrap", subs="verbatim,quotes,attributes"] +---- +$ hammer content-view info \ +--name "_My_Content_View_Name_" \ +--organization-id _My_Organization_ID_ +---- From fef8d0fead8a92c4dbfb9ba45cae0aa9c7b4c474 Mon Sep 17 00:00:00 2001 From: Maximilian Kolb Date: Thu, 21 May 2026 14:22:22 +0200 Subject: [PATCH 3/5] Add module to delete CV versions via Ansible Refs https://community.theforeman.org/t/quick-question-on-automating-the-removal-of-old-content-versions/46402?u=maximilian Refs https://theforeman.github.io/foreman-ansible-modules/latest/plugins/content_view_version_module.html#ansible-collections-theforeman-foreman-content-view-version-module --- guides/common/assembly_managing-content-views.adoc | 2 ++ ...tiple-content-view-versions-by-using-ansible.adoc | 12 ++++++++++++ 2 files changed, 14 insertions(+) create mode 100644 guides/common/modules/proc_deleting-multiple-content-view-versions-by-using-ansible.adoc diff --git a/guides/common/assembly_managing-content-views.adoc b/guides/common/assembly_managing-content-views.adoc index 063fae863d2..c600fa372f5 100644 --- a/guides/common/assembly_managing-content-views.adoc +++ b/guides/common/assembly_managing-content-views.adoc @@ -70,6 +70,8 @@ include::modules/proc_deleting-multiple-content-view-versions-by-using-web-ui.ad include::modules/proc_deleting-multiple-content-view-versions-by-using-cli.adoc[leveloffset=+1] +include::modules/proc_deleting-multiple-content-view-versions-by-using-ansible.adoc[leveloffset=+1] + include::modules/con_clearing-the-search-filter.adoc[leveloffset=+1] include::modules/con_standardizing-content-view-empty-states.adoc[leveloffset=+1] diff --git a/guides/common/modules/proc_deleting-multiple-content-view-versions-by-using-ansible.adoc b/guides/common/modules/proc_deleting-multiple-content-view-versions-by-using-ansible.adoc new file mode 100644 index 00000000000..be904540251 --- /dev/null +++ b/guides/common/modules/proc_deleting-multiple-content-view-versions-by-using-ansible.adoc @@ -0,0 +1,12 @@ +:_mod-docs-content-type: PROCEDURE + +[id="deleting-multiple-content-view-versions-by-using-ansible"] += Deleting multiple content view versions by using Ansible + +[role="_abstract"] +You can delete multiple content view versions simultaneously by using {Project} Ansible collection. + +.Procedure +* Use the `{ansible-namespace}.content_view_version` module. ++ +For more information, see the Ansible module documentation with `ansible-doc {ansible-namespace}.content_view_version`. From a4df1c81509b0df792d478bd18e5b23582aba16f Mon Sep 17 00:00:00 2001 From: Maximilian Kolb Date: Thu, 21 May 2026 14:42:38 +0200 Subject: [PATCH 4/5] Add module to purge content view versions Tested on Foreman 3.18/Katello 4.20 with Hammer CLI katello 1.20. Refs https://community.theforeman.org/t/quick-question-on-automating-the-removal-of-old-content-versions/46402?u=maximilian --- .../assembly_managing-content-views.adoc | 2 + ...ng-content-view-versions-by-using-cli.adoc | 43 +++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 guides/common/modules/proc_purging-content-view-versions-by-using-cli.adoc diff --git a/guides/common/assembly_managing-content-views.adoc b/guides/common/assembly_managing-content-views.adoc index c600fa372f5..52d57a8a947 100644 --- a/guides/common/assembly_managing-content-views.adoc +++ b/guides/common/assembly_managing-content-views.adoc @@ -79,3 +79,5 @@ include::modules/con_standardizing-content-view-empty-states.adoc[leveloffset=+1 include::modules/proc_comparing-content-view-versions.adoc[leveloffset=+1] include::modules/proc_distributing-archived-content-view-versions.adoc[leveloffset=+1] + +include::modules/proc_purging-content-view-versions-by-using-cli.adoc[leveloffset=+1] diff --git a/guides/common/modules/proc_purging-content-view-versions-by-using-cli.adoc b/guides/common/modules/proc_purging-content-view-versions-by-using-cli.adoc new file mode 100644 index 00000000000..64d18d8f2cb --- /dev/null +++ b/guides/common/modules/proc_purging-content-view-versions-by-using-cli.adoc @@ -0,0 +1,43 @@ +:_mod-docs-content-type: PROCEDURE + +[id="purging-content-view-versions-by-using-cli"] += Purging content view versions by using Hammer CLI + +[role="_abstract"] +You can purge excess numbers of content view versions on {Project} to limit disk space usage. +By default, {Project} keeps every version of a content view. +Removing content view versions is a tradeoff between disk space and possibly bandwidth during content synchronizations to {SmartProxyServers} and the possibility to roll back to older content snapshots. + +{Project} only considers deleting content view versions that are not part of any lifecycle environment. + +.Procedure +. Optional: View your content view versions: ++ +[options="nowrap", subs="verbatim,quotes,attributes"] +---- +$ hammer content-view info \ +--name "_My_Content_View_Name_" \ +--organization-id _My_Organization_ID_ +---- +. Clean up content view versions: ++ +[options="nowrap", subs="verbatim,quotes,attributes"] +---- +$ hammer content-view purge \ +--name "_My_Content_View_Name_" \ +--organization-id _My_Organization_ID_ \ +--versions-to-keep _My_Number_Of_Versions_To_Keep_ +---- + +.Verification +* Verify that {Project} deleted the content view versions: ++ +[options="nowrap", subs="verbatim,quotes,attributes"] +---- +$ hammer content-view info \ +--name "_My_Content_View_Name_" \ +--organization-id _My_Organization_ID_ +---- + +.Additional resources +* {AdministeringDocURL}Recovering_from_a_Full_Disk_admin[Recovering from a full disk in _{AdministeringDocTitle}_] From 7f4dbd35059cebee717c2de1687ca72cd88d9348 Mon Sep 17 00:00:00 2001 From: Maximilian Kolb Date: Mon, 1 Jun 2026 15:24:05 +0200 Subject: [PATCH 5/5] Move deleting CV versions to end of assembly Suggested by Lena during review. --- guides/common/assembly_managing-content-views.adoc | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/guides/common/assembly_managing-content-views.adoc b/guides/common/assembly_managing-content-views.adoc index 52d57a8a947..4db02fe46f0 100644 --- a/guides/common/assembly_managing-content-views.adoc +++ b/guides/common/assembly_managing-content-views.adoc @@ -66,12 +66,6 @@ include::modules/proc_creating-a-content-view-filter-by-using-web-ui.adoc[levelo include::modules/proc_creating-a-content-view-filter-by-using-cli.adoc[leveloffset=+1] -include::modules/proc_deleting-multiple-content-view-versions-by-using-web-ui.adoc[leveloffset=+1] - -include::modules/proc_deleting-multiple-content-view-versions-by-using-cli.adoc[leveloffset=+1] - -include::modules/proc_deleting-multiple-content-view-versions-by-using-ansible.adoc[leveloffset=+1] - include::modules/con_clearing-the-search-filter.adoc[leveloffset=+1] include::modules/con_standardizing-content-view-empty-states.adoc[leveloffset=+1] @@ -80,4 +74,10 @@ include::modules/proc_comparing-content-view-versions.adoc[leveloffset=+1] include::modules/proc_distributing-archived-content-view-versions.adoc[leveloffset=+1] +include::modules/proc_deleting-multiple-content-view-versions-by-using-web-ui.adoc[leveloffset=+1] + +include::modules/proc_deleting-multiple-content-view-versions-by-using-cli.adoc[leveloffset=+1] + +include::modules/proc_deleting-multiple-content-view-versions-by-using-ansible.adoc[leveloffset=+1] + include::modules/proc_purging-content-view-versions-by-using-cli.adoc[leveloffset=+1]