Skip to content

Conversation

@shubhadapaithankar
Copy link
Collaborator

@shubhadapaithankar shubhadapaithankar commented Nov 19, 2025

Which issue this PR addresses:

Related: ARO-22319
Supports: ARO-22319

What this PR does / why we need it:

Adds ARM/Bicep templates for ACR artifact cache to enable Hive upgrades in shared dev environments (v4-eastus, v4-westeurope, v4-australiaeast) and E2E. Hive team moved to new Quay repository requiring artifact cache instead of mirroring pipeline. Updates Hive script to pull from artifact cache ACR (arolocaldevsvc for dev, arosvcdev for E2E) and bumps to production version f84d11f6765b20de5a6c66998f2114b6855e94e0.

Test plan for issue:

Manual deployment:

  1. Deploy arolocaldevsvc ACR with artifact cache templates (mirrors existing ocpciarotest setup)
  2. Configure credentials and cache rules for new Hive repo
  3. Grant AKS clusters ACR pull access via role assignment
  4. Deploy Hive with HIVE_ACR_REGISTRY=arolocaldevsvc.azurecr.io
  5. Verify pods pull image: redhat-services-prod/crt-redhat-acm-tenant/hive-operator/hive:f84d11f6765b20de5a6c66998f2114b6855e94e0

Repeat for E2E using arosvcdev ACR.

Is there any documentation that needs to be updated for this PR?

No. Infrastructure templates only.

How do you know this will function as expected in production?

Dev/E2E only. Follows production pattern (ARO-20992) and existing artifact cache setup (ocpciarotest). Standard Azure monitoring and K8s pod status verification.

@github-actions
Copy link

Please rebase pull request.

@shubhadapaithankar shubhadapaithankar force-pushed the hive-upgrade-artifact-cache branch from 05572f6 to 8f1dd80 Compare November 19, 2025 19:39
@github-actions github-actions bot removed the needs-rebase branch needs a rebase label Nov 19, 2025
- Create ARM template for arolocaldevsvc ACR in dev environment
- Add Bicep templates for artifact cache credentials and rules
- Add ARM template for AKS to ACR pull role assignment
- Update Hive script to use artifact cache ACR with production version f84d11f6765b20de5a6c66998f2114b6855e94e0
- Support configurable registry via HIVE_ACR_REGISTRY environment variable

This enables Hive upgrades in v4-eastus, v4-westeurope, and v4-australiaeast
using Azure artifact cache to pull from the new Hive repository at
quay.io/redhat-services-prod/crt-redhat-acm-tenant/hive-operator/hive

Related: ARO-20992
@shubhadapaithankar shubhadapaithankar force-pushed the hive-upgrade-artifact-cache branch from 8f1dd80 to ec4ded4 Compare November 19, 2025 19:42
Copy link
Contributor

@kimorris27 kimorris27 left a comment

Choose a reason for hiding this comment

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

The new templates and the changes to hive-generate-config.sh look good, but we're missing a few things:

  • ARM/Bicep to deploy the ACR itself. Some things to keep in mind:
    • Since we have three shared development environments in different regions, using a single ACR name may result in conflicts upon deployment attempts. It may be easiest to use one ACR per region. I'm thinking the ACR would go in the v4-$LOCATION resource group.
    • We might want to consider the full service dev env as well. The full service dev env already includes its own ACR instance. I seem to recall the full service dev deployment process being broken though, so I'd say not to worry about it if it's still broken.
  • We'll want to incorporate these templates into our existing deployment procedures and documentation as needed. Here's where the other functions used to deploy templates for the full service dev env live: https://github.com/Azure/ARO-RP/blob/master/hack/devtools/deploy-shared-env.sh

- Add deploy_hive_acr_dev() to create per-region ACR (arodevhive{location})
- Add deploy_hive_artifact_cache_credentials() for credential set
- Add deploy_hive_artifact_cache_rules() for cache rules
- Add deploy_hive_aks_acr_pull_role() for AKS pull access
- Update default ACR registry to arodevhiveeastus.azurecr.io

Addresses PR feedback to integrate templates into existing deployment procedures
@shubhadapaithankar shubhadapaithankar force-pushed the hive-upgrade-artifact-cache branch from b9f7725 to 0cf10bb Compare November 20, 2025 16:41
Copy link
Contributor

@kimorris27 kimorris27 left a comment

Choose a reason for hiding this comment

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

Thanks for the changes so far. I left a few more suggestions, and we're still missing updates to the shared dev env deployment docs: https://github.com/Azure/ARO-RP/blob/master/docs/prepare-a-shared-rp-development-environment.md

- Create hive-acr-cache-and-access.bicep combining credential set, cache rules, and role assignment
- Reduce from 4 functions to 2: deploy_hive_acr_dev() and deploy_hive_acr_cache_and_access()
- Dependencies now captured in template rather than requiring manual ordering
- Remove separate aks-acr-pull-role.json, artifact-cache-credential-set.bicep, artifact-cache-rules.bicep

Addresses PR feedback from kimorris27
- Add HIVE_ACR_NAME env var with default arolocaldev${LOCATION}
- Avoids redefining ACR name in multiple functions

Addresses feedback from kimorris27
Reference team wiki instead of specific engineers for credentials

Addresses feedback from kimorris27
Copy link
Contributor

@kimorris27 kimorris27 left a comment

Choose a reason for hiding this comment

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

The code changes look good! It's just missing the documentation update now.

It'd also be good to see it deployed and working in at least one of the three regional shared dev environments before merge.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants