Chapter 9. Customizing Red Hat Quay on OpenShift Container Platform
Chapter 9. Customizing Red Hat Quay on OpenShift Container Platform After deployment, you can customize the Red Hat Quay application by editing the Red Hat Quay configuration bundle secret spec.configBundleSecret . You can also change the managed status of components and configure resource requests for some components in the spec.components object of the QuayRegistry resource. 9.1. Editing the config bundle secret in the OpenShift Container Platform console Use the following procedure to edit the config bundle secret in the OpenShift Container Platform console. Procedure On the Red Hat Quay Registry overview screen, click the link for the Config Bundle Secret . To edit the secret, click Actions Edit Secret . Modify the configuration and save the changes. Monitor the deployment to ensure successful completion and that the configuration changes have taken effect. 9.2. Determining QuayRegistry endpoints and secrets Use the following procedure to find QuayRegistry endpoints and secrets. Procedure You can examine the QuayRegistry resource, using oc describe quayregistry or oc get quayregistry -o yaml , to find the current endpoints and secrets by entering the following command: USD oc get quayregistry example-registry -n quay-enterprise -o yaml Example output apiVersion: quay.redhat.com/v1 kind: QuayRegistry metadata: ... name: example-registry namespace: quay-enterprise ... spec: components: - kind: quay managed: true ... - kind: clairpostgres managed: true configBundleSecret: init-config-bundle-secret 1 status: currentVersion: 3.7.0 lastUpdated: 2022-05-11 13:28:38.199476938 +0000 UTC registryEndpoint: https://example-registry-quay-quay-enterprise.apps.docs.gcp.quaydev.org 2 1 The config bundle secret, containing the config.yaml file and any SSL/TLS certificates. 2 The URL for your registry, for browser access to the registry UI, and for the registry API endpoint. 9.3. Downloading the existing configuration The following procedure shows you how to download the existing configuration by locating the Config Bundle Secret . Procedure Describe the QuayRegistry resource by entering the following command: USD oc describe quayregistry -n <quay_namespace> # ... Config Bundle Secret: example-registry-config-bundle-v123x # ... Obtain the secret data by entering the following command: USD oc get secret -n <quay_namespace> <example-registry-config-bundle-v123x> -o jsonpath='{.data}' Example output { "config.yaml": "RkVBVFVSRV9VU0 ... MDAwMAo=" } Decode the data by entering the following command: USD echo 'RkVBVFVSRV9VU0 ... MDAwMAo=' | base64 --decode Example output FEATURE_USER_INITIALIZE: true BROWSER_API_CALLS_XHR_ONLY: false SUPER_USERS: - quayadmin FEATURE_USER_CREATION: false FEATURE_QUOTA_MANAGEMENT: true FEATURE_PROXY_CACHE: true FEATURE_BUILD_SUPPORT: true DEFAULT_SYSTEM_REJECT_QUOTA_BYTES: 102400000 Optional. You can export the data into a YAML file into the current directory by passing in the >> config.yaml flag. For example: USD echo 'RkVBVFVSRV9VU0 ... MDAwMAo=' | base64 --decode >> config.yaml
oc get quayregistry example-registry -n quay-enterprise -o yaml apiVersion: quay.redhat.com/v1 kind: QuayRegistry metadata: name: example-registry namespace: quay-enterprise spec: components: - kind: quay managed: true - kind: clairpostgres managed: true configBundleSecret: init-config-bundle-secret 1 status: currentVersion: 3.7.0 lastUpdated: 2022-05-11 13:28:38.199476938 +0000 UTC registryEndpoint: https://example-registry-quay-quay-enterprise.apps.docs.gcp.quaydev.org 2 oc describe quayregistry -n <quay_namespace> Config Bundle Secret: example-registry-config-bundle-v123x oc get secret -n <quay_namespace> <example-registry-config-bundle-v123x> -o jsonpath='{.data}' { "config.yaml": "RkVBVFVSRV9VU0 ... MDAwMAo=" } echo 'RkVBVFVSRV9VU0 ... MDAwMAo=' | base64 --decode FEATURE_USER_INITIALIZE: true BROWSER_API_CALLS_XHR_ONLY: false SUPER_USERS: - quayadmin FEATURE_USER_CREATION: false FEATURE_QUOTA_MANAGEMENT: true FEATURE_PROXY_CACHE: true FEATURE_BUILD_SUPPORT: true DEFAULT_SYSTEM_REJECT_QUOTA_BYTES: 102400000 echo 'RkVBVFVSRV9VU0 ... MDAwMAo=' | base64 --decode >> config.yaml