Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
12 changes: 6 additions & 6 deletions guides/common/assembly_managing-alternate-content-sources.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,20 @@

include::modules/con_managing-alternate-content-sources.adoc[]

include::modules/proc_creating-custom-alternate-content-sources-by-using-web-ui.adoc[leveloffset=+1]
include::modules/proc_creating-a-custom-alternate-content-source-by-using-web-ui.adoc[leveloffset=+1]

include::modules/proc_creating-custom-alternate-content-sources-by-using-cli.adoc[leveloffset=+1]
include::modules/proc_creating-a-custom-alternate-content-source-by-using-cli.adoc[leveloffset=+1]

include::modules/proc_creating-simplified-alternate-content-sources-by-using-web-ui.adoc[leveloffset=+1]
include::modules/proc_creating-a-simplified-alternate-content-source-by-using-web-ui.adoc[leveloffset=+1]

include::modules/proc_creating-simplified-alternate-content-sources-by-using-cli.adoc[leveloffset=+1]
include::modules/proc_creating-a-simplified-alternate-content-source-by-using-cli.adoc[leveloffset=+1]

ifdef::orcharhino,satellite[]
include::modules/proc_synchronizing-smart-proxy-directly-from-red-hat-cdn-by-using-web-ui.adoc[leveloffset=+1]
endif::[]

include::modules/proc_creating-rhui-alternate-content-sources-by-using-web-ui.adoc[leveloffset=+1]
include::modules/proc_creating-an-rhui-alternate-content-source-by-using-web-ui.adoc[leveloffset=+1]

include::modules/proc_creating-rhui-alternate-content-sources-by-using-cli.adoc[leveloffset=+1]
include::modules/proc_creating-an-rhui-alternate-content-source-by-using-cli.adoc[leveloffset=+1]

include::modules/ref_permissions-required-to-manage-alternate-content-sources.adoc[leveloffset=+1]
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,13 @@
= Managing alternate content sources

[role="_abstract"]
Alternate content sources (ACS) define alternate paths to download content during synchronization.
The content itself is downloaded from the alternate content source, while the metadata is downloaded from the {ProjectServer} or the upstream URL, depending on the configuration.
You can use alternate content sources to speed up synchronization if the content is located on the local filesystem or on a nearby network.
You can set up alternate content sources for {ProjectServer} and {SmartProxyServers}.
You can accelerate content synchronization for your {ProjectServer} and {SmartProxyServers} by creating alternate content sources.
Use an alternate content source on your local filesystem or nearby network to download content faster while still receiving metadata from the upstream source.

An alternate content source (ACS) defines an alternate path to download content during synchronization.
The content itself is downloaded from the ACS, while the metadata is downloaded from the {ProjectServer} or the upstream URL, depending on the configuration.
You can use ACS to accelerate synchronization if the content is located on the local filesystem or on a nearby network.
You can set up ACS for {ProjectServer} and {SmartProxyServers}.

You must refresh the alternate content source after creation or after making any changes.
A weekly cron job refreshes all alternate content sources.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
:_mod-docs-content-type: PROCEDURE

[id="creating-custom-alternate-content-sources-by-using-cli"]
= Creating custom alternate content sources by using Hammer CLI
[id="creating-a-custom-alternate-content-source-by-using-cli"]
= Creating a custom alternate content source by using Hammer CLI

[role="_abstract"]
You can create custom alternate content sources (ACS) to define alternate paths to download content during synchronization.
You can create a custom alternate content source (ACS) to accelerate content synchronization by downloading from your local network or filesystem instead of remote upstream servers.

.Prerequisites
* If the repository requires SSL authentication, import the SSL certificate and key into {Project}.
* If the repository requires SSL authentication, the SSL certificate and key must be imported into {Project}.
For more information, see {ContentManagementDocURL}importing-custom-ssl-certificates-by-using-cli[Importing custom SSL certificates by using Hammer CLI] in _{ContentManagementDocTitle}_.
* You have the base URL and subpaths of your alternate content source.
For example, if your base URL is `\https://{server-example-com}` and your subpaths are `rhel10/` and `rhel9/`, then {Project} will search `\https://{server-example-com}/rhel10/` and `\https://{server-example-com}/rhel9/`.
For example, if your base URL is `\https://{server-example-com}` and your subpaths are `rhel10/` and `rhel9/`, then {Project} searches `\https://{server-example-com}/rhel10/` and `\https://{server-example-com}/rhel9/`.

.Procedure
. Create a custom alternate content source:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
:_mod-docs-content-type: PROCEDURE

[id="creating-custom-alternate-content-sources-by-using-web-ui"]
= Creating custom alternate content sources by using {ProjectWebUI}
[id="creating-a-custom-alternate-content-source-by-using-web-ui"]
= Creating a custom alternate content source by using {ProjectWebUI}

[role="_abstract"]
You can create custom alternate content sources (ACS) to define alternate paths to download content during synchronization.
You can create a custom alternate content source (ACS) to accelerate content synchronization by downloading from your local network or filesystem instead of remote upstream servers.

.Prerequisites
* If the repository requires SSL authentication, import the SSL certificate and key into {Project}.
* If the repository requires SSL authentication, the SSL certificate and key must be imported into {Project}.
For more information, see {ContentManagementDocURL}importing-custom-ssl-certificates-by-using-web-ui[Importing {customssl} certificates by using {ProjectWebUI}] in _{ContentManagementDocTitle}_.
* You have the base URL and subpaths of your alternate content source.
For example, if your base URL is `\https://{server-example-com}` and your subpaths are `rhel10/` and `rhel9/`, then {Project} will search `\https://{server-example-com}/rhel10/` and `\https://{server-example-com}/rhel9/`.
For example, if your base URL is `\https://{server-example-com}` and your subpaths are `rhel10/` and `rhel9/`, then {Project} searches `\https://{server-example-com}/rhel10/` and `\https://{server-example-com}/rhel9/`.

.Procedure
. In the {ProjectWebUI}, navigate to *Content* > *Alternate Content Sources*.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
:_mod-docs-content-type: PROCEDURE

[id="creating-simplified-alternate-content-sources-by-using-cli"]
= Creating simplified alternate content sources by using Hammer CLI
[id="creating-a-simplified-alternate-content-source-by-using-cli"]
= Creating a simplified alternate content source by using Hammer CLI

[role="_abstract"]
You can create simplified alternate content sources (ACS) to reuse the upstream source to download content during synchronization on {SmartProxyServers}.
You can create a simplified alternate content source (ACS) when your {SmartProxyServers} have faster connections to the upstream repository than to your {ProjectServer}.
This accelerates synchronization by downloading content directly from the upstream source.

.Prerequisites
* You have created the products that will use the alternate content source.

.Procedure
. Create a simplified alternate content source:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
:_mod-docs-content-type: PROCEDURE

[id="creating-simplified-alternate-content-sources-by-using-web-ui"]
= Creating simplified alternate content sources by using {ProjectWebUI}
[id="creating-a-simplified-alternate-content-source-by-using-web-ui"]
= Creating a simplified alternate content source by using {ProjectWebUI}

[role="_abstract"]
You can create simplified alternate content sources (ACS) to reuse the upstream source to download content during synchronization on {SmartProxyServers}.
You can create a simplified alternate content source (ACS) when your {SmartProxyServers} have faster connections to the upstream repository than to your {ProjectServer}.
This accelerates synchronization by downloading content directly from the upstream source.

.Prerequisites
* You have created the products that will use the alternate content source.

.Procedure
. In the {ProjectWebUI}, navigate to *Content* > *Alternate Content Sources*.
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
:_mod-docs-content-type: PROCEDURE

[id="creating-an-rhui-alternate-content-source-by-using-cli"]
= Creating an RHUI alternate content source by using Hammer CLI

[role="_abstract"]
You can create an RHUI alternate content source (ACS) to synchronize content from your Red{nbsp}Hat Update Infrastructure (RHUI) server.
Leverage your existing RHUI investment and accelerate content synchronization.

{Project} searches content paths that combine a base URL with subpaths.
For example, if your base URL is `\https://{server-example-com}` and your subpaths are `rhel10/` and `rhel9/`, then {Project} searches `\https://{server-example-com}/rhel10/` and `\https://{server-example-com}/rhel9/`.

.Prerequisites
* The client entitlement certificates for the required repositories are generated on the RHUA node.
For more information, see {RHDocsBaseURL}red_hat_update_infrastructure/4/html/configuring_and_managing_red_hat_update_infrastructure/assembly_cmg-creating-client-ent-cert-config-rpm_configuring-and-managing-red-hat-update-infrastructure#proc_cmg-creating-client-entitlement-certificate_assembly_cmg-creating-client-ent-cert-config-rpm[Creating a client entitlement certificate with the Red Hat Update Infrastructure Management Tool] in _Configuring and Managing Red Hat Update Infrastructure 4_.
* The client entitlement certificates are imported into {Project}.
For more information, see {ContentManagementDocURL}importing-custom-ssl-certificates-by-using-web-ui[Importing {customssl} certificates by using {ProjectWebUI}] in _{ContentManagementDocTitle}_.
* You have the base URL of the Red{nbsp}Hat Update Infrastructure CDS node.

.Procedure
. On your RHUA server, display details for the required repositories:
+
[options="nowrap" subs="+quotes,attributes"]
----
# rhui-manager repo info --repo_id _My_Repo_ID_
----
+
Record the relative paths from the command output to use as subpaths.
Copy link
Copy Markdown
Contributor Author

@Lennonka Lennonka Apr 7, 2026

Choose a reason for hiding this comment

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

The relative path looks as follows according to the RHUI4 docs:

Relative Path:       content/dist/rhel8/rhui/8.4/aarch64/appstream/os

If people use it as-is for a subpath, they might get the full URL like:

https://rhui-cds-node.example.com/pulp/content/content/dist/rhel8/rhui/8.4/aarch64/appstream/os

Is that expected?
Or does Foreman handle the double content substring somehow?

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.

It's been a while since I've looked at RHUI, but the double content was intentional. I can find other references to fill RHUI content addresses including two content substrings. For example, https://access.redhat.com/solutions/5079081 and https://access.redhat.com/articles/6972161.

. Create a RHUI alternate content source:
+
[options="nowrap" subs="+quotes,attributes"]
----
$ hammer alternate-content-source create \
--alternate-content-source-type rhui \
--base-url "_https://rhui-cds-node.example.com/pulp/content_" \
--name "_My_ACS_Name_" \
--smart-proxy-ids __My_{smart-proxy-context-titlecase}_ID_1__,__My_{smart-proxy-context-titlecase}_ID_2__ \
--ssl-client-cert-id _My_SSL_Client_Certificate_ID_ \
--ssl-client-key-id _My_SSL_Client_Key_ID_ \
--subpaths _path/to/repo/1/,path/to/repo/2/_ \
--verify-ssl _true_
----
. Refresh the alternate content source:
+
[options="nowrap" subs="+quotes,attributes"]
----
$ hammer alternate-content-source refresh --name "_My_ACS_Name_"
----

.Verification
* Verify that the task ran successfully:
+
[options="nowrap" subs="+quotes,attributes"]
----
$ hammer task list --search "Refresh Alternate Content Source"
----
Original file line number Diff line number Diff line change
@@ -1,26 +1,31 @@
:_mod-docs-content-type: PROCEDURE

[id="creating-rhui-alternate-content-sources-by-using-web-ui"]
= Creating RHUI alternate content sources by using {ProjectWebUI}
[id="creating-an-rhui-alternate-content-source-by-using-web-ui"]
= Creating an RHUI alternate content source by using {ProjectWebUI}

[role="_abstract"]
You can use RHUI alternate content sources to configure your {SmartProxy} to sync content from a Red{nbsp}Hat Update Infrastructure server.
You can create an RHUI alternate content source (ACS) to synchronize content from your Red{nbsp}Hat Update Infrastructure (RHUI) server.
Leverage your existing RHUI investment and accelerate content synchronization.
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.

This feels MARKETING-y. 🙃

non-blocking.


{Project} searches content paths that combine a base URL with subpaths.
For example, if your base URL is `\https://{server-example-com}` and your subpaths are `rhel10/` and `rhel9/`, then {Project} searches `\https://{server-example-com}/rhel10/` and `\https://{server-example-com}/rhel9/`.

.Prerequisites
* Generate the client entitlement certificates for the required repos on the RHUA node as described in {RHDocsBaseURL}red_hat_update_infrastructure/4/html/configuring_and_managing_red_hat_update_infrastructure/assembly_cmg-creating-client-ent-cert-config-rpm_configuring-and-managing-red-hat-update-infrastructure#proc_cmg-creating-client-entitlement-certificate_assembly_cmg-creating-client-ent-cert-config-rpm[Creating a client entitlement certificate with the Red Hat Update Infrastructure Management Tool] in _Configuring and Managing Red Hat Update Infrastructure_.
* Import the client entitlement certificates into {Project}.
* The client entitlement certificates for the required repositories are generated on the RHUA node.
For more information, see {RHDocsBaseURL}red_hat_update_infrastructure/4/html/configuring_and_managing_red_hat_update_infrastructure/assembly_cmg-creating-client-ent-cert-config-rpm_configuring-and-managing-red-hat-update-infrastructure#proc_cmg-creating-client-entitlement-certificate_assembly_cmg-creating-client-ent-cert-config-rpm[Creating a client entitlement certificate with the Red Hat Update Infrastructure Management Tool] in _Configuring and Managing Red Hat Update Infrastructure 4_.
* The client entitlement certificates are imported into {Project}.
For more information, see {ContentManagementDocURL}importing-custom-ssl-certificates-by-using-web-ui[Importing {customssl} certificates by using {ProjectWebUI}] in _{ContentManagementDocTitle}_.
* Obtain a list of the subpaths for the required repositories.
Execute the following command on your RHUA server:
* You have the base URL of the Red{nbsp}Hat Update Infrastructure CDS node.

.Procedure
. On your RHUA server, display details for the required repositories:
+
[options="nowrap" subs="+quotes,attributes"]
----
# rhui-manager repo info --repo_id _My_Repo_ID_
----
* You have the base URL and subpaths of your alternate content source.
For example, if your base URL is `\https://{server-example-com}` and your subpaths are `rhel10/` and `rhel9/`, then {Project} will search `\https://{server-example-com}/rhel10/` and `\https://{server-example-com}/rhel9/`.

.Procedure
+
Record the relative paths from the command output to use as subpaths.
. In the {ProjectWebUI}, navigate to *Content* > *Alternate Content Sources*.
. Click *Add source*.
. Set the *Source type* to *RHUI*.
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,10 @@
= Synchronizing {SmartProxy} directly from Red{nbsp}Hat CDN by using {ProjectWebUI}

[role="_abstract"]
You can use simplified alternate content sources to configure your {SmartProxyServers} to sync content directly from Red{nbsp}Hat CDN instead of {ProjectServer}.
You can configure your {SmartProxyServers} to sync Red{nbsp}Hat content directly from the Red{nbsp}Hat CDN to reduce load on your {ProjectServer} and accelerate content synchronization.

.Prerequisites
* The required Red{nbsp}Hat repositories are enabled in {Project}.

.Procedure
. In the {ProjectWebUI}, navigate to *Content* > *Alternate Content Sources*.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
= Permissions required to manage alternate content sources

[role="_abstract"]
You need permissions to manage alternate content sources (ACS) on {ProjectName}.
User accounts must have a role that grants the following permissions to view and manage alternate content sources in {ProjectName}.

Permissions to view ACS::
* `view_content_credentials`
Expand Down
Loading