Update Config Sync using a private registry

Each version of Config Sync requires a specific set of versioned images to run. If you are using a private registry, you must pull, tag, and push these images to your private registry before you can install Config Sync components or upgrade the Config Sync version.

Add images to a private registry

To push version-specific Config Sync images to a private registry, click the plus icon for the version that you want to use and complete the listed steps.

1.20.0

To add the images to a private registry, complete the following steps:

  1. Pull the Config Sync images:
    docker pull gcr.io/config-management-release/admission-webhook:v1.20.0-rc.3
    docker pull gcr.io/config-management-release/gcenode-askpass-sidecar:v1.20.0-rc.3
    docker pull gcr.io/config-management-release/git-sync:v4.3.0-gke.2__linux_amd64
    docker pull gcr.io/config-management-release/helm-sync:v1.20.0-rc.3
    docker pull gcr.io/config-management-release/hydration-controller:v1.20.0-rc.3
    docker pull gcr.io/config-management-release/oci-sync:v1.20.0-rc.3
    docker pull gcr.io/config-management-release/otelcontribcol:v0.103.0-gke.5
    docker pull gcr.io/config-management-release/reconciler-manager:v1.20.0-rc.3
    docker pull gcr.io/config-management-release/reconciler:v1.20.0-rc.3
    docker pull gcr.io/config-management-release/resource-group-controller:v1.20.0-rc.3
    
  2. Create a variable for your private registry URL:
    export PRIVATE_REGISTRY_URL=PRIVATE_REGISTRY_URL
    
    Replace PRIVATE_REGISTRY_URL with your private registry URL.
  3. Tag the images with your private registry URL:
    docker tag gcr.io/config-management-release/admission-webhook:v1.20.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.20.0-rc.3
    docker tag gcr.io/config-management-release/gcenode-askpass-sidecar:v1.20.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.20.0-rc.3
    docker tag gcr.io/config-management-release/git-sync:v4.3.0-gke.2__linux_amd64 \
     ${PRIVATE_REGISTRY_URL}/git-sync:v4.3.0-gke.2__linux_amd64
    docker tag gcr.io/config-management-release/helm-sync:v1.20.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/helm-sync:v1.20.0-rc.3
    docker tag gcr.io/config-management-release/hydration-controller:v1.20.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.20.0-rc.3
    docker tag gcr.io/config-management-release/oci-sync:v1.20.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/oci-sync:v1.20.0-rc.3
    docker tag gcr.io/config-management-release/otelcontribcol:v0.103.0-gke.5 \
     ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.103.0-gke.5
    docker tag gcr.io/config-management-release/reconciler-manager:v1.20.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.20.0-rc.3
    docker tag gcr.io/config-management-release/reconciler:v1.20.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/reconciler:v1.20.0-rc.3
    docker tag gcr.io/config-management-release/resource-group-controller:v1.20.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.20.0-rc.3
    
  4. Push the tagged images to your private registry:
    docker push ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.20.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.20.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/git-sync:v4.3.0-gke.2__linux_amd64
    docker push ${PRIVATE_REGISTRY_URL}/helm-sync:v1.20.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.20.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/oci-sync:v1.20.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.103.0-gke.5
    docker push ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.20.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/reconciler:v1.20.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.20.0-rc.3
    

If you can pull the tagged images from your private registry, then the procedure was successful.

1.19.2

To add the images to a private registry, complete the following steps:

  1. Pull the Config Sync images:
    docker pull gcr.io/config-management-release/config-management-operator:v1.19.2-rc.1
    docker pull gcr.io/config-management-release/admission-webhook:v1.19.2-rc.1
    docker pull gcr.io/config-management-release/gcenode-askpass-sidecar:v1.19.2-rc.1
    docker pull gcr.io/config-management-release/git-sync:v4.2.4-gke.8__linux_amd64
    docker pull gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.14
    docker pull gcr.io/config-management-release/helm-sync:v1.19.2-rc.1
    docker pull gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.16
    docker pull gcr.io/config-management-release/hydration-controller:v1.19.2-rc.1
    docker pull gcr.io/config-management-release/oci-sync:v1.19.2-rc.1
    docker pull gcr.io/config-management-release/otelcontribcol:v0.103.0-gke.4
    docker pull gcr.io/config-management-release/reconciler-manager:v1.19.2-rc.1
    docker pull gcr.io/config-management-release/reconciler:v1.19.2-rc.1
    docker pull gcr.io/config-management-release/resource-group-controller:v1.19.2-rc.1
    
  2. Create a variable for your private registry URL:
    export PRIVATE_REGISTRY_URL=PRIVATE_REGISTRY_URL
    
    Replace PRIVATE_REGISTRY_URL with your private registry URL.
  3. Tag the images with your private registry URL:
    docker tag gcr.io/config-management-release/config-management-operator:v1.19.2-rc.1 \
     ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.19.2-rc.1
    docker tag gcr.io/config-management-release/admission-webhook:v1.19.2-rc.1 \
     ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.19.2-rc.1
    docker tag gcr.io/config-management-release/gcenode-askpass-sidecar:v1.19.2-rc.1 \
     ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.19.2-rc.1
    docker tag gcr.io/config-management-release/git-sync:v4.2.4-gke.8__linux_amd64 \
     ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.4-gke.8__linux_amd64
    docker tag gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.14 \
     ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.14
    docker tag gcr.io/config-management-release/helm-sync:v1.19.2-rc.1 \
     ${PRIVATE_REGISTRY_URL}/helm-sync:v1.19.2-rc.1
    docker tag gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.16 \
     ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.16
    docker tag gcr.io/config-management-release/hydration-controller:v1.19.2-rc.1 \
     ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.19.2-rc.1
    docker tag gcr.io/config-management-release/oci-sync:v1.19.2-rc.1 \
     ${PRIVATE_REGISTRY_URL}/oci-sync:v1.19.2-rc.1
    docker tag gcr.io/config-management-release/otelcontribcol:v0.103.0-gke.4 \
     ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.103.0-gke.4
    docker tag gcr.io/config-management-release/reconciler-manager:v1.19.2-rc.1 \
     ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.19.2-rc.1
    docker tag gcr.io/config-management-release/reconciler:v1.19.2-rc.1 \
     ${PRIVATE_REGISTRY_URL}/reconciler:v1.19.2-rc.1
    docker tag gcr.io/config-management-release/resource-group-controller:v1.19.2-rc.1 \
     ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.19.2-rc.1
    
  4. Push the tagged images to your private registry:
    docker push ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.19.2-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.19.2-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.19.2-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.4-gke.8__linux_amd64
    docker push ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.14
    docker push ${PRIVATE_REGISTRY_URL}/helm-sync:v1.19.2-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.16
    docker push ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.19.2-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/oci-sync:v1.19.2-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.103.0-gke.4
    docker push ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.19.2-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/reconciler:v1.19.2-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.19.2-rc.1
    

If you can pull the tagged images from your private registry, then the procedure was successful.

1.19.1

To add the images to a private registry, complete the following steps:

  1. Pull the Config Sync images:
    docker pull gcr.io/config-management-release/config-management-operator:v1.19.1-rc.1
    docker pull gcr.io/config-management-release/admission-webhook:v1.19.1-rc.1
    docker pull gcr.io/config-management-release/gcenode-askpass-sidecar:v1.19.1-rc.1
    docker pull gcr.io/config-management-release/git-sync:v4.2.4-gke.4__linux_amd64
    docker pull gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.14
    docker pull gcr.io/config-management-release/helm-sync:v1.19.1-rc.1
    docker pull gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.16
    docker pull gcr.io/config-management-release/hydration-controller:v1.19.1-rc.1
    docker pull gcr.io/config-management-release/oci-sync:v1.19.1-rc.1
    docker pull gcr.io/config-management-release/otelcontribcol:v0.103.0-gke.4
    docker pull gcr.io/config-management-release/reconciler-manager:v1.19.1-rc.1
    docker pull gcr.io/config-management-release/reconciler:v1.19.1-rc.1
    docker pull gcr.io/config-management-release/resource-group-controller:v1.19.1-rc.1
    
  2. Create a variable for your private registry URL:
    export PRIVATE_REGISTRY_URL=PRIVATE_REGISTRY_URL
    
    Replace PRIVATE_REGISTRY_URL with your private registry URL.
  3. Tag the images with your private registry URL:
    docker tag gcr.io/config-management-release/config-management-operator:v1.19.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.19.1-rc.1
    docker tag gcr.io/config-management-release/admission-webhook:v1.19.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.19.1-rc.1
    docker tag gcr.io/config-management-release/gcenode-askpass-sidecar:v1.19.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.19.1-rc.1
    docker tag gcr.io/config-management-release/git-sync:v4.2.4-gke.4__linux_amd64 \
     ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.4-gke.4__linux_amd64
    docker tag gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.14 \
     ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.14
    docker tag gcr.io/config-management-release/helm-sync:v1.19.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/helm-sync:v1.19.1-rc.1
    docker tag gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.16 \
     ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.16
    docker tag gcr.io/config-management-release/hydration-controller:v1.19.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.19.1-rc.1
    docker tag gcr.io/config-management-release/oci-sync:v1.19.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/oci-sync:v1.19.1-rc.1
    docker tag gcr.io/config-management-release/otelcontribcol:v0.103.0-gke.4 \
     ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.103.0-gke.4
    docker tag gcr.io/config-management-release/reconciler-manager:v1.19.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.19.1-rc.1
    docker tag gcr.io/config-management-release/reconciler:v1.19.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/reconciler:v1.19.1-rc.1
    docker tag gcr.io/config-management-release/resource-group-controller:v1.19.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.19.1-rc.1
    
  4. Push the tagged images to your private registry:
    docker push ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.19.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.19.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.19.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.4-gke.4__linux_amd64
    docker push ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.14
    docker push ${PRIVATE_REGISTRY_URL}/helm-sync:v1.19.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.16
    docker push ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.19.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/oci-sync:v1.19.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.103.0-gke.4
    docker push ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.19.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/reconciler:v1.19.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.19.1-rc.1
    

If you can pull the tagged images from your private registry, then the procedure was successful.

1.19.0

To add the images to a private registry, complete the following steps:

  1. Pull the Config Sync images:
    docker pull gcr.io/config-management-release/config-management-operator:v1.19.0-rc.3
    docker pull gcr.io/config-management-release/admission-webhook:v1.19.0-rc.2
    docker pull gcr.io/config-management-release/gcenode-askpass-sidecar:v1.19.0-rc.2
    docker pull gcr.io/config-management-release/git-sync:v4.2.3-gke.5__linux_amd64
    docker pull gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.14
    docker pull gcr.io/config-management-release/helm-sync:v1.19.0-rc.2
    docker pull gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.16
    docker pull gcr.io/config-management-release/hydration-controller:v1.19.0-rc.2
    docker pull gcr.io/config-management-release/oci-sync:v1.19.0-rc.2
    docker pull gcr.io/config-management-release/otelcontribcol:v0.103.0-gke.3
    docker pull gcr.io/config-management-release/reconciler-manager:v1.19.0-rc.2
    docker pull gcr.io/config-management-release/reconciler:v1.19.0-rc.2
    docker pull gcr.io/config-management-release/resource-group-controller:v1.19.0-rc.2
    
  2. Create a variable for your private registry URL:
    export PRIVATE_REGISTRY_URL=PRIVATE_REGISTRY_URL
    
    Replace PRIVATE_REGISTRY_URL with your private registry URL.
  3. Tag the images with your private registry URL:
    docker tag gcr.io/config-management-release/config-management-operator:v1.19.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.19.0-rc.3
    docker tag gcr.io/config-management-release/admission-webhook:v1.19.0-rc.2 \
     ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.19.0-rc.2
    docker tag gcr.io/config-management-release/gcenode-askpass-sidecar:v1.19.0-rc.2 \
     ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.19.0-rc.2
    docker tag gcr.io/config-management-release/git-sync:v4.2.3-gke.5__linux_amd64 \
     ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.3-gke.5__linux_amd64
    docker tag gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.14 \
     ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.14
    docker tag gcr.io/config-management-release/helm-sync:v1.19.0-rc.2 \
     ${PRIVATE_REGISTRY_URL}/helm-sync:v1.19.0-rc.2
    docker tag gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.16 \
     ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.16
    docker tag gcr.io/config-management-release/hydration-controller:v1.19.0-rc.2 \
     ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.19.0-rc.2
    docker tag gcr.io/config-management-release/oci-sync:v1.19.0-rc.2 \
     ${PRIVATE_REGISTRY_URL}/oci-sync:v1.19.0-rc.2
    docker tag gcr.io/config-management-release/otelcontribcol:v0.103.0-gke.3 \
     ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.103.0-gke.3
    docker tag gcr.io/config-management-release/reconciler-manager:v1.19.0-rc.2 \
     ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.19.0-rc.2
    docker tag gcr.io/config-management-release/reconciler:v1.19.0-rc.2 \
     ${PRIVATE_REGISTRY_URL}/reconciler:v1.19.0-rc.2
    docker tag gcr.io/config-management-release/resource-group-controller:v1.19.0-rc.2 \
     ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.19.0-rc.2
    
  4. Push the tagged images to your private registry:
    docker push ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.19.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.19.0-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.19.0-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.3-gke.5__linux_amd64
    docker push ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.14
    docker push ${PRIVATE_REGISTRY_URL}/helm-sync:v1.19.0-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.16
    docker push ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.19.0-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/oci-sync:v1.19.0-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.103.0-gke.3
    docker push ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.19.0-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/reconciler:v1.19.0-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.19.0-rc.2
    

If you can pull the tagged images from your private registry, then the procedure was successful.

1.18.3

To add the images to a private registry, complete the following steps:

  1. Pull the Config Sync images:
    docker pull gcr.io/config-management-release/config-management-operator:v1.18.3-rc.2
    docker pull gcr.io/config-management-release/admission-webhook:v1.18.3-rc.4
    docker pull gcr.io/config-management-release/gcenode-askpass-sidecar:v1.18.3-rc.4
    docker pull gcr.io/config-management-release/git-sync:v3.6.9-gke.21__linux_amd64
    docker pull gcr.io/config-management-release/git-sync:v4.2.3-gke.5__linux_amd64
    docker pull gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.14
    docker pull gcr.io/config-management-release/helm-sync:v1.18.3-rc.4
    docker pull gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.16
    docker pull gcr.io/config-management-release/hydration-controller:v1.18.3-rc.4
    docker pull gcr.io/config-management-release/monorepo:v1.18.3-rc.3
    docker pull gcr.io/config-management-release/oci-sync:v1.18.3-rc.4
    docker pull gcr.io/config-management-release/otelcontribcol:v0.102.0-gke.6
    docker pull gcr.io/config-management-release/reconciler-manager:v1.18.3-rc.4
    docker pull gcr.io/config-management-release/reconciler:v1.18.3-rc.4
    docker pull gcr.io/config-management-release/resource-group-controller:v1.18.3-rc.4
    
  2. Create a variable for your private registry URL:
    export PRIVATE_REGISTRY_URL=PRIVATE_REGISTRY_URL
    
    Replace PRIVATE_REGISTRY_URL with your private registry URL.
  3. Tag the images with your private registry URL:
    docker tag gcr.io/config-management-release/config-management-operator:v1.18.3-rc.2 \
     ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.18.3-rc.2
    docker tag gcr.io/config-management-release/admission-webhook:v1.18.3-rc.4 \
     ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.18.3-rc.4
    docker tag gcr.io/config-management-release/gcenode-askpass-sidecar:v1.18.3-rc.4 \
     ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.18.3-rc.4
    docker tag gcr.io/config-management-release/git-sync:v3.6.9-gke.21__linux_amd64 \
     ${PRIVATE_REGISTRY_URL}/git-sync:v3.6.9-gke.21__linux_amd64
    docker tag gcr.io/config-management-release/git-sync:v4.2.3-gke.5__linux_amd64 \
     ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.3-gke.5__linux_amd64
    docker tag gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.14 \
     ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.14
    docker tag gcr.io/config-management-release/helm-sync:v1.18.3-rc.4 \
     ${PRIVATE_REGISTRY_URL}/helm-sync:v1.18.3-rc.4
    docker tag gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.16 \
     ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.16
    docker tag gcr.io/config-management-release/hydration-controller:v1.18.3-rc.4 \
     ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.18.3-rc.4
    docker tag gcr.io/config-management-release/monorepo:v1.18.3-rc.3 \
     ${PRIVATE_REGISTRY_URL}/monorepo:v1.18.3-rc.3
    docker tag gcr.io/config-management-release/oci-sync:v1.18.3-rc.4 \
     ${PRIVATE_REGISTRY_URL}/oci-sync:v1.18.3-rc.4
    docker tag gcr.io/config-management-release/otelcontribcol:v0.102.0-gke.6 \
     ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.102.0-gke.6
    docker tag gcr.io/config-management-release/reconciler-manager:v1.18.3-rc.4 \
     ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.18.3-rc.4
    docker tag gcr.io/config-management-release/reconciler:v1.18.3-rc.4 \
     ${PRIVATE_REGISTRY_URL}/reconciler:v1.18.3-rc.4
    docker tag gcr.io/config-management-release/resource-group-controller:v1.18.3-rc.4 \
     ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.18.3-rc.4
    
  4. Push the tagged images to your private registry:
    docker push ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.18.3-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.18.3-rc.4
    docker push ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.18.3-rc.4
    docker push ${PRIVATE_REGISTRY_URL}/git-sync:v3.6.9-gke.21__linux_amd64
    docker push ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.3-gke.5__linux_amd64
    docker push ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.14
    docker push ${PRIVATE_REGISTRY_URL}/helm-sync:v1.18.3-rc.4
    docker push ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.16
    docker push ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.18.3-rc.4
    docker push ${PRIVATE_REGISTRY_URL}/monorepo:v1.18.3-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/oci-sync:v1.18.3-rc.4
    docker push ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.102.0-gke.6
    docker push ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.18.3-rc.4
    docker push ${PRIVATE_REGISTRY_URL}/reconciler:v1.18.3-rc.4
    docker push ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.18.3-rc.4
    

If you can pull the tagged images from your private registry, then the procedure was successful.

1.18.2

To add the images to a private registry, complete the following steps:

  1. Pull the Config Sync images:
    docker pull gcr.io/config-management-release/config-management-operator:v1.18.2-rc.1
    docker pull gcr.io/config-management-release/admission-webhook:v1.18.2-rc.2
    docker pull gcr.io/config-management-release/gcenode-askpass-sidecar:v1.18.2-rc.2
    docker pull gcr.io/config-management-release/git-sync:v3.6.9-gke.15__linux_amd64
    docker pull gcr.io/config-management-release/git-sync:v4.2.1-gke.10__linux_amd64
    docker pull gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.13
    docker pull gcr.io/config-management-release/helm-sync:v1.18.2-rc.2
    docker pull gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.15
    docker pull gcr.io/config-management-release/hydration-controller:v1.18.2-rc.2
    docker pull gcr.io/config-management-release/monorepo:v1.18.2-rc.1
    docker pull gcr.io/config-management-release/oci-sync:v1.18.2-rc.2
    docker pull gcr.io/config-management-release/otelcontribcol:v0.102.0-gke.4
    docker pull gcr.io/config-management-release/reconciler-manager:v1.18.2-rc.2
    docker pull gcr.io/config-management-release/reconciler:v1.18.2-rc.2
    docker pull gcr.io/config-management-release/resource-group-controller:v1.18.2-rc.2
    
  2. Create a variable for your private registry URL:
    export PRIVATE_REGISTRY_URL=PRIVATE_REGISTRY_URL
    
    Replace PRIVATE_REGISTRY_URL with your private registry URL.
  3. Tag the images with your private registry URL:
    docker tag gcr.io/config-management-release/config-management-operator:v1.18.2-rc.1 \
     ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.18.2-rc.1
    docker tag gcr.io/config-management-release/admission-webhook:v1.18.2-rc.2 \
     ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.18.2-rc.2
    docker tag gcr.io/config-management-release/gcenode-askpass-sidecar:v1.18.2-rc.2 \
     ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.18.2-rc.2
    docker tag gcr.io/config-management-release/git-sync:v3.6.9-gke.15__linux_amd64 \
     ${PRIVATE_REGISTRY_URL}/git-sync:v3.6.9-gke.15__linux_amd64
    docker tag gcr.io/config-management-release/git-sync:v4.2.1-gke.10__linux_amd64 \
     ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.1-gke.10__linux_amd64
    docker tag gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.13 \
     ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.13
    docker tag gcr.io/config-management-release/helm-sync:v1.18.2-rc.2 \
     ${PRIVATE_REGISTRY_URL}/helm-sync:v1.18.2-rc.2
    docker tag gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.15 \
     ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.15
    docker tag gcr.io/config-management-release/hydration-controller:v1.18.2-rc.2 \
     ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.18.2-rc.2
    docker tag gcr.io/config-management-release/monorepo:v1.18.2-rc.1 \
     ${PRIVATE_REGISTRY_URL}/monorepo:v1.18.2-rc.1
    docker tag gcr.io/config-management-release/oci-sync:v1.18.2-rc.2 \
     ${PRIVATE_REGISTRY_URL}/oci-sync:v1.18.2-rc.2
    docker tag gcr.io/config-management-release/otelcontribcol:v0.102.0-gke.4 \
     ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.102.0-gke.4
    docker tag gcr.io/config-management-release/reconciler-manager:v1.18.2-rc.2 \
     ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.18.2-rc.2
    docker tag gcr.io/config-management-release/reconciler:v1.18.2-rc.2 \
     ${PRIVATE_REGISTRY_URL}/reconciler:v1.18.2-rc.2
    docker tag gcr.io/config-management-release/resource-group-controller:v1.18.2-rc.2 \
     ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.18.2-rc.2
    
  4. Push the tagged images to your private registry:
    docker push ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.18.2-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.18.2-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.18.2-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/git-sync:v3.6.9-gke.15__linux_amd64
    docker push ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.1-gke.10__linux_amd64
    docker push ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.13
    docker push ${PRIVATE_REGISTRY_URL}/helm-sync:v1.18.2-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.15
    docker push ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.18.2-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/monorepo:v1.18.2-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/oci-sync:v1.18.2-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.102.0-gke.4
    docker push ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.18.2-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/reconciler:v1.18.2-rc.2
    docker push ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.18.2-rc.2
    

If you can pull the tagged images from your private registry, then the procedure was successful.

1.18.1

To add the images to a private registry, complete the following steps:

  1. Pull the Config Sync images:
    docker pull gcr.io/config-management-release/config-management-operator:v1.18.1-rc.1
    docker pull gcr.io/config-management-release/admission-webhook:v1.18.1-rc.1
    docker pull gcr.io/config-management-release/gcenode-askpass-sidecar:v1.18.1-rc.1
    docker pull gcr.io/config-management-release/git-sync:v3.6.9-gke.15__linux_amd64
    docker pull gcr.io/config-management-release/git-sync:v4.2.1-gke.10__linux_amd64
    docker pull gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.13
    docker pull gcr.io/config-management-release/helm-sync:v1.18.1-rc.1
    docker pull gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.15
    docker pull gcr.io/config-management-release/hydration-controller:v1.18.1-rc.1
    docker pull gcr.io/config-management-release/monorepo:v1.18.1-rc.1
    docker pull gcr.io/config-management-release/oci-sync:v1.18.1-rc.1
    docker pull gcr.io/config-management-release/otelcontribcol:v0.99.0-gke.1
    docker pull gcr.io/config-management-release/reconciler-manager:v1.18.1-rc.1
    docker pull gcr.io/config-management-release/reconciler:v1.18.1-rc.1
    docker pull gcr.io/config-management-release/resource-group-controller:v1.18.1-rc.1
    
  2. Create a variable for your private registry URL:
    export PRIVATE_REGISTRY_URL=PRIVATE_REGISTRY_URL
    
    Replace PRIVATE_REGISTRY_URL with your private registry URL.
  3. Tag the images with your private registry URL:
    docker tag gcr.io/config-management-release/config-management-operator:v1.18.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.18.1-rc.1
    docker tag gcr.io/config-management-release/admission-webhook:v1.18.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.18.1-rc.1
    docker tag gcr.io/config-management-release/gcenode-askpass-sidecar:v1.18.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.18.1-rc.1
    docker tag gcr.io/config-management-release/git-sync:v3.6.9-gke.15__linux_amd64 \
     ${PRIVATE_REGISTRY_URL}/git-sync:v3.6.9-gke.15__linux_amd64
    docker tag gcr.io/config-management-release/git-sync:v4.2.1-gke.10__linux_amd64 \
     ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.1-gke.10__linux_amd64
    docker tag gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.13 \
     ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.13
    docker tag gcr.io/config-management-release/helm-sync:v1.18.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/helm-sync:v1.18.1-rc.1
    docker tag gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.15 \
     ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.15
    docker tag gcr.io/config-management-release/hydration-controller:v1.18.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.18.1-rc.1
    docker tag gcr.io/config-management-release/monorepo:v1.18.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/monorepo:v1.18.1-rc.1
    docker tag gcr.io/config-management-release/oci-sync:v1.18.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/oci-sync:v1.18.1-rc.1
    docker tag gcr.io/config-management-release/otelcontribcol:v0.99.0-gke.1 \
     ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.99.0-gke.1
    docker tag gcr.io/config-management-release/reconciler-manager:v1.18.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.18.1-rc.1
    docker tag gcr.io/config-management-release/reconciler:v1.18.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/reconciler:v1.18.1-rc.1
    docker tag gcr.io/config-management-release/resource-group-controller:v1.18.1-rc.1 \
     ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.18.1-rc.1
    
  4. Push the tagged images to your private registry:
    docker push ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.18.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.18.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.18.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/git-sync:v3.6.9-gke.15__linux_amd64
    docker push ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.1-gke.10__linux_amd64
    docker push ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.13
    docker push ${PRIVATE_REGISTRY_URL}/helm-sync:v1.18.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.15
    docker push ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.18.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/monorepo:v1.18.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/oci-sync:v1.18.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.99.0-gke.1
    docker push ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.18.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/reconciler:v1.18.1-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.18.1-rc.1
    

If you can pull the tagged images from your private registry, then the procedure was successful.

1.18.0

To add the images to a private registry, complete the following steps:

  1. Pull the Config Sync images:
    docker pull gcr.io/config-management-release/config-management-operator:v1.18.0-rc.1
    docker pull gcr.io/config-management-release/admission-webhook:v1.18.0-rc.3
    docker pull gcr.io/config-management-release/gcenode-askpass-sidecar:v1.18.0-rc.3
    docker pull gcr.io/config-management-release/git-sync:v3.6.9-gke.13__linux_amd64
    docker pull gcr.io/config-management-release/git-sync:v4.2.1-gke.3__linux_amd64
    docker pull gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.12
    docker pull gcr.io/config-management-release/helm-sync:v1.18.0-rc.3
    docker pull gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.14
    docker pull gcr.io/config-management-release/hydration-controller:v1.18.0-rc.3
    docker pull gcr.io/config-management-release/monorepo:v1.18.0-rc.1
    docker pull gcr.io/config-management-release/oci-sync:v1.18.0-rc.3
    docker pull gcr.io/config-management-release/otelcontribcol:v0.91.0-gke.9
    docker pull gcr.io/config-management-release/reconciler-manager:v1.18.0-rc.3
    docker pull gcr.io/config-management-release/reconciler:v1.18.0-rc.3
    docker pull gcr.io/config-management-release/resource-group-controller:v1.18.0-rc.3
    
  2. Create a variable for your private registry URL:
    export PRIVATE_REGISTRY_URL=PRIVATE_REGISTRY_URL
    
    Replace PRIVATE_REGISTRY_URL with your private registry URL.
  3. Tag the images with your private registry URL:
    docker tag gcr.io/config-management-release/config-management-operator:v1.18.0-rc.1 \
     ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.18.0-rc.1
    docker tag gcr.io/config-management-release/admission-webhook:v1.18.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.18.0-rc.3
    docker tag gcr.io/config-management-release/gcenode-askpass-sidecar:v1.18.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.18.0-rc.3
    docker tag gcr.io/config-management-release/git-sync:v3.6.9-gke.13__linux_amd64 \
     ${PRIVATE_REGISTRY_URL}/git-sync:v3.6.9-gke.13__linux_amd64
    docker tag gcr.io/config-management-release/git-sync:v4.2.1-gke.3__linux_amd64 \
     ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.1-gke.3__linux_amd64
    docker tag gcr.io/config-management-release/gke-hc-manager:v0.11.0-hc.12 \
     ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.12
    docker tag gcr.io/config-management-release/helm-sync:v1.18.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/helm-sync:v1.18.0-rc.3
    docker tag gcr.io/config-management-release/hnc-manager:hnc-v0.8.0-hc.14 \
     ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.14
    docker tag gcr.io/config-management-release/hydration-controller:v1.18.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.18.0-rc.3
    docker tag gcr.io/config-management-release/monorepo:v1.18.0-rc.1 \
     ${PRIVATE_REGISTRY_URL}/monorepo:v1.18.0-rc.1
    docker tag gcr.io/config-management-release/oci-sync:v1.18.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/oci-sync:v1.18.0-rc.3
    docker tag gcr.io/config-management-release/otelcontribcol:v0.91.0-gke.9 \
     ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.91.0-gke.9
    docker tag gcr.io/config-management-release/reconciler-manager:v1.18.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.18.0-rc.3
    docker tag gcr.io/config-management-release/reconciler:v1.18.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/reconciler:v1.18.0-rc.3
    docker tag gcr.io/config-management-release/resource-group-controller:v1.18.0-rc.3 \
     ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.18.0-rc.3
    
  4. Push the tagged images to your private registry:
    docker push ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.18.0-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/config-management-operator:v1.18.0-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/admission-webhook:v1.18.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/gcenode-askpass-sidecar:v1.18.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/git-sync:v3.6.9-gke.13__linux_amd64
    docker push ${PRIVATE_REGISTRY_URL}/git-sync:v4.2.1-gke.3__linux_amd64
    docker push ${PRIVATE_REGISTRY_URL}/gke-hc-manager:v0.11.0-hc.12
    docker push ${PRIVATE_REGISTRY_URL}/helm-sync:v1.18.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/hnc-manager:hnc-v0.8.0-hc.14
    docker push ${PRIVATE_REGISTRY_URL}/hydration-controller:v1.18.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/monorepo:v1.18.0-rc.1
    docker push ${PRIVATE_REGISTRY_URL}/oci-sync:v1.18.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/otelcontribcol:v0.91.0-gke.9
    docker push ${PRIVATE_REGISTRY_URL}/reconciler-manager:v1.18.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/reconciler:v1.18.0-rc.3
    docker push ${PRIVATE_REGISTRY_URL}/resource-group-controller:v1.18.0-rc.3
    

If you can pull the tagged images from your private registry, then the procedure was successful.