Skip to content

Switch Satellite builds to containerized - #4995

Merged
aneta-petrova merged 8 commits into
theforeman:masterfrom
aneta-petrova:satellite-switch-to-foremanctl
Jul 2, 2026
Merged

Switch Satellite builds to containerized#4995
aneta-petrova merged 8 commits into
theforeman:masterfrom
aneta-petrova:satellite-switch-to-foremanctl

Conversation

@aneta-petrova

Copy link
Copy Markdown
Member

What changes are you introducing?

  • Switching Satellite preview build to show the containerized version of docs
  • Dropping the containerized-satellite build target

Why are you introducing these changes? (Explanation, links to references, issues, etc.)

We shouldn't need two separate Satellite builds anymore

Anything else to add? (Considerations, potential downsides, alternative solutions you have explored, etc.)

Assisted-by: Claude

Contributor checklists

  • I am okay with my commits getting squashed when you merge this PR.
  • I am familiar with the contributing guidelines.

Please cherry-pick my commits into:

  • Foreman 3.19/Katello 4.21
  • Foreman 3.18/Katello 4.20 (Satellite 6.19)
  • Foreman 3.17/Katello 4.19
  • Foreman 3.16/Katello 4.18 (Satellite 6.18; orcharhino 7.6, 7.7, and 7.8)
  • Foreman 3.15/Katello 4.17
  • Foreman 3.14/Katello 4.16 (Satellite 6.17; orcharhino 7.4; orcharhino 7.5)
  • We do not accept PRs for Foreman older than 3.14.

@github-actions github-actions Bot added Needs tech review Requires a review from the technical perspective Needs style review Requires a review from docs style/grammar perspective labels Jun 30, 2026
@github-actions

github-actions Bot commented Jun 30, 2026

Copy link
Copy Markdown

The PR preview for 839b571 is available at theforeman-foreman-documentation-preview-pr-4995.surge.sh

The following output files are affected by this PR:

show diff

show diff as HTML

@maximiliankolb

Copy link
Copy Markdown
Contributor

This is a big step. 🎉

@Lennonka Lennonka left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changeset looks sane to me.

@aneta-petrova

Copy link
Copy Markdown
Member Author

Similar to #4905, I extended the find_unused_modules script with exceptions. These are needed because quite a few modules really are unused now -- they are satellite-only but not yet containerized, so they are not included anywhere (yet).

@ekohl ekohl left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please consider all the inline comments as thoughts when finally pulling the trigger.

I'm not strictly opposed to this, but there is a risk to having unintended consequences when doing cherry picks. Have you considered this risk?

Comment thread guides/common/attributes-containerized.adoc Outdated
Comment thread guides/common/attributes-satellite.adoc Outdated
Comment thread guides/common/attributes.adoc Outdated
Comment thread guides/scripts/find_unused_modules
@aneta-petrova

Copy link
Copy Markdown
Member Author

I've implemented the feedback, and along with the list of exceptions in the find_unused_modules, that means a lot of changes since the acks were granted so I'd like to ask for re-reviews.

@aneta-petrova

Copy link
Copy Markdown
Member Author

We had a separate conversation about the cherry-picking concerns elsewhere, so let me summarize it here for maximum transparency:

There are some concerns due to our cherry-picking workflows -- removing the non-containerized build in preview might create a blind spot: If I update something on master and only view the containerized preview, I might accidentally break things on the non-containerized preview after the update is cherry-picked to 3.19.

However, the other build targets still include non-containerized previews, which would mitigate the risk.

Option 1: If we want to feel extra safe about preventing that risk, we could mandate separate cherry-picking PRs for branches 3.19 and below (the workflow would be 1. open a PR against master + get it reviewed, 2. open a new PR against 3.19 with the same changes + get it reviewed).

Option 2: If we don't feel like we need this extra safeguard and the non-satellite non-containerized previews are enough, we should be able to continue cherry-picking as usual. Without mandating a separate PR for 3.19.

Please @ekohl @jafiala @Lennonka feel free to review if I captured all arguments and counter-arguments correctly.

@aneta-petrova

Copy link
Copy Markdown
Member Author

As the author of the PR, I'm leaning towards Option 2 :) provided that all maintainers are mindful of the difference between containerized and non-containerized. Which, I think, by now we all are.

@Lennonka Lennonka left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Option 2

@maximiliankolb

Copy link
Copy Markdown
Contributor

Option 2.

@aneta-petrova aneta-petrova removed the Needs tech review Requires a review from the technical perspective label Jul 1, 2026
@jafiala

jafiala commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

Option 2 as well.

@aneta-petrova aneta-petrova added style review done No issues from docs style/grammar perspective and removed Needs style review Requires a review from docs style/grammar perspective labels Jul 1, 2026
:project-client-RHEL8-url: {RepoRHEL8ServerSatelliteToolsProjectVersion}

// Containerized deployment overrides
:containerized:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggested to set the containerized attribute in attributes-containerized.adoc so it's set for all containerized builds. Then you can also drop it from the ifeval::["{build}" == "containerized-katello"] and ifeval::["{build}" == "containerized-orcharhino"] sections in guides/common/attributes.adoc.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR is about making changes to Satellite build targets and I'd rather not touch the other ones. In #4995 (comment), I explained I'm making the change only for Satellite.

aneta-petrova and others added 5 commits July 2, 2026 09:22
Since the satellite build is now containerized-only, modules and
assemblies that are excluded for containerized builds (wrapped in
ifndef::containerized[]) are no longer included in any build target.

Add exceptions for these 82 files to prevent find_unused_modules from
reporting them as errors.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: Ewoud Kohl van Wijngaarden <ewoud@kohlvanwijngaarden.nl>
@aneta-petrova
aneta-petrova force-pushed the satellite-switch-to-foremanctl branch from 75783b5 to 4f8b7c5 Compare July 2, 2026 07:23
@aneta-petrova

Copy link
Copy Markdown
Member Author

A rebase was needed to pull in a new attribute added in https://github.com/theforeman/foreman-documentation/pull/4996/changes
And I pushed an additional commit to reflect a change in #4982 which renamed one of the modules that I'm adding to the exceptions in find_unused_modules

@aneta-petrova
aneta-petrova merged commit 2234d79 into theforeman:master Jul 2, 2026
11 checks passed
@aneta-petrova
aneta-petrova deleted the satellite-switch-to-foremanctl branch July 2, 2026 09:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

style review done No issues from docs style/grammar perspective

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants