Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions bootstrap/fleets/rainbow-cutover/clusters/dev.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
apiVersion: deployments.plural.sh/v1alpha1
kind: ServiceDeployment
metadata:
name: clusters-rainbow-cutover-dev
spec:

namespace: fleets
git:
folder: fleets/clusters/rainbow-cutover/dev
ref: main
configuration:
kubernetesVersion: "1.32" # version
nextKubernetesVersion: "1.32" # version
repositoryRef:
kind: GitRepository
name: fleet
namespace: fleets
clusterRef:
kind: Cluster
name: mgmt
namespace: infra
21 changes: 21 additions & 0 deletions bootstrap/fleets/rainbow-cutover/clusters/prod.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
apiVersion: deployments.plural.sh/v1alpha1
kind: ServiceDeployment
metadata:
name: clusters-rainbow-cutover-prod
spec:

namespace: fleets
git:
folder: fleets/clusters/rainbow-cutover/prod
ref: main
configuration:
kubernetesVersion: "1.32" # version
nextKubernetesVersion: "1.32" # version
repositoryRef:
kind: GitRepository
name: fleet
namespace: fleets
clusterRef:
kind: Cluster
name: mgmt
namespace: infra
52 changes: 52 additions & 0 deletions bootstrap/fleets/rainbow-cutover/pipeline.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
apiVersion: deployments.plural.sh/v1alpha1
kind: Pipeline
metadata:
name: rainbow-cutover-fleet-upgrade
spec:
stages:
- name: dev-taint
services:
- serviceRef:
name: clusters-rainbow-cutover-dev
namespace: fleets
criteria:
prAutomationRef:
name: fleet-taint-pr
namespace: fleets
- name: dev-upgrade
services:
- serviceRef:
name: clusters-rainbow-cutover-dev
namespace: fleets
criteria:
prAutomationRef:
name: fleet-upgrader-pra
namespace: fleets
- name: prod-taint
services:
- serviceRef:
name: clusters-rainbow-cutover-prod
namespace: fleets
criteria:
prAutomationRef:
name: fleet-taint-pr
namespace: fleets
- name: prod-upgrade
services:
- serviceRef:
name: clusters-rainbow-cutover-prod
namespace: fleets
criteria:
prAutomationRef:
name: fleet-upgrader-pra
namespace: fleets
edges:
- from: dev-taint
to: dev-upgrade
- from: dev-upgrade
to: prod-taint
gates:
- name: approval-gate
type: APPROVAL
- from: prod-taint
to: prod-upgrade
18 changes: 18 additions & 0 deletions bootstrap/fleets/rainbow-cutover/setup.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
apiVersion: deployments.plural.sh/v1alpha1
kind: ServiceDeployment
metadata:
name: rainbow-cutover
spec:

namespace: rainbow-cutover
git:
folder: fleets/rainbow-cutover
ref: main
repositoryRef:
kind: GitRepository
name: fleet
namespace: fleets
clusterRef:
kind: Cluster
name: mgmt
namespace: infra
38 changes: 38 additions & 0 deletions bootstrap/projects/rainbow-cutover.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
apiVersion: v1
kind: Namespace
metadata:
name: rainbow-cutover
---
apiVersion: deployments.plural.sh/v1alpha1
kind: ServiceAccount
metadata:
name: rainbow-cutover
spec:
email: rainbow-cutover-sa@plural.sh
tokenSecretRef:
name: rainbow-cutover-sa-token
namespace: rainbow-cutover
---
apiVersion: deployments.plural.sh/v1alpha1
kind: Project
metadata:
name: rainbow-cutover
# annotations:
# config.kubernetes.io/depends-on: deployments.plural.sh/ServiceAccount/rainbow-cutover
spec:
name: rainbow-cutover
description: Resources for managing the rainbow-cutover fleet
bindings:
write:
- userEmail: rainbow-cutover-sa@plural.sh
---
apiVersion: deployments.plural.sh/v1alpha1
kind: NamespaceCredentials
metadata:
name: rainbow-cutover
spec:
namespaces:
- rainbow-cutover
secretRef:
name: rainbow-cutover-sa-token
namespace: rainbow-cutover
19 changes: 19 additions & 0 deletions fleets/clusters/rainbow-cutover/dev/drainer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
apiVersion: deployments.plural.sh/v1alpha1
kind: GlobalService
metadata:
name: rainbow-cutover-dev-drainer
spec:
projectRef:
name: rainbow-cutover
tags:
tier: dev
template:
name: drainer
namespace: plrl-deploy-operator
git:
folder: services/drainer
ref: main
repositoryRef:
kind: GitRepository
name: fleet
namespace: fleets
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
apiVersion: deployments.plural.sh/v1alpha1
kind: InfrastructureStack
metadata:
name: rainbow-cutover-cluster-dev
spec:
name: rainbow-cutover-cluster-dev
type: TERRAFORM
approval: true
detach: false
manageState: true
actor: rainbow-cutover-sa@plural.sh
projectRef:
name: rainbow-cutover
configuration:
version: 1.8.2
aiApproval:
enabled: true
file: stack.md
ignoreCancel: true
git:
ref: main
folder: rules
repositoryRef:
name: fleet
namespace: fleets
clusterRef:
name: mgmt
namespace: infra
git:
ref: main
folder: terraform/eks-cluster
files:
- mountPath: /plural
secretRef:
name: gcp-creds
variables:
kubernetes_version: "{{ configuration.kubernetesVersion }}"
next_kubernetes_version: "{{ configuration.nextKubernetesVersion }}"
cluster: rainbow-cutover-dev
tier: dev
fleet: rainbow-cutover
environment:
- name: GOOGLE_APPLICATION_CREDENTIALS
value: /plural/creds.json
19 changes: 19 additions & 0 deletions fleets/clusters/rainbow-cutover/prod/drainer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
apiVersion: deployments.plural.sh/v1alpha1
kind: GlobalService
metadata:
name: rainbow-cutover-prod-drainer
spec:
projectRef:
name: rainbow-cutover
tags:
tier: prod
template:
name: drainer
namespace: plrl-deploy-operator
git:
folder: services/drainer
ref: main
repositoryRef:
kind: GitRepository
name: fleet
namespace: fleets
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
apiVersion: deployments.plural.sh/v1alpha1
kind: InfrastructureStack
metadata:
name: rainbow-cutover-cluster-prod
spec:
name: rainbow-cutover-cluster-prod
type: TERRAFORM
approval: true
detach: false
manageState: true
actor: rainbow-cutover-sa@plural.sh
projectRef:
name: rainbow-cutover
configuration:
version: 1.8.2
repositoryRef:
name: fleet
namespace: fleets
clusterRef:
name: mgmt
namespace: infra
git:
ref: main
folder: terraform/eks-cluster
files:
- mountPath: /plural
secretRef:
name: gcp-creds
variables:
kubernetes_version: "{{ configuration.kubernetesVersion }}"
next_kubernetes_version: "{{ configuration.nextKubernetesVersion }}"
cluster: rainbow-cutover-prod
tier: prod
fleet: rainbow-cutover
environment:
- name: GOOGLE_APPLICATION_CREDENTIALS
value: /plural/creds.json
9 changes: 9 additions & 0 deletions fleets/rainbow-cutover/clusters/dev.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
apiVersion: deployments.plural.sh/v1alpha1
kind: Cluster
metadata:
name: rainbow-cutover-dev
spec:
handle: rainbow-cutover-dev
tags:
tier: dev
fleet: rainbow-cutover
9 changes: 9 additions & 0 deletions fleets/rainbow-cutover/clusters/prod.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
apiVersion: deployments.plural.sh/v1alpha1
kind: Cluster
metadata:
name: rainbow-cutover-prod
spec:
handle: rainbow-cutover-prod
tags:
tier: prod
fleet: rainbow-cutover
30 changes: 30 additions & 0 deletions fleets/rainbow-cutover/kube-state-metrics/dev.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
apiVersion: deployments.plural.sh/v1alpha1
kind: ServiceDeployment
metadata:
name: kube-state-metrics-dev
spec:
name: kube-state-metrics
namespace: kube-state-metrics
helm:
chart: kube-state-metrics
version: 5.19.0 # VERSION
url: https://prometheus-community.github.io/helm-charts
clusterRef:
kind: Cluster
name: rainbow-cutover-dev
namespace: rainbow-cutover
---
apiVersion: deployments.plural.sh/v1alpha1
kind: GlobalService
metadata:
name: kube-state-metrics-dev-rainbow-cutover
spec:
cascade:
delete: true
serviceRef:
name: kube-state-metrics-dev
namespace: rainbow-cutover
projectRef:
name: rainbow-cutover
tags:
tier: dev
30 changes: 30 additions & 0 deletions fleets/rainbow-cutover/kube-state-metrics/pipeline.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
apiVersion: deployments.plural.sh/v1alpha1
kind: Pipeline
metadata:
name: rainbow-cutover-kube-state-metrics
spec:
projectRef:
name: rainbow-cutover
stages:
- name: dev
services:
- serviceRef:
name: kube-state-metrics-dev
namespace: rainbow-cutover
criteria:
prAutomationRef:
name: rainbow-cutover-pra
- name: prod
services:
- serviceRef:
name: kube-state-metrics-prod
namespace: rainbow-cutover
criteria:
prAutomationRef:
name: rainbow-cutover-pra
edges:
- from: dev
to: prod
gates:
- name: approval-gate
type: APPROVAL
Loading