Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docs to upgrade disconnected foreman/sat #3636

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

parthaa
Copy link
Contributor

@parthaa parthaa commented Feb 3, 2025

Updates the instructions to upgrade 'in-place' for disconnected environments.

What changes are you introducing?

Adds steps on repositories needed to update a satellite in place for both RHel 8 and 9.

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

The existing instructions for this upgrade is outdated. The existing ones are only relevant upto sat 6.11. 6.12 on wards we have what are called "syncable" exports which is more straight forward.
This commit specifically addresses the latest project version. Another PR will be submitted for 6.16 and before.

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

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.13/Katello 4.15 (EL9 only)
  • Foreman 3.12/Katello 4.14 (Satellite 6.16)
  • Foreman 3.11/Katello 4.13 (orcharhino 6.11 on EL8 only; orcharhino 7.0 on EL8+EL9)
  • Foreman 3.10/Katello 4.12
  • Foreman 3.9/Katello 4.11 (Satellite 6.15; orcharhino 6.8/6.9/6.10)
  • Foreman 3.8/Katello 4.10
  • Foreman 3.7/Katello 4.9 (Satellite 6.14)
  • We do not accept PRs for Foreman older than 3.7.

@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 Needs testing Requires functional testing labels Feb 3, 2025
Copy link

github-actions bot commented Feb 3, 2025

Comment on lines 79 to 81
* {RepoRHEL8BaseOS}
* {RepoRHEL8AppStream}
* {RepoRHEL8ServerSatelliteServerProjectVersion}
Copy link
Contributor

Choose a reason for hiding this comment

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

These should be the RHEL9 repos, not RHEL8.

Also need to add a prerequisite that your disconnected 6.16 Satellite must already be on RHEL9 before upgrading. (Can link to the LEAPP documentation as well.)

Copy link
Member

Choose a reason for hiding this comment

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

metadata_expire=-1
gpgcheck=0
cost=500
baseurl=file:///<baseos location>/content/dist/rhel8/8/x86_64/baseos/os
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
baseurl=file:///<baseos location>/content/dist/rhel8/8/x86_64/baseos/os
baseurl=file:///<baseos location>/content/dist/rhel9/9/x86_64/baseos/os

metadata_expire=-1
gpgcheck=0
cost=500
baseurl=file:///<appstream location>/content/dist/rhel8/8/x86_64/appstream/os
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
baseurl=file:///<appstream location>/content/dist/rhel8/8/x86_64/appstream/os
baseurl=file:///<appstream location>/content/dist/rhel9/9/x86_64/appstream/os

metadata_expire=-1
gpgcheck=0
cost=500
baseurl=file:///<foreman location>/content/dist/layered/rhel8/x86_64/satellite/6.15/os/
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
baseurl=file:///<foreman location>/content/dist/layered/rhel8/x86_64/satellite/6.15/os/
baseurl=file:///<foreman location>/content/dist/layered/rhel9/x86_64/satellite/6.17/os/

@chris1984
Copy link
Member

We will need to add a link or reference https://access.redhat.com/solutions/7030156 in section 2.2 and have them upgrade to RHEL 9 before starting with the Satellite part

@parthaa parthaa marked this pull request as draft February 3, 2025 19:39
Updates the instructions to  upgrade 'in-place' for disconnected
environments.
@Lennonka Lennonka added tech review done No issues from the technical perspective and removed Needs tech review Requires a review from the technical perspective labels Feb 5, 2025
Copy link
Contributor

@Lennonka Lennonka left a comment

Choose a reason for hiding this comment

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

Can we make the instructions more RHEL-neutral for upstream?

. Download the debug certificate of the organization and store it locally at `/etc/pki/katello/certs/org-debug-cert.pem` or a location of your choosing.
For more information, see {AdministeringDocURL}Creating_an_Organization_Debug_Certificate_admin[Creating an Organization Debug Certificate] in _{AdministeringDocTitle}_.
. Create a Yum configuration file under `/etc/yum.repos.d`, such as `_{project-context}-disconnected_.repo`, with the following contents:
. Export these repositories via Syncable format. `hammer content-export complete repository --id=<repo_id> --format=syncable`
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
. Export these repositories via Syncable format. `hammer content-export complete repository --id=<repo_id> --format=syncable`
. Export these repositories by using syncable format:
+
[options="nowrap" subs="+quotes,verbatim,attributes"]
----
$ hammer content-export complete repository --id=_Repo_ID_ --format=syncable
----

.Procedure on the disconnected {ProjectServer}
. Copy the exported directories over to your disconnected {ProjectServer}

[options="nowrap" subs="+quotes"]
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
[options="nowrap" subs="+quotes"]

You probably don't need this here. This introduces a code block.

+
[options="nowrap" subs="+quotes,verbatim,attributes"]
[options="nowrap" subs="+quotes"]
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
[options="nowrap" subs="+quotes"]
[options="nowrap" subs="+quotes,attributes"]

You still need attributes because you're using attributes in the code below.

Comment on lines +40 to +46
[Satellite]
name=Satellite
mediaid=None
metadata_expire=-1
gpgcheck=0
cost=500
baseurl=file:///<export location>/content/dist/layered/rhel8/x86_64/satellite/{ProjectVersion}/os/
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
[Satellite]
name=Satellite
mediaid=None
metadata_expire=-1
gpgcheck=0
cost=500
baseurl=file:///<export location>/content/dist/layered/rhel8/x86_64/satellite/{ProjectVersion}/os/
[{Project}]
name={Project}
mediaid=None
metadata_expire=-1
gpgcheck=0
cost=500
baseurl=file:///<export location>/content/dist/layered/rhel8/x86_64/{project-context}/{ProjectVersion}/os/

Can we upstreamize this? Will it work for Foreman on EL?

. Use the health check option to determine if the system is ready for update.
On first use of this command, `{foreman-maintain}` prompts you to enter the hammer admin user credentials and saves them in the `/etc/foreman-maintain/foreman-maintain-hammer.yml` file.
+

Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
+

This is needed for proper formatting.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needs style review Requires a review from docs style/grammar perspective Needs testing Requires functional testing tech review done No issues from the technical perspective
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants