Skip to content

Commit 201f681

Browse files
themr0crm3l
andauthored
RHDHBUGS-1109 - Added OLM framework prerequisites for AKS and reused common content (#1382) (#1390)
* RHDHBUGS-1109 - Added OLM framework prerequisites for AKS * Refactoring to reuse common steps * Update modules/installation/proc-provisioning-your-pull-secret-to-your-rhdh-instance-namespace.adoc * Update modules/configuring/proc-using-the-operator-to-run-rhdh-with-your-custom-configuration.adoc --------- Signed-off-by: Fabrice Flore-Thébault <[email protected]> Co-authored-by: Armel Soro <[email protected]>
1 parent f7f6dff commit 201f681

24 files changed

+524
-916
lines changed

artifacts/attributes.adoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@
9393

9494
// First mention of OpenShift CLI or `oc` in a module
9595
:openshift-cli: pass:quotes[OpenShift CLI (`oc`)]
96+
:platform-generic: OpenShift
9697

9798
// Links and their title (in alphabetical order)
9899
:about-book-link: {product-docs-link}/html-single/about_red_hat_developer_hub/index

assemblies/assembly-install-rhdh-eks-operator.adoc

Lines changed: 0 additions & 10 deletions
This file was deleted.
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
:_mod-docs-content-type: ASSEMBLY
2+
// To use this module define the attributes: :platform-long: :platform: :platform-id:
3+
[id="assembly-installing-rhdh-on-{platform-id}-by-using-the-operator"]
4+
= Installing {product-short} on {platform-long} by using the Operator
5+
6+
To benefit from over-the-air updates and catalogs provided by Operator-based applications distributed with the Operator Lifecycle Manager (OLM) framework, consider installing {product} by using the {product} Operator distributed in the {company-name} Ecosystem.
7+
8+
On {platform}, the most notable differences over an OpenShift-based installation are:
9+
10+
* The OLM framework and the {company-name} Ecosystem are not built-in.
11+
* The {company-name} Ecosystem pull-secret is not managed globally.
12+
* To expose the application, Ingresses replace OpenShift Routes.
13+
14+
For clarity, the content is broken down in sections highlighting these platform-specific additional steps.
15+
16+
include::modules/installation/proc-installing-the-operator-on-{platform-id}-by-using-olm.adoc[leveloffset=+1]
17+
18+
include::modules/configuring/proc-provisioning-your-custom-configuration.adoc[leveloffset=+1]
19+
20+
include::modules/installation/proc-provisioning-your-pull-secret-to-your-rhdh-instance-namespace.adoc[leveloffset=+1]
21+
22+
include::modules/configuring/proc-using-the-operator-to-run-rhdh-with-your-custom-configuration.adoc[leveloffset=+1]
23+
24+
include::modules/installation/proc-exposing-your-operator-based-rhdh-instance-on-{platform-id}.adoc[leveloffset=+1]
25+
Lines changed: 9 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,20 @@
11
[id="provisioning-your-custom-configuration"]
22
= Provisioning your custom {product} configuration
33

4-
To configure {product}, provision your custom {product} config maps and secrets to {ocp-brand-name} before running {product}.
4+
To configure {product}, provision your custom {product} config maps and secrets to {platform-long} before running {product}.
55

66
[TIP]
77
====
8-
You can skip this step to run {product-short} with the default config map and secret.
8+
On {ocp-brand-name}, you can skip this step to run {product-short} with the default config map and secret.
99
Your changes on this configuration might get reverted on {product-short} restart.
1010
====
1111

1212
.Prerequisites
13-
* By using the {ocp-docs-link}/html-single/cli_tools/index#cli-about-cli_cli-developer-commands[{openshift-cli}], you have access, with developer permissions, to the {ocp-short} cluster aimed at containing your {product-short} instance.
13+
* By using the {platform-cli-link}, you have access, with developer permissions, to the {platform-generic} cluster aimed at containing your {product-short} instance.
1414

1515
.Procedure
16-
. Author your custom `_<my_product_secrets>_.txt` file to provision your secrets as environment variables values in an {ocp-short} secret, rather than in clear text in your configuration files.
16+
. Author your custom `_<my_product_secrets>_.txt` file to provision your secrets as environment variables values in {a-platform-generic} secret,
17+
rather than in clear text in your configuration files.
1718
It contains one secret per line in `KEY=value` form.
1819
+
1920
* {authentication-book-link}[Enter your authentication secrets].
@@ -23,7 +24,7 @@ This is the main {product-short} configuration file.
2324
You need a custom `{my-app-config-file}` file to avoid the {product-short} installer to revert user edits during upgrades.
2425
When your custom `{my-app-config-file}` file is empty, {product-short} is using default values.
2526

26-
** To prepare a deployment with the {product} Operator on {ocp-short}, you can start with an empty file.
27+
** To prepare a deployment with the {product} Operator on {platform}, you can start with an empty file.
2728

2829
** To prepare a deployment with the {product} Helm chart, or on Kubernetes, enter the {product-short} base URL in the relevant fields in your `{my-app-config-file}` file to ensure proper functionality of {product-short}.
2930
The base URL is what a {product-short} user sees in their browser when accessing {product-short}.
@@ -55,49 +56,31 @@ backend:
5556
*** {authentication-book-link}[{authentication-book-title}].
5657
*** {authorization-book-link}[{authorization-book-title}].
5758
*** {customizing-book-link}[Customization].
58-
*** xref:proc-configuring-an-rhdh-instance-with-tls-in-kubernetes_running-behind-a-proxy[Configure your {ocp-short} integration].
5959

60-
. Provision your custom configuration files to your {ocp-short} cluster.
60+
. Provision your custom configuration files to your {platform} cluster.
6161

62-
.. Create the _<{my-product-namespace}>_ project aimed at containing your {product-short} instance.
62+
.. Create the _<{my-product-namespace}>_ {namespace} aimed at containing your {product-short} instance.
6363
+
6464
[source,terminal,subs="+attributes,+quotes"]
6565
----
6666
$ oc create namespace {my-product-namespace}
6767
----
68-
+
69-
Alternatively, {ocp-docs-link}/html-single/building_applications/index#creating-a-project-using-the-web-console_projects[create the project by using the web console].
7068

7169
.. Provision your `{my-app-config-file}` file to the `{my-app-config-config-map}` config map in the _<{my-product-namespace}>_ project.
7270
+
7371
[source,terminal,subs="+attributes,+quotes"]
7472
----
7573
$ oc create configmap {my-app-config-config-map} --from-file={my-app-config-file} --namespace={my-product-namespace}
7674
----
77-
+
78-
Alternatively, {ocp-docs-link}/html-single/nodes/index#nnodes-pods-configmap-create-from-console_configmaps[create the config map by using the web console].
7975

8076
.. Provision your `_<my_product_secrets>_.txt` file to the `_<my_product_secrets>_` secret in the _<{my-product-namespace}>_ project.
8177
+
8278
[source,terminal,subs="+attributes,+quotes"]
8379
----
8480
$ oc create secret generic `_<my_product_secrets>_` --from-file=`_<my_product_secrets>_.txt` --namespace={my-product-namespace}
8581
----
86-
+
87-
Alternatively,
88-
{ocp-docs-link}/html-single/nodes/index#nodes-pods-secrets-creating-web-console-secrets_nodes-pods-secrets[create the secret by using the web console].
89-
90-
[NOTE]
91-
====
92-
`_<my_product_secrets>_` is your preferred {product-short} secret name, specifying the identifier for your secret configuration within {product-short}.
93-
====
9482

9583
.Next steps
96-
Consider provisioning additional config maps and secrets:
97-
98-
* To use an external PostgreSQL database, xref:configuring-external-postgresql-databases[provision your PostgreSQL database secrets].
99-
100-
84+
* To use an external PostgreSQL database, {configuring-book-link}configuring-external-postgresql-databases[provision your PostgreSQL database secrets].
10185
* To enable dynamic plugins, {installing-and-viewing-plugins-book-link}[provision your dynamic plugins config map].
102-
10386
* To configure authorization by using external files, {authorization-book-link}#managing-authorizations-by-using-external-files[provision your RBAC policies config map].

modules/configuring/proc-using-the-operator-to-run-rhdh-with-your-custom-configuration.adoc

Lines changed: 30 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
:_mod-docs-content-type: PROCEDURE
2+
13
[id="using-the-operator-to-run-rhdh-with-your-custom-configuration"]
24
= Using the {product} Operator to run {product-short} with your custom configuration
35

@@ -7,16 +9,16 @@ To use the {product-short} Operator to run {product} with your custom configurat
79
* Injects environment variables provisioned in your custom secrets.
810

911
.Prerequisites
10-
* By using the {ocp-docs-link}/html-single/cli_tools/index#cli-about-cli_cli-developer-commands[{openshift-cli}], you have access, with developer permissions, to the {ocp-short} cluster aimed at containing your {product-short} instance.
11-
* {installing-on-ocp-book-link}[Your {ocp-short} administrator has installed the {product} Operator in {ocp-short}].
12-
* xref:provisioning-your-custom-configuration[You have provisioned your custom config maps and secrets in your `_<{my-product-namespace}>_` project].
12+
* By using the {platform-cli-link}, you have access, with developer permissions, to the {platform} cluster aimed at containing your {product-short} instance.
13+
* Your administrator has installed the {product} Operator in the cluster.
14+
* You have provisioned your custom config maps and secrets in your `_<{my-product-namespace}>_` project.
1315

1416
.Procedure
1517

1618
. Author your {product-custom-resource-type} CR in a `{my-product-cr-name}.yaml` file to use your custom config maps and secrets.
1719
+
18-
.Minimal `{my-product-cr-name}.yaml` custom resource example
19-
====
20+
Minimal `{my-product-cr-name}.yaml` custom resource example:
21+
+
2022
[source,yaml,subs="+attributes,+quotes"]
2123
----
2224
apiVersion: rhdh.redhat.com/v1alpha3
@@ -39,10 +41,9 @@ spec:
3941
database:
4042
enableLocalDb: true
4143
----
42-
====
4344
+
44-
.`{my-product-cr-name}.yaml` custom resource example with dynamic plugins and RBAC policies config maps, and external PostgreSQL database secrets.
45-
====
45+
`{my-product-cr-name}.yaml` custom resource example with dynamic plugins and RBAC policies config maps, and external PostgreSQL database secrets:
46+
+
4647
[source,yaml,subs="+attributes,+quotes"]
4748
----
4849
apiVersion: rhdh.redhat.com/v1alpha3
@@ -71,21 +72,19 @@ spec:
7172
database:
7273
enableLocalDb: false
7374
----
74-
====
7575

7676
Mandatory fields::
7777

7878
No fields are mandatory.
79-
You can create an empty {product-custom-resource-type} CR
80-
and run {product-short} with the default configuration.
79+
You can create an empty {product-custom-resource-type} CR and run {product-short} with the default configuration.
8180

8281
Optional fields::
8382

8483
`spec.application.appConfig.configMaps`:::
8584
Enter your config map name list.
8685
+
87-
.Mount files in the `{my-app-config-config-map}` config map.
88-
====
86+
Mount files in the `{my-app-config-config-map}` config map:
87+
+
8988
[source,yaml,subs="+attributes,+quotes"]
9089
----
9190
spec:
@@ -95,10 +94,9 @@ spec:
9594
configMaps:
9695
- name: {my-app-config-config-map}
9796
----
98-
====
9997
+
100-
.Mount files in the `{my-app-config-config-map}` and `rbac-policies` config maps.
101-
====
98+
Mount files in the `{my-app-config-config-map}` and `rbac-policies` config maps:
99+
+
102100
[source,yaml,subs="+attributes,+quotes"]
103101
----
104102
spec:
@@ -109,13 +107,12 @@ spec:
109107
- name: {my-app-config-config-map}
110108
- name: rbac-policies
111109
----
112-
====
113110

114111
`spec.application.extraEnvs.envs`:::
115-
Optionally, enter your additional environment variables that are not secrets, such as xref:proc-configuring-proxy-in-operator-deployment_running-behind-a-proxy[your proxy environment variables].
112+
Optionally, enter your additional environment variables that are not secrets, such as {configuring-book-link}#proc-configuring-proxy-in-operator-deployment_running-behind-a-proxy[your proxy environment variables].
113+
+
114+
Inject your `HTTP_PROXY`, `HTTPS_PROXY` and `NO_PROXY` environment variables:
116115
+
117-
.Inject your `HTTP_PROXY`, `HTTPS_PROXY` and `NO_PROXY` environment variables.
118-
====
119116
[source,yaml,subs="+attributes,+quotes"]
120117
----
121118
spec:
@@ -129,13 +126,12 @@ spec:
129126
- name: NO_PROXY
130127
value: 'localhost,example.org'
131128
----
132-
====
133129

134130
`spec.application.extraEnvs.secrets`:::
135131
Enter your environment variables secret name list.
136132
+
137-
.Inject the environment variables in your {product} secret
138-
====
133+
Inject the environment variables in your {product} secret:
134+
+
139135
[source,yaml,subs="+attributes,+quotes"]
140136
----
141137
spec:
@@ -144,10 +140,9 @@ spec:
144140
secrets:
145141
- name: _<my_product_secrets>_
146142
----
147-
====
148143
+
149-
.Inject the environment variables in the {product} and `{my-product-database-secrets}` secrets
150-
====
144+
Inject the environment variables in the {product} and `{my-product-database-secrets}` secrets:
145+
+
151146
[source,yaml,subs="+attributes,+quotes"]
152147
----
153148
spec:
@@ -157,7 +152,7 @@ spec:
157152
- name: _<my_product_secrets>_
158153
- name: {my-product-database-secrets}
159154
----
160-
====
155+
+
161156

162157
[NOTE]
163158
====
@@ -167,7 +162,8 @@ spec:
167162
`spec.application.extraFiles.secrets`:::
168163
Enter your certificates files secret name and files list.
169164
+
170-
.Mount the `postgres-crt.pem`, `postgres-ca.pem`, and `postgres-key.key` files contained in the `{my-product-database-certificates-secrets}` secret
165+
Mount the `postgres-crt.pem`, `postgres-ca.pem`, and `postgres-key.key` files contained in the `{my-product-database-certificates-secrets}` secret:
166+
+
171167
[source,yaml,subs="+attributes,+quotes"]
172168
----
173169
spec:
@@ -182,15 +178,17 @@ spec:
182178
`spec.database.enableLocalDb`:::
183179
Enable or disable the local PostgreSQL database.
184180
+
185-
.Disable the local PostgreSQL database generation to use an external postgreSQL database
181+
Disable the local PostgreSQL database generation to use an external postgreSQL database:
182+
+
186183
[source,yaml,subs="+attributes,+quotes"]
187184
----
188185
spec:
189186
database:
190187
enableLocalDb: false
191188
----
192189
+
193-
.On a development environment, use the local PostgreSQL database
190+
On a development environment, use the local PostgreSQL database:
191+
+
194192
[source,yaml,subs="+attributes,+quotes"]
195193
----
196194
spec:
@@ -199,9 +197,9 @@ spec:
199197
----
200198

201199
`spec.deployment`:::
202-
Optionally, xref:configuring-the-deployment[enter your deployment configuration].
200+
Optionally, {configuring-book-link}#configuring-the-deployment[enter your deployment configuration].
203201

204-
. Apply your {product-custom-resource-type} CR to start or update your {product-short} instance.
202+
. Apply your {product-custom-resource-type} CR to start or update your {product-short} instance:
205203
+
206204
[source,terminal,subs="+attributes,+quotes"]
207205
----

0 commit comments

Comments
 (0)