From 784c1385f3bec1bacdc1ef80e223a33476696ed0 Mon Sep 17 00:00:00 2001 From: Alex Collins Date: Thu, 21 May 2020 10:36:23 -0700 Subject: [PATCH] build: Use goreman for starting locally. (#3074) --- .circleci/config.yml | 8 +-- Makefile | 56 +++++++----------- Procfile | 2 + manifests/quick-start-mysql.yaml | 58 +++++++++++++++++++ manifests/quick-start-no-db.yaml | 52 +++++++++++++++++ manifests/quick-start-postgres.yaml | 58 +++++++++++++++++++ .../quick-start/mysql/kustomization.yaml | 3 + .../quick-start/no-db/kustomization.yaml | 3 + .../quick-start/postgres/kustomization.yaml | 3 + 9 files changed, 204 insertions(+), 39 deletions(-) create mode 100644 Procfile diff --git a/.circleci/config.yml b/.circleci/config.yml index 2ff911affcfd..12682f34d5ed 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -56,16 +56,16 @@ commands: - checkout - maybe_skip_job - install_kustomize - - run: - name: Preemptively pull images - command: make pull-build-images test-images - background: true - run: name: Install and start K3S v1.0.1 command: curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=v1.0.1 INSTALL_K3S_EXEC=--docker K3S_KUBECONFIG_MODE=644 sh - background: true - restore_go_cache - install_golang + - run: + name: Preemptively pull images + command: make pull-build-images test-images + background: true - restore_go_mod - run: go mod download - run: diff --git a/Makefile b/Makefile index 42ae3cbc0b94..71396fe60a19 100644 --- a/Makefile +++ b/Makefile @@ -72,9 +72,12 @@ STATIC_BUILD ?= true CI ?= false DB ?= postgres K3D := $(shell if [ "`which kubectl`" != '' ] && [ "`kubectl config current-context`" = "k3s-default" ]; then echo true; else echo false; fi) -# which components to start, useful if you want to disable them to debug -COMPONENTS := controller,argo-server LOG_LEVEL := debug +ALWAYS_OFFLOAD_NODE_STATUS := true + +ifeq ($(DB),no-db) +ALWAYS_OFFLOAD_NODE_STATUS := false +endif ifeq ($(CI),true) TEST_OPTS := -coverprofile=coverage.out @@ -125,6 +128,10 @@ define docker_build if [ $(K3D) = true ]; then k3d import-images $(IMAGE_NAMESPACE)/$(1):$(VERSION); fi touch $(3) endef +define docker_pull + docker pull $(1) + if [ $(K3D) = true ]; then k3d import-images $(1); fi +endef .PHONY: build build: status clis executor-image controller-image manifests/install.yaml manifests/namespace-install.yaml manifests/quick-start-postgres.yaml manifests/quick-start-mysql.yaml @@ -310,32 +317,17 @@ $(VERSION_FILE): @mkdir -p dist touch $(VERSION_FILE) -dist/postgres.yaml: $(MANIFESTS) $(E2E_MANIFESTS) $(VERSION_FILE) - kustomize build --load_restrictor=none test/e2e/manifests/postgres | sed 's/:$(MANIFESTS_VERSION)/:$(VERSION)/' | sed 's/pns/$(E2E_EXECUTOR)/' > dist/postgres.yaml - -dist/no-db.yaml: $(MANIFESTS) $(E2E_MANIFESTS) $(VERSION_FILE) +dist/$(DB).yaml: $(MANIFESTS) $(E2E_MANIFESTS) $(VERSION_FILE) # We additionally disable ALWAYS_OFFLOAD_NODE_STATUS - kustomize build --load_restrictor=none test/e2e/manifests/no-db | sed 's/:$(MANIFESTS_VERSION)/:$(VERSION)/' | sed 's/pns/$(E2E_EXECUTOR)/' | sed 's/"true"/"false"/' > dist/no-db.yaml - -dist/mysql.yaml: $(MANIFESTS) $(E2E_MANIFESTS) $(VERSION_FILE) - kustomize build --load_restrictor=none test/e2e/manifests/mysql | sed 's/:$(MANIFESTS_VERSION)/:$(VERSION)/' | sed 's/pns/$(E2E_EXECUTOR)/' > dist/mysql.yaml + kustomize build --load_restrictor=none test/e2e/manifests/$(DB) | sed 's/:$(MANIFESTS_VERSION)/:$(VERSION)/' | sed 's/pns/$(E2E_EXECUTOR)/' > dist/$(DB).yaml .PHONY: install -install: dist/postgres.yaml dist/mysql.yaml dist/no-db.yaml +install: dist/$(DB).yaml ifeq ($(K3D),true) k3d start endif - # Install quick-start kubectl apply -f test/e2e/manifests/argo-ns.yaml -ifeq ($(DB),postgres) - kubectl -n argo apply -f dist/postgres.yaml -else -ifeq ($(DB),mysql) - kubectl -n argo apply -f dist/mysql.yaml -else - kubectl -n argo apply -f dist/no-db.yaml -endif -endif + kubectl -n argo apply -l app.kubernetes.io/part-of=argo --prune --force -f dist/$(DB).yaml .PHONY: pull-build-images pull-build-images: @@ -354,16 +346,19 @@ test/e2e/images/argosay/v2/argosay: $(shell find test/e2e/images/argosay/v2/main .PHONY: test-images test-images: - docker pull argoproj/argosay:v1 - docker pull argoproj/argosay:v2 - docker pull python:alpine3.6 + $(call docker_pull,argoproj/argosay:v1) + $(call docker_pull,argoproj/argosay:v2) + $(call docker_pull,python:alpine3.6) .PHONY: stop stop: killall argo workflow-controller pf.sh kubectl || true +$(GOPATH)/bin/goreman: + go get github.com/mattn/goreman + .PHONY: start-aux -start-aux: +start-aux: $(GOPATH)/bin/goreman kubectl config set-context --current --namespace=argo kubectl -n argo wait --for=condition=Ready pod --all -l app --timeout 2m ./hack/port-forward.sh @@ -371,26 +366,17 @@ start-aux: grep '127.0.0.1 *minio' /etc/hosts grep '127.0.0.1 *postgres' /etc/hosts grep '127.0.0.1 *mysql' /etc/hosts -ifneq ($(findstring controller,$(COMPONENTS)),) - ALWAYS_OFFLOAD_NODE_STATUS=true OFFLOAD_NODE_STATUS_TTL=30s WORKFLOW_GC_PERIOD=30s UPPERIO_DB_DEBUG=1 ARCHIVED_WORKFLOW_GC_PERIOD=30s ./dist/workflow-controller --executor-image argoproj/argoexec:$(VERSION) --namespaced --loglevel $(LOG_LEVEL) & -endif -ifneq ($(findstring argo-server,$(COMPONENTS)),) - UPPERIO_DB_DEBUG=1 ./dist/argo --loglevel $(LOG_LEVEL) server --namespaced --auth-mode client --secure & -endif + env ALWAYS_OFFLOAD_NODE_STATUS=$(ALWAYS_OFFLOAD_NODE_STATUS) LOG_LEVEL=$(LOG_LEVEL) VERSION=$(VERSION) goreman -set-ports=false -logtime=false start .PHONY: start start: status stop install controller cli executor-image start-aux wait env .PHONY: wait wait: -ifneq ($(findstring controller,$(COMPONENTS)),) # Wait for workflow controller until lsof -i :9090 > /dev/null ; do sleep 10s ; done -endif -ifneq ($(findstring argo-server,$(COMPONENTS)),) # Wait for Argo Server until lsof -i :2746 > /dev/null ; do sleep 10s ; done -endif define print_env export ARGO_SERVER=localhost:2746 diff --git a/Procfile b/Procfile new file mode 100644 index 000000000000..70dbab8d5603 --- /dev/null +++ b/Procfile @@ -0,0 +1,2 @@ +controller: ALWAYS_OFFLOAD_NODE_STATUS=${ALWAYS_OFFLOAD_NODE_STATUS} OFFLOAD_NODE_STATUS_TTL=30s WORKFLOW_GC_PERIOD=30s UPPERIO_DB_DEBUG=1 ARCHIVED_WORKFLOW_GC_PERIOD=30s ./dist/workflow-controller --executor-image argoproj/argoexec:${VERSION} --namespaced --loglevel ${LOG_LEVEL} +argo-server: UPPERIO_DB_DEBUG=1 ./dist/argo --loglevel ${LOG_LEVEL} server --namespaced --auth-mode client --secure diff --git a/manifests/quick-start-mysql.yaml b/manifests/quick-start-mysql.yaml index d675f4a9ba0f..8d17a93efa3f 100644 --- a/manifests/quick-start-mysql.yaml +++ b/manifests/quick-start-mysql.yaml @@ -2,6 +2,8 @@ apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: + labels: + app.kubernetes.io/part-of: argo name: clusterworkflowtemplates.argoproj.io spec: group: argoproj.io @@ -17,6 +19,8 @@ spec: apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: + labels: + app.kubernetes.io/part-of: argo name: cronworkflows.argoproj.io spec: group: argoproj.io @@ -32,6 +36,8 @@ spec: apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: + labels: + app.kubernetes.io/part-of: argo name: workflows.argoproj.io spec: additionalPrinterColumns: @@ -56,6 +62,8 @@ spec: apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: + labels: + app.kubernetes.io/part-of: argo name: workflowtemplates.argoproj.io spec: group: argoproj.io @@ -70,16 +78,22 @@ spec: apiVersion: v1 kind: ServiceAccount metadata: + labels: + app.kubernetes.io/part-of: argo name: argo --- apiVersion: v1 kind: ServiceAccount metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server --- apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-role rules: - apiGroups: @@ -175,6 +189,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server-role rules: - apiGroups: @@ -226,6 +242,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-role rules: - apiGroups: @@ -247,6 +265,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-clusterworkflowtemplate-role rules: - apiGroups: @@ -262,6 +282,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server-clusterworkflowtemplate-role rules: - apiGroups: @@ -280,6 +302,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -292,6 +316,8 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -304,6 +330,8 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-default-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -316,6 +344,8 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-clusterworkflowtemplate-role-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -329,6 +359,8 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server-clusterworkflowtemplate-role-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -386,6 +418,8 @@ data: key: password kind: ConfigMap metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-controller-configmap --- apiVersion: v1 @@ -393,6 +427,7 @@ kind: Secret metadata: labels: app: mysql + app.kubernetes.io/part-of: argo name: argo-mysql-config stringData: password: password @@ -404,6 +439,7 @@ kind: Secret metadata: labels: app: minio + app.kubernetes.io/part-of: argo name: my-minio-cred stringData: accesskey: admin @@ -413,6 +449,8 @@ type: Opaque apiVersion: v1 kind: Service metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server spec: ports: @@ -421,12 +459,14 @@ spec: targetPort: 2746 selector: app: argo-server + app.kubernetes.io/part-of: argo --- apiVersion: v1 kind: Service metadata: labels: app: minio + app.kubernetes.io/part-of: argo name: minio spec: ports: @@ -435,12 +475,14 @@ spec: targetPort: 9000 selector: app: minio + app.kubernetes.io/part-of: argo --- apiVersion: v1 kind: Service metadata: labels: app: mysql + app.kubernetes.io/part-of: argo name: mysql spec: ports: @@ -449,10 +491,13 @@ spec: targetPort: 3306 selector: app: mysql + app.kubernetes.io/part-of: argo --- apiVersion: v1 kind: Service metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-controller-metrics spec: ports: @@ -462,19 +507,24 @@ spec: targetPort: 9090 selector: app: workflow-controller + app.kubernetes.io/part-of: argo --- apiVersion: apps/v1 kind: Deployment metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server spec: selector: matchLabels: app: argo-server + app.kubernetes.io/part-of: argo template: metadata: labels: app: argo-server + app.kubernetes.io/part-of: argo spec: containers: - args: @@ -501,15 +551,18 @@ kind: Deployment metadata: labels: app: mysql + app.kubernetes.io/part-of: argo name: mysql spec: selector: matchLabels: app: mysql + app.kubernetes.io/part-of: argo template: metadata: labels: app: mysql + app.kubernetes.io/part-of: argo name: mysql spec: containers: @@ -544,15 +597,19 @@ spec: apiVersion: apps/v1 kind: Deployment metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-controller spec: selector: matchLabels: app: workflow-controller + app.kubernetes.io/part-of: argo template: metadata: labels: app: workflow-controller + app.kubernetes.io/part-of: argo spec: containers: - args: @@ -574,6 +631,7 @@ kind: Pod metadata: labels: app: minio + app.kubernetes.io/part-of: argo name: minio spec: containers: diff --git a/manifests/quick-start-no-db.yaml b/manifests/quick-start-no-db.yaml index 3d3c0ab5b505..6eb810e3626e 100644 --- a/manifests/quick-start-no-db.yaml +++ b/manifests/quick-start-no-db.yaml @@ -2,6 +2,8 @@ apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: + labels: + app.kubernetes.io/part-of: argo name: clusterworkflowtemplates.argoproj.io spec: group: argoproj.io @@ -17,6 +19,8 @@ spec: apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: + labels: + app.kubernetes.io/part-of: argo name: cronworkflows.argoproj.io spec: group: argoproj.io @@ -32,6 +36,8 @@ spec: apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: + labels: + app.kubernetes.io/part-of: argo name: workflows.argoproj.io spec: additionalPrinterColumns: @@ -56,6 +62,8 @@ spec: apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: + labels: + app.kubernetes.io/part-of: argo name: workflowtemplates.argoproj.io spec: group: argoproj.io @@ -70,16 +78,22 @@ spec: apiVersion: v1 kind: ServiceAccount metadata: + labels: + app.kubernetes.io/part-of: argo name: argo --- apiVersion: v1 kind: ServiceAccount metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server --- apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-role rules: - apiGroups: @@ -175,6 +189,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server-role rules: - apiGroups: @@ -226,6 +242,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-role rules: - apiGroups: @@ -247,6 +265,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-clusterworkflowtemplate-role rules: - apiGroups: @@ -262,6 +282,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server-clusterworkflowtemplate-role rules: - apiGroups: @@ -280,6 +302,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -292,6 +316,8 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -304,6 +330,8 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-default-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -316,6 +344,8 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-clusterworkflowtemplate-role-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -329,6 +359,8 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server-clusterworkflowtemplate-role-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -367,6 +399,8 @@ data: port: 9090 kind: ConfigMap metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-controller-configmap --- apiVersion: v1 @@ -374,6 +408,7 @@ kind: Secret metadata: labels: app: minio + app.kubernetes.io/part-of: argo name: my-minio-cred stringData: accesskey: admin @@ -383,6 +418,8 @@ type: Opaque apiVersion: v1 kind: Service metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server spec: ports: @@ -391,12 +428,14 @@ spec: targetPort: 2746 selector: app: argo-server + app.kubernetes.io/part-of: argo --- apiVersion: v1 kind: Service metadata: labels: app: minio + app.kubernetes.io/part-of: argo name: minio spec: ports: @@ -405,10 +444,13 @@ spec: targetPort: 9000 selector: app: minio + app.kubernetes.io/part-of: argo --- apiVersion: v1 kind: Service metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-controller-metrics spec: ports: @@ -418,19 +460,24 @@ spec: targetPort: 9090 selector: app: workflow-controller + app.kubernetes.io/part-of: argo --- apiVersion: apps/v1 kind: Deployment metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server spec: selector: matchLabels: app: argo-server + app.kubernetes.io/part-of: argo template: metadata: labels: app: argo-server + app.kubernetes.io/part-of: argo spec: containers: - args: @@ -455,15 +502,19 @@ spec: apiVersion: apps/v1 kind: Deployment metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-controller spec: selector: matchLabels: app: workflow-controller + app.kubernetes.io/part-of: argo template: metadata: labels: app: workflow-controller + app.kubernetes.io/part-of: argo spec: containers: - args: @@ -485,6 +536,7 @@ kind: Pod metadata: labels: app: minio + app.kubernetes.io/part-of: argo name: minio spec: containers: diff --git a/manifests/quick-start-postgres.yaml b/manifests/quick-start-postgres.yaml index 58cea8e50db3..fac4194f3828 100644 --- a/manifests/quick-start-postgres.yaml +++ b/manifests/quick-start-postgres.yaml @@ -2,6 +2,8 @@ apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: + labels: + app.kubernetes.io/part-of: argo name: clusterworkflowtemplates.argoproj.io spec: group: argoproj.io @@ -17,6 +19,8 @@ spec: apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: + labels: + app.kubernetes.io/part-of: argo name: cronworkflows.argoproj.io spec: group: argoproj.io @@ -32,6 +36,8 @@ spec: apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: + labels: + app.kubernetes.io/part-of: argo name: workflows.argoproj.io spec: additionalPrinterColumns: @@ -56,6 +62,8 @@ spec: apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: + labels: + app.kubernetes.io/part-of: argo name: workflowtemplates.argoproj.io spec: group: argoproj.io @@ -70,16 +78,22 @@ spec: apiVersion: v1 kind: ServiceAccount metadata: + labels: + app.kubernetes.io/part-of: argo name: argo --- apiVersion: v1 kind: ServiceAccount metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server --- apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-role rules: - apiGroups: @@ -175,6 +189,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server-role rules: - apiGroups: @@ -226,6 +242,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-role rules: - apiGroups: @@ -247,6 +265,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-clusterworkflowtemplate-role rules: - apiGroups: @@ -262,6 +282,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server-clusterworkflowtemplate-role rules: - apiGroups: @@ -280,6 +302,8 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -292,6 +316,8 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -304,6 +330,8 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-default-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -316,6 +344,8 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-clusterworkflowtemplate-role-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -329,6 +359,8 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server-clusterworkflowtemplate-role-binding roleRef: apiGroup: rbac.authorization.k8s.io @@ -386,6 +418,8 @@ data: key: password kind: ConfigMap metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-controller-configmap --- apiVersion: v1 @@ -393,6 +427,7 @@ kind: Secret metadata: labels: app: postgres + app.kubernetes.io/part-of: argo name: argo-postgres-config stringData: password: password @@ -404,6 +439,7 @@ kind: Secret metadata: labels: app: minio + app.kubernetes.io/part-of: argo name: my-minio-cred stringData: accesskey: admin @@ -413,6 +449,8 @@ type: Opaque apiVersion: v1 kind: Service metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server spec: ports: @@ -421,12 +459,14 @@ spec: targetPort: 2746 selector: app: argo-server + app.kubernetes.io/part-of: argo --- apiVersion: v1 kind: Service metadata: labels: app: minio + app.kubernetes.io/part-of: argo name: minio spec: ports: @@ -435,12 +475,14 @@ spec: targetPort: 9000 selector: app: minio + app.kubernetes.io/part-of: argo --- apiVersion: v1 kind: Service metadata: labels: app: postgres + app.kubernetes.io/part-of: argo name: postgres spec: ports: @@ -449,10 +491,13 @@ spec: targetPort: 5432 selector: app: postgres + app.kubernetes.io/part-of: argo --- apiVersion: v1 kind: Service metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-controller-metrics spec: ports: @@ -462,19 +507,24 @@ spec: targetPort: 9090 selector: app: workflow-controller + app.kubernetes.io/part-of: argo --- apiVersion: apps/v1 kind: Deployment metadata: + labels: + app.kubernetes.io/part-of: argo name: argo-server spec: selector: matchLabels: app: argo-server + app.kubernetes.io/part-of: argo template: metadata: labels: app: argo-server + app.kubernetes.io/part-of: argo spec: containers: - args: @@ -501,15 +551,18 @@ kind: Deployment metadata: labels: app: postgres + app.kubernetes.io/part-of: argo name: postgres spec: selector: matchLabels: app: postgres + app.kubernetes.io/part-of: argo template: metadata: labels: app: postgres + app.kubernetes.io/part-of: argo name: postgres spec: containers: @@ -536,15 +589,19 @@ spec: apiVersion: apps/v1 kind: Deployment metadata: + labels: + app.kubernetes.io/part-of: argo name: workflow-controller spec: selector: matchLabels: app: workflow-controller + app.kubernetes.io/part-of: argo template: metadata: labels: app: workflow-controller + app.kubernetes.io/part-of: argo spec: containers: - args: @@ -566,6 +623,7 @@ kind: Pod metadata: labels: app: minio + app.kubernetes.io/part-of: argo name: minio spec: containers: diff --git a/manifests/quick-start/mysql/kustomization.yaml b/manifests/quick-start/mysql/kustomization.yaml index 5c323b7b3d3e..4aa85554e8d7 100644 --- a/manifests/quick-start/mysql/kustomization.yaml +++ b/manifests/quick-start/mysql/kustomization.yaml @@ -4,6 +4,9 @@ kind: Kustomization bases: - ../base +commonLabels: + "app.kubernetes.io/part-of": "argo" + resources: - argo-mysql-config-secret.yaml - mysql-deployment.yaml diff --git a/manifests/quick-start/no-db/kustomization.yaml b/manifests/quick-start/no-db/kustomization.yaml index 55050e0f488e..2e69cbc4fa71 100644 --- a/manifests/quick-start/no-db/kustomization.yaml +++ b/manifests/quick-start/no-db/kustomization.yaml @@ -3,3 +3,6 @@ kind: Kustomization bases: - ../base + +commonLabels: + "app.kubernetes.io/part-of": "argo" \ No newline at end of file diff --git a/manifests/quick-start/postgres/kustomization.yaml b/manifests/quick-start/postgres/kustomization.yaml index 973a10bf033a..c5ff1363d82b 100644 --- a/manifests/quick-start/postgres/kustomization.yaml +++ b/manifests/quick-start/postgres/kustomization.yaml @@ -4,6 +4,9 @@ kind: Kustomization bases: - ../base +commonLabels: + "app.kubernetes.io/part-of": "argo" + resources: - argo-postgres-config-secret.yaml - postgres-deployment.yaml