Skip to content

Start Publishing Staging Images to Artifact Registry #3961

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
upodroid opened this issue Jul 12, 2022 · 24 comments · Fixed by #6905
Open

Start Publishing Staging Images to Artifact Registry #3961

upodroid opened this issue Jul 12, 2022 · 24 comments · Fixed by #6905
Assignees
Labels
area/artifacts Issues or PRs related to the hosting of release artifacts for subprojects area/release-eng Issues or PRs related to the Release Engineering subproject priority/backlog Higher priority than priority/awaiting-more-evidence. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. sig/k8s-infra Categorizes an issue or PR as relevant to SIG K8s Infra. sig/testing Categorizes an issue or PR as relevant to SIG Testing.
Milestone

Comments

@upodroid
Copy link
Member

upodroid commented Jul 12, 2022

Part of: #1343

Notes: https://gist.github.com/upodroid/a33723a7e1abc5e9c6fabc6b07e7aac0

When images are built after a PR is merged, they need to be pushed to Artifact Registry(AR).

Unlike Google Container Registry(GCR), you don't need a separate GCP project per staging project. The permission boundary is at the repository level instead of the project. This allows multiple registries to be created per project. Therefore, we will create a new project, start publishing images to it and delete the other projects after the transition.

We will need to do the following:
- create a new GCP project (k8s-artifacts-staging)
- create a docker image repository per project
- modify the jobs to push images to prow.
- Provision the infra with terraform. There is a separate issue open to deploy changes to terraform via Prow on merges.

Prod changes need to be done via the shell scripts which makes deploying staging via terraform kind of pointless.

Open questions:

  • Do we need to backfill the staging repository via gcrane?

@puerco

/area artifacts
/priority important-soon
/area release-eng

@upodroid upodroid added the sig/k8s-infra Categorizes an issue or PR as relevant to SIG K8s Infra. label Jul 12, 2022
@k8s-ci-robot k8s-ci-robot added area/artifacts Issues or PRs related to the hosting of release artifacts for subprojects priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. area/release-eng Issues or PRs related to the Release Engineering subproject labels Jul 12, 2022
@upodroid
Copy link
Member Author

After #3968 is merged, we need to do a few things:

  • repos that use ko to build images(k-sigs/bom,etc), modify KO_DOCKER_REPO variable to us-docker.pkg.dev/k8s-staging-bom/images/bom as an example
  • Modify image-builder to tweak the cloudbuild.yaml file

Bit unsure about other things.

@upodroid
Copy link
Member Author

Spoke about this at the sig-testing meeting. Will push it out to the future when GCR deprecation is actually announced by Google.

May want to standardize on Aritfact Registry eventually, but would require tracking down a number of staging registries and changing team push processes (with unclear payoff right now)

/priority backlog
/sig testing

@k8s-ci-robot k8s-ci-robot added priority/backlog Higher priority than priority/awaiting-more-evidence. sig/testing Categorizes an issue or PR as relevant to SIG Testing. labels Jul 26, 2022
@riaankleinhans riaankleinhans moved this to Implementation TODO in registry.k8s.io (SIG K8S Infra) Jul 26, 2022
@ameukam ameukam removed the priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. label Aug 1, 2022
@ameukam
Copy link
Member

ameukam commented Aug 25, 2022

/milestone v1.26

@k8s-ci-robot k8s-ci-robot added this to the v1.26 milestone Aug 25, 2022
@riaankleinhans riaankleinhans moved this from Implementation TODO to Breakdown TODO in registry.k8s.io (SIG K8S Infra) Sep 15, 2022
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue or PR as fresh with /remove-lifecycle stale
  • Mark this issue or PR as rotten with /lifecycle rotten
  • Close this issue or PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Nov 23, 2022
@ameukam
Copy link
Member

ameukam commented Dec 21, 2022

/remove-lifecycle stale
/milestone v1.27
/priority important-longterm

@k8s-ci-robot k8s-ci-robot added priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Dec 21, 2022
@k8s-ci-robot k8s-ci-robot modified the milestones: v1.26, v1.27 Dec 21, 2022
@riaankleinhans riaankleinhans moved this from Backlog to artifact.k8s.io in registry.k8s.io (SIG K8S Infra) Jan 8, 2023
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Mar 21, 2023
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle rotten
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle rotten

@dims
Copy link
Member

dims commented Jun 17, 2024

Need to go back and create etcd-manager staging bucket in #6897

slack conversation : https://kubernetes.slack.com/archives/CCK68P2Q2/p1718654806739639

@dims dims removed the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Jun 17, 2024
@github-project-automation github-project-automation bot moved this to Reporting, Audit & Logging in registry.k8s.io (SIG K8S Infra) Jun 18, 2024
@ameukam ameukam reopened this Jun 24, 2024
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Sep 22, 2024
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle rotten
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle rotten

@k8s-ci-robot k8s-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Oct 22, 2024
@ameukam
Copy link
Member

ameukam commented Oct 23, 2024

/remove-lifecycle rotten

@k8s-ci-robot k8s-ci-robot removed the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Oct 23, 2024
@ameukam
Copy link
Member

ameukam commented Dec 18, 2024

/milestone v1.33

@k8s-ci-robot k8s-ci-robot added this to the v1.33 milestone Dec 18, 2024
@BenTheElder
Copy link
Member

(Some projects are on AR, but not all, thanks to @upodroid)

@ameukam
Copy link
Member

ameukam commented Feb 12, 2025

@upodroid
Copy link
Member Author

Quick update, I'm on track to finish the ACTIVE projects by the deadline by Google(18th of March)

Outstanding projects:

# some of these have been moved to k8s-staging-images AR instances such as #7824
 mahamed  Mahameds-MacBook-Pro  ~  1  USAGE  $  gcloud container images list-gcr-usage     --folder=713040427754 --filter="usage=ACTIVE"
---
repository: gcr.io/k8s-staging-lws
usage: ACTIVE
---
repository: gcr.io/k8s-staging-jobset
usage: ACTIVE
---
repository: gcr.io/k8s-staging-provider-os
usage: ACTIVE
---
repository: gcr.io/k8s-staging-tejolote
usage: ACTIVE
---
repository: gcr.io/k8s-staging-zeitgeist
usage: ACTIVE
---
repository: gcr.io/k8s-staging-kmm
usage: ACTIVE
---
repository: gcr.io/k8s-staging-kwok
usage: ACTIVE
---
repository: gcr.io/k8s-staging-win-op-rdnss
usage: ACTIVE
---
repository: gcr.io/k8s-staging-kueue
usage: ACTIVE
---
repository: gcr.io/k8s-staging-gmsa-webhook
usage: ACTIVE
---
repository: gcr.io/k8s-staging-sched-simulator
usage: ACTIVE
---
repository: gcr.io/k8s-staging-prometheus-adapter
usage: ACTIVE
---
repository: gcr.io/k8s-staging-gateway-api
usage: ACTIVE
---
repository: gcr.io/k8s-staging-releng-test
usage: ACTIVE
---
repository: gcr.io/k8s-staging-kustomize
usage: ACTIVE
---
repository: gcr.io/k8s-staging-networking
usage: ACTIVE
---
repository: gcr.io/k8s-staging-sp-operator
usage: ACTIVE
---
repository: gcr.io/k8s-staging-sig-docs
usage: ACTIVE
---
repository: gcr.io/k8s-staging-scheduler-plugins
usage: ACTIVE
---
repository: gcr.io/k8s-staging-git-sync
usage: ACTIVE
---
repository: gcr.io/k8s-staging-sig-storage
usage: ACTIVE
---
repository: gcr.io/k8s-staging-ingressconformance
usage: ACTIVE
---
repository: gcr.io/k8s-staging-ingress-nginx
usage: ACTIVE
---
repository: gcr.io/k8s-staging-provider-aws
usage: ACTIVE
---
repository: gcr.io/k8s-staging-kube-state-metrics
usage: ACTIVE
---
repository: gcr.io/k8s-staging-slack-infra
usage: ACTIVE
---
repository: gcr.io/k8s-staging-kubernetes
usage: ACTIVE
---
repository: gcr.io/k8s-staging-scl-image-builder
usage: ACTIVE
---
repository: gcr.io/k8s-staging-nfd
usage: ACTIVE
---
repository: gcr.io/k8s-staging-npd
usage: ACTIVE
---
repository: gcr.io/k8s-staging-external-dns
usage: ACTIVE
---
repository: gcr.io/k8s-staging-provider-azure
usage: ACTIVE
---
repository: gcr.io/k8s-staging-kas-network-proxy
usage: ACTIVE
---
repository: gcr.io/k8s-staging-multitenancy
usage: ACTIVE
---
repository: gcr.io/k8s-staging-publishing-bot
usage: ACTIVE

Successfully Migrated Projects Projects:

 mahamed  Mahameds-MacBook-Pro  ~  1  $  gcloud container images list-gcr-usage     --folder=713040427754 --filter="usage=REDIRECTED"
---
repository: gcr.io/k8s-staging-cloud-pv-vsphere
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-capi-ipam-ic
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cloud-pv-labeler
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cluster-api-helm
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-capi-operator
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-capi-cloudstack
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-bom
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cloud-provider-ibm
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-capi-ibmcloud
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cluster-api-nested
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-test-infra
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cri-tools
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-ci-images
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-addon-manager
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cluster-addons
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cloud-provider-gcp
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-boskos
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-infra-tools
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cpa
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-etcd
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-csi-secrets-store
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-dns
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cluster-api-do
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-autoscaling
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-capi-vsphere
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-apisnoop
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-e2e-test-images
usage: REDIRECTED
---
repository: asia.gcr.io/k8s-staging-cip-test
usage: REDIRECTED
---
repository: eu.gcr.io/k8s-staging-cip-test
usage: REDIRECTED
---
repository: us.gcr.io/k8s-staging-cip-test
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cluster-api-azure
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cluster-api-gcp
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-capi-docker
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-capi-openstack
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-artifact-promoter
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-capi-kubeadm
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-descheduler
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-build-image
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cluster-api-aws
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cip-test
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-coredns
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-csi
usage: REDIRECTED
---
repository: gcr.io/k8s-staging-cluster-api
usage: REDIRECTED

Projects with inactive GCR usage. They will be migrated in late March after the ACTIVE projects are done.

 mahamed  Mahameds-MacBook-Pro  ~  1  $  gcloud container images list-gcr-usage     --folder=713040427754 --filter="usage=INACTIVE"
---
repository: gcr.io/k8s-staging-wasm-scheduler
usage: INACTIVE
---
repository: gcr.io/k8s-staging-kubebuilder
usage: INACTIVE
---
repository: gcr.io/k8s-staging-win-svc-proxy
usage: INACTIVE
---
repository: gcr.io/k8s-staging-tg-exporter
usage: INACTIVE
---
repository: gcr.io/k8s-staging-krm-functions
usage: INACTIVE
---
repository: gcr.io/k8s-staging-sig-auth
usage: INACTIVE
---
repository: gcr.io/k8s-staging-kubetest2
usage: INACTIVE
---
repository: gcr.io/k8s-staging-provider-openstack
usage: INACTIVE
---
repository: gcr.io/k8s-staging-experimental
usage: INACTIVE
---
repository: gcr.io/k8s-staging-examples
usage: INACTIVE
---
repository: gcr.io/k8s-staging-storage-migrator
usage: INACTIVE
---
repository: gcr.io/k8s-staging-etcdadm
usage: INACTIVE
---
repository: gcr.io/k8s-staging-k8s-gsm-tools
usage: INACTIVE
---
repository: gcr.io/k8s-staging-kubeadm
usage: INACTIVE

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/artifacts Issues or PRs related to the hosting of release artifacts for subprojects area/release-eng Issues or PRs related to the Release Engineering subproject priority/backlog Higher priority than priority/awaiting-more-evidence. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. sig/k8s-infra Categorizes an issue or PR as relevant to SIG K8s Infra. sig/testing Categorizes an issue or PR as relevant to SIG Testing.
Projects
Status: Reporting, Audit & Logging
Development

Successfully merging a pull request may close this issue.

6 participants