Skip to content
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

production deployment should be gitops #76

Closed
BenTheElder opened this issue May 31, 2022 · 11 comments
Closed

production deployment should be gitops #76

BenTheElder opened this issue May 31, 2022 · 11 comments
Assignees
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/k8s-infra Categorizes an issue or PR as relevant to SIG K8s Infra.

Comments

@BenTheElder
Copy link
Member

We auto deploy the registry-sandbox instance, and everything for that is configured either in k8s.io terraform, or in the make rule backing make deploy / the cloudbuild.yml for this repo.

The production configuration currently seems to only be partially source controlled, the production (registry.k8s.io) cloud run deployment appears to still be manually submitted by @ameukam

Now that kubernetes has migrated, we really ought to fix this kubernetes/kubernetes#109938 (comment)

@ameukam
Copy link
Member

ameukam commented Jun 1, 2022

/assign
/sig k8s-infra
/priority important-soon
/milestone v1.25
/area artifacts

@k8s-ci-robot k8s-ci-robot added the sig/k8s-infra Categorizes an issue or PR as relevant to SIG K8s Infra. label Jun 1, 2022
@k8s-ci-robot
Copy link
Contributor

@ameukam: The label(s) area/artifacts cannot be applied, because the repository doesn't have them.

In response to this:

/assign
/sig k8s-infra
/priority important-soon
/milestone v1.25
/area artifacts

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@k8s-ci-robot k8s-ci-robot added the priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. label Jun 1, 2022
@ameukam ameukam added this to the v1.25 milestone Jun 1, 2022
@ameukam ameukam moved this from Backlog to Implementation TODO in registry.k8s.io (SIG K8S Infra) Jun 1, 2022
@BenTheElder
Copy link
Member Author

in addition: staging should match production as closely as possible, except for the image revision, and toggling environment variable overrides for gating new functionality

we have a limited / false sense of performance when the regions don't match because then we're talking to much more distant AWS regions https://kubernetes.slack.com/archives/CCK68P2Q2/p1659742065287909

@BenTheElder
Copy link
Member Author

rough outline:

  • add a service account with permission to deploy this
  • setup a GCB postsubmit on k8s.io repo to do terraform apply of oci-proxy-prod

@riaankleinhans riaankleinhans moved this from Breakdown TODO to Backlog in registry.k8s.io (SIG K8S Infra) Jan 4, 2023
@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 Jan 8, 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

@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 Feb 8, 2023
@ameukam
Copy link
Member

ameukam commented Feb 8, 2023

/remove-lifecycle rotten
/milestone clear
/lifecycle frozen

@k8s-ci-robot k8s-ci-robot added lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. and removed lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. labels Feb 8, 2023
@ameukam ameukam added the help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. label Feb 8, 2023
@ameukam ameukam removed this from the v1.25 milestone Feb 8, 2023
@BenTheElder BenTheElder changed the title production deployment details should be source-controlled production deployment should be gitops Feb 9, 2023
@BenTheElder
Copy link
Member Author

we are deploying from terraform in git for production, but manually.

also, we have skew in that the sandbox instance does not use the production config or terraform.

I'd like us to start by getting the sandbox instance to be the production deployment configs w/ some variable overrides passed in, and then look at automating deploying to prod once that's working.

@BenTheElder
Copy link
Member Author

Small change towards this in kubernetes/k8s.io#4922

@BenTheElder BenTheElder removed the help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. label Mar 15, 2023
@BenTheElder BenTheElder assigned BenTheElder and unassigned ameukam Mar 15, 2023
@BenTheElder
Copy link
Member Author

Will not implement this until after #181

@BenTheElder
Copy link
Member Author

The prod deployment is totally checked in, however we're still requiring humans to roll it out and be ready to quickly revert.

That's fine, the same people we'd have approve changes have access to rollout.

Importantly: staging is completely automated and leads any production rollouts, which will reflect staging when we're comfortable.

Everything is in git now, other than staging automatically updating to the latest image just pushed when deploying.

@github-project-automation github-project-automation bot moved this from Backlog to Reporting, Audit & Logging in registry.k8s.io (SIG K8S Infra) Apr 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/k8s-infra Categorizes an issue or PR as relevant to SIG K8s Infra.
Projects
Status: Reporting, Audit & Logging
Development

No branches or pull requests

4 participants