diff --git a/ApplicationSet/set.yaml b/ApplicationSet/set.yaml new file mode 100644 index 0000000..328e699 --- /dev/null +++ b/ApplicationSet/set.yaml @@ -0,0 +1,29 @@ +apiVersion: argoproj.io/v1alpha1 +kind: ApplicationSet +metadata: + name: myapps +spec: + generators: + - scmProvider: + github: + # The GitHub organization to scan. + organization: geekbozu + - repositoryMatch: ^argocd-example-apps + # For GitHub Enterprise: + allBranches: true + # Reference to a Secret containing an access token. (optional) + tokenRef: + secretName: github-token + key: token + template: + metadata: + name: '{{ repository }}+{{ branch }}' + spec: + source: + repoURL: '{{ url }}' + targetRevision: '{{ branch }}' + path: testApp/ + project: default + destination: + server: https://kubernetes.default.svc + namespace: default \ No newline at end of file diff --git a/README.md b/README.md deleted file mode 100644 index 9b0ec34..0000000 --- a/README.md +++ /dev/null @@ -1,21 +0,0 @@ -# ArgoCD Example Apps - -This repository contains example applications for demoing ArgoCD functionality. Feel free -to register this repository to your ArgoCD instance, or fork this repo and push your own commits -to explore ArgoCD and GitOps! - -| Application | Description | -|-------------|-------------| -| [guestbook](guestbook/) | A hello word guestbook app as plain YAML | -| [ksonnet-guestbook](ksonnet-guestbook/) | The guestbook app as a ksonnet app | -| [helm-guestbook](helm-guestbook/) | The guestbook app as a Helm chart | -| [jsonnet-guestbook](jsonnet-guestbook/) | The guestbook app as a raw jsonnet | -| [jsonnet-guestbook-tla](jsonnet-guestbook-tla/) | The guestbook app as a raw jsonnet with support for top level arguments | -| [kustomize-guestbook](kustomize-guestbook/) | The guestbook app as a Kustomize 2 app | -| [pre-post-sync](pre-post-sync/) | Demonstrates Argo CD PreSync and PostSync hooks | -| [sync-waves](sync-waves/) | Demonstrates Argo CD sync waves with hooks | -| [helm-dependency](helm-dependency/) | Demonstrates how to customize an OTS (off-the-shelf) helm chart from an upstream repo | -| [sock-shop](sock-shop/) | A microservices demo app (https://microservices-demo.github.io) | -| [plugins](plugins/) | Apps which demonstrate config management plugins usage | -| [blue-green](blue-green/) | Demonstrates how to implement blue-green deployment using [Argo Rollouts](https://github.com/argoproj/argo-rollouts) -| [apps](apps/) | An app composed of other apps | diff --git a/guestbook/guestbook-ui-deployment.yaml b/Test/deploy.yaml similarity index 74% rename from guestbook/guestbook-ui-deployment.yaml rename to Test/deploy.yaml index a891516..965b866 100644 --- a/guestbook/guestbook-ui-deployment.yaml +++ b/Test/deploy.yaml @@ -16,7 +16,7 @@ spec: app: guestbook-ui spec: containers: - - image: gcr.io/heptio-images/ks-guestbook-demo:0.2 - name: guestbook-ui + - image: praqma/network-multitool + name: net ports: - - containerPort: 80 + - containerPort: 80 \ No newline at end of file diff --git a/apps/Chart.yaml b/apps/Chart.yaml deleted file mode 100644 index a59772c..0000000 --- a/apps/Chart.yaml +++ /dev/null @@ -1,23 +0,0 @@ -apiVersion: v2 -name: applications -description: Applications - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -# Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.1.0 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. Versions are not expected to -# follow Semantic Versioning. They should reflect the version the application is using. -appVersion: "1.0" diff --git a/apps/templates/helm-guestbook.yaml b/apps/templates/helm-guestbook.yaml deleted file mode 100644 index e1e5a8b..0000000 --- a/apps/templates/helm-guestbook.yaml +++ /dev/null @@ -1,16 +0,0 @@ -apiVersion: argoproj.io/v1alpha1 -kind: Application -metadata: - name: helm-guestbook - namespace: argocd - finalizers: - - resources-finalizer.argocd.argoproj.io -spec: - destination: - namespace: helm-guestbook - server: {{ .Values.spec.destination.server }} - project: default - source: - path: helm-guestbook - repoURL: {{ .Values.spec.source.repoURL }} - targetRevision: {{ .Values.spec.source.targetRevision }} diff --git a/apps/templates/helm-hooks.yaml b/apps/templates/helm-hooks.yaml deleted file mode 100644 index 5f65a8d..0000000 --- a/apps/templates/helm-hooks.yaml +++ /dev/null @@ -1,17 +0,0 @@ -apiVersion: argoproj.io/v1alpha1 -kind: Application -metadata: - name: helm-hooks - namespace: argocd - finalizers: - - resources-finalizer.argocd.argoproj.io -spec: - destination: - namespace: helm-hooks - server: {{ .Values.spec.destination.server }} - project: default - source: - path: helm-hooks - repoURL: {{ .Values.spec.source.repoURL }} - targetRevision: {{ .Values.spec.source.targetRevision }} - diff --git a/apps/templates/kustomize-guestbook.yaml b/apps/templates/kustomize-guestbook.yaml deleted file mode 100644 index 7a36476..0000000 --- a/apps/templates/kustomize-guestbook.yaml +++ /dev/null @@ -1,16 +0,0 @@ -apiVersion: argoproj.io/v1alpha1 -kind: Application -metadata: - name: kustomize-guestbook - namespace: argocd - finalizers: - - resources-finalizer.argocd.argoproj.io -spec: - destination: - namespace: kustomize-guestbook - server: {{ .Values.spec.destination.server }} - project: default - source: - path: kustomize-guestbook - repoURL: {{ .Values.spec.source.repoURL }} - targetRevision: {{ .Values.spec.source.targetRevision }} diff --git a/apps/templates/namespaces.yaml b/apps/templates/namespaces.yaml deleted file mode 100644 index 435e4ba..0000000 --- a/apps/templates/namespaces.yaml +++ /dev/null @@ -1,27 +0,0 @@ -apiVersion: v1 -kind: Namespace -metadata: - name: helm-guestbook - annotations: - argocd.argoproj.io/sync-wave: "-1" ---- -apiVersion: v1 -kind: Namespace -metadata: - name: helm-hooks - annotations: - argocd.argoproj.io/sync-wave: "-1" ---- -apiVersion: v1 -kind: Namespace -metadata: - name: kustomize-guestbook - annotations: - argocd.argoproj.io/sync-wave: "-1" ---- -apiVersion: v1 -kind: Namespace -metadata: - name: sync-waves - annotations: - argocd.argoproj.io/sync-wave: "-1" diff --git a/apps/templates/sync-waves.yaml b/apps/templates/sync-waves.yaml deleted file mode 100644 index 24dbc9b..0000000 --- a/apps/templates/sync-waves.yaml +++ /dev/null @@ -1,16 +0,0 @@ -apiVersion: argoproj.io/v1alpha1 -kind: Application -metadata: - name: sync-waves - namespace: argocd - finalizers: - - resources-finalizer.argocd.argoproj.io -spec: - destination: - namespace: sync-waves - server: {{ .Values.spec.destination.server }} - project: default - source: - path: sync-waves - repoURL: {{ .Values.spec.source.repoURL }} - targetRevision: {{ .Values.spec.source.targetRevision }} diff --git a/apps/values.yaml b/apps/values.yaml deleted file mode 100644 index cd66cc0..0000000 --- a/apps/values.yaml +++ /dev/null @@ -1,6 +0,0 @@ -spec: - destination: - server: https://kubernetes.default.svc - source: - repoURL: https://github.com/argoproj/argocd-example-apps - targetRevision: HEAD \ No newline at end of file diff --git a/blue-green/.helmignore b/blue-green/.helmignore deleted file mode 100644 index f0c1319..0000000 --- a/blue-green/.helmignore +++ /dev/null @@ -1,21 +0,0 @@ -# Patterns to ignore when building packages. -# This supports shell glob matching, relative path matching, and -# negation (prefixed with !). Only one pattern per line. -.DS_Store -# Common VCS dirs -.git/ -.gitignore -.bzr/ -.bzrignore -.hg/ -.hgignore -.svn/ -# Common backup files -*.swp -*.bak -*.tmp -*~ -# Various IDEs -.project -.idea/ -*.tmproj diff --git a/blue-green/Chart.yaml b/blue-green/Chart.yaml deleted file mode 100644 index 6fac831..0000000 --- a/blue-green/Chart.yaml +++ /dev/null @@ -1,23 +0,0 @@ -apiVersion: v2 -name: helm-guestbook -description: A Helm chart for Kubernetes - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -# Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.1.0 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. Versions are not expected to -# follow Semantic Versioning. They should reflect the version the application is using. -appVersion: "1.0" diff --git a/blue-green/README.md b/blue-green/README.md deleted file mode 100644 index b1ad020..0000000 --- a/blue-green/README.md +++ /dev/null @@ -1,30 +0,0 @@ -# Blue Green - -The blue green strategy is not supported by built-in Kubernetes Deployment but available via third-party Kubernetes controller. -This example demonstrates how to implement blue-green deployment via [Argo Rollouts](https://github.com/argoproj/argo-rollouts): - -1. Install Argo Rollouts controller: https://github.com/argoproj/argo-rollouts#installation -2. Create a sample application and sync it. - -``` -argocd app create --name blue-green --repo https://github.com/argoproj/argocd-example-apps --dest-server https://kubernetes.default.svc --dest-namespace default --path blue-green && argocd app sync blue-green -``` - -Once the application is synced you can access it using `blue-green-helm-guestbook` service. - -3. Change image version parameter to trigger blue-green deployment process: - -``` -argocd app set blue-green -p image.tag=0.2 && argocd app sync blue-green -``` - -Now application runs `ks-guestbook-demo:0.1` and `ks-guestbook-demo:0.2` images simultaneously. -The `ks-guestbook-demo:0.2` is still considered `blue` available only via preview service `blue-green-helm-guestbook-preview`. - -4. Promote `ks-guestbook-demo:0.2` to `green` by patching `Rollout` resource: - -``` -argocd app patch-resource blue-green --kind Rollout --resource-name blue-green-helm-guestbook --patch '{ "status": { "verifyingPreview": false } }' --patch-type 'application/merge-patch+json' -``` - -This promotes `ks-guestbook-demo:0.2` to `green` status and `Rollout` deletes old replica which runs `ks-guestbook-demo:0.1`. diff --git a/blue-green/templates/NOTES.txt b/blue-green/templates/NOTES.txt deleted file mode 100644 index 37a1485..0000000 --- a/blue-green/templates/NOTES.txt +++ /dev/null @@ -1,19 +0,0 @@ -1. Get the application URL by running these commands: -{{- if .Values.ingress.enabled }} -{{- range .Values.ingress.hosts }} - http{{ if $.Values.ingress.tls }}s{{ end }}://{{ . }}{{ $.Values.ingress.path }} -{{- end }} -{{- else if contains "NodePort" .Values.service.type }} - export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ template "helm-guestbook.fullname" . }}) - export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") - echo http://$NODE_IP:$NODE_PORT -{{- else if contains "LoadBalancer" .Values.service.type }} - NOTE: It may take a few minutes for the LoadBalancer IP to be available. - You can watch the status of by running 'kubectl get svc -w {{ template "helm-guestbook.fullname" . }}' - export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ template "helm-guestbook.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}') - echo http://$SERVICE_IP:{{ .Values.service.port }} -{{- else if contains "ClusterIP" .Values.service.type }} - export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app={{ template "helm-guestbook.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") - echo "Visit http://127.0.0.1:8080 to use your application" - kubectl port-forward $POD_NAME 8080:80 -{{- end }} diff --git a/blue-green/templates/_helpers.tpl b/blue-green/templates/_helpers.tpl deleted file mode 100644 index 20f5d8e..0000000 --- a/blue-green/templates/_helpers.tpl +++ /dev/null @@ -1,32 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "helm-guestbook.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "helm-guestbook.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "helm-guestbook.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} diff --git a/blue-green/templates/rollout.yaml b/blue-green/templates/rollout.yaml deleted file mode 100644 index aa0b534..0000000 --- a/blue-green/templates/rollout.yaml +++ /dev/null @@ -1,56 +0,0 @@ -apiVersion: argoproj.io/v1alpha1 -kind: Rollout -metadata: - name: {{ template "helm-guestbook.fullname" . }} - labels: - app: {{ template "helm-guestbook.name" . }} - chart: {{ template "helm-guestbook.chart" . }} - release: {{ .Release.Name }} - heritage: {{ .Release.Service }} -spec: - replicas: {{ .Values.replicaCount }} - revisionHistoryLimit: 3 - selector: - matchLabels: - app: {{ template "helm-guestbook.name" . }} - release: {{ .Release.Name }} - strategy: - blueGreen: - activeService: {{ template "helm-guestbook.fullname" . }} - previewService: {{ template "helm-guestbook.fullname" . }}-preview - template: - metadata: - labels: - app: {{ template "helm-guestbook.name" . }} - release: {{ .Release.Name }} - spec: - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - ports: - - name: http - containerPort: 80 - protocol: TCP - livenessProbe: - httpGet: - path: / - port: http - readinessProbe: - httpGet: - path: / - port: http - resources: -{{ toYaml .Values.resources | indent 12 }} - {{- with .Values.nodeSelector }} - nodeSelector: -{{ toYaml . | indent 8 }} - {{- end }} - {{- with .Values.affinity }} - affinity: -{{ toYaml . | indent 8 }} - {{- end }} - {{- with .Values.tolerations }} - tolerations: -{{ toYaml . | indent 8 }} - {{- end }} diff --git a/blue-green/templates/services.yaml b/blue-green/templates/services.yaml deleted file mode 100644 index 0f4d0e0..0000000 --- a/blue-green/templates/services.yaml +++ /dev/null @@ -1,40 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: {{ template "helm-guestbook.fullname" . }} - labels: - app: {{ template "helm-guestbook.name" . }} - chart: {{ template "helm-guestbook.chart" . }} - release: {{ .Release.Name }} - heritage: {{ .Release.Service }} -spec: - type: {{ .Values.service.type }} - ports: - - port: {{ .Values.service.port }} - targetPort: http - protocol: TCP - name: http - selector: - app: {{ template "helm-guestbook.name" . }} - release: {{ .Release.Name }} ---- -apiVersion: v1 -kind: Service -metadata: - name: {{ template "helm-guestbook.fullname" . }}-preview - labels: - app: {{ template "helm-guestbook.name" . }} - chart: {{ template "helm-guestbook.chart" . }} - release: {{ .Release.Name }} - heritage: {{ .Release.Service }} -spec: - type: {{ .Values.service.type }} - ports: - - port: {{ .Values.service.port }} - targetPort: http - protocol: TCP - name: http - selector: - app: {{ template "helm-guestbook.name" . }} - release: {{ .Release.Name }} diff --git a/blue-green/values.yaml b/blue-green/values.yaml deleted file mode 100644 index 3666712..0000000 --- a/blue-green/values.yaml +++ /dev/null @@ -1,45 +0,0 @@ -# Default values for helm-guestbook. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - repository: gcr.io/heptio-images/ks-guestbook-demo - tag: 0.1 - pullPolicy: IfNotPresent - -service: - type: ClusterIP - port: 80 - -ingress: - enabled: false - annotations: {} - # kubernetes.io/ingress.class: nginx - # kubernetes.io/tls-acme: "true" - path: / - hosts: - - chart-example.local - tls: [] - # - secretName: chart-example-tls - # hosts: - # - chart-example.local - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/guestbook/guestbook-ui-svc.yaml b/guestbook/guestbook-ui-svc.yaml deleted file mode 100644 index e8a4a27..0000000 --- a/guestbook/guestbook-ui-svc.yaml +++ /dev/null @@ -1,10 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: guestbook-ui -spec: - ports: - - port: 80 - targetPort: 80 - selector: - app: guestbook-ui diff --git a/helm-dependency/Chart.yaml b/helm-dependency/Chart.yaml deleted file mode 100644 index 6e3c2bb..0000000 --- a/helm-dependency/Chart.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: v2 -name: wordpress -description: A Helm chart for Kubernetes - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -# Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.1.0 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. Versions are not expected to -# follow Semantic Versioning. They should reflect the version the application is using. -appVersion: "1.0" - -dependencies: -- name: wordpress - version: 9.0.3 - repository: https://charts.helm.sh/stable \ No newline at end of file diff --git a/helm-dependency/README.md b/helm-dependency/README.md deleted file mode 100644 index 7353e26..0000000 --- a/helm-dependency/README.md +++ /dev/null @@ -1,55 +0,0 @@ -# Helm Dependencies - -This example application demonstrates how an OTS (off-the-shelf) helm chart can be retrieved and -pinned to a specific helm sem version from an upstream helm repository, and customized using a custom -values.yaml in the private git repository. - -In this example, the wordpress application is pulled from the stable helm repo, and pinned to v5.0.2: - -```yaml -dependencies: -- name: wordpress - version: 5.0.2 - repository: https://charts.helm.sh/stable -``` - -A custom values.yaml is used to customize the parameters of the wordpress helm chart: - -```yaml -wordpress: - wordpressPassword: foo - mariadb: - db: - password: bar - rootUser: - password: baz -``` - -### Subchart Note - -The wordpress chart referenced in this example contains a subchart for mariadb as specified in the requirements.yaml file of the wordpress chart: -```yaml -- name: mariadb - version: 5.x.x - repository: https://charts.helm.sh/stable - condition: mariadb.enabled - tags: - - wordpress-database -``` - -In order to disable this chart, you must set the value to false for both `mariadb.enabled` and `wordpress.mariadb.enabled`. The first is used by the mariadb subchart condition field, the second is used by the wordpress chart deployment template. An example demonstration is available in the values-nomaria.yaml file: -```yaml -mariadb: - enabled: false - -wordpress: - wordpressPassword: foo - mariadb: - enabled: false - externalDatabase: - host: localhost - user: bn_wordpress - password: "" - database: bitnami_wordpress - port: 3306 -``` \ No newline at end of file diff --git a/helm-dependency/values-nomaria.yaml b/helm-dependency/values-nomaria.yaml deleted file mode 100644 index 98f17bc..0000000 --- a/helm-dependency/values-nomaria.yaml +++ /dev/null @@ -1,13 +0,0 @@ -mariadb: - enabled: false - -wordpress: - wordpressPassword: foo - mariadb: - enabled: false - externalDatabase: - host: localhost - user: bn_wordpress - password: "" - database: bitnami_wordpress - port: 3306 \ No newline at end of file diff --git a/helm-dependency/values.yaml b/helm-dependency/values.yaml deleted file mode 100644 index a954a18..0000000 --- a/helm-dependency/values.yaml +++ /dev/null @@ -1,7 +0,0 @@ -wordpress: - wordpressPassword: foo - mariadb: - db: - password: bar - rootUser: - password: baz diff --git a/helm-guestbook/.helmignore b/helm-guestbook/.helmignore deleted file mode 100644 index f0c1319..0000000 --- a/helm-guestbook/.helmignore +++ /dev/null @@ -1,21 +0,0 @@ -# Patterns to ignore when building packages. -# This supports shell glob matching, relative path matching, and -# negation (prefixed with !). Only one pattern per line. -.DS_Store -# Common VCS dirs -.git/ -.gitignore -.bzr/ -.bzrignore -.hg/ -.hgignore -.svn/ -# Common backup files -*.swp -*.bak -*.tmp -*~ -# Various IDEs -.project -.idea/ -*.tmproj diff --git a/helm-guestbook/Chart.yaml b/helm-guestbook/Chart.yaml deleted file mode 100644 index 6fac831..0000000 --- a/helm-guestbook/Chart.yaml +++ /dev/null @@ -1,23 +0,0 @@ -apiVersion: v2 -name: helm-guestbook -description: A Helm chart for Kubernetes - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -# Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.1.0 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. Versions are not expected to -# follow Semantic Versioning. They should reflect the version the application is using. -appVersion: "1.0" diff --git a/helm-guestbook/templates/NOTES.txt b/helm-guestbook/templates/NOTES.txt deleted file mode 100644 index 37a1485..0000000 --- a/helm-guestbook/templates/NOTES.txt +++ /dev/null @@ -1,19 +0,0 @@ -1. Get the application URL by running these commands: -{{- if .Values.ingress.enabled }} -{{- range .Values.ingress.hosts }} - http{{ if $.Values.ingress.tls }}s{{ end }}://{{ . }}{{ $.Values.ingress.path }} -{{- end }} -{{- else if contains "NodePort" .Values.service.type }} - export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ template "helm-guestbook.fullname" . }}) - export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") - echo http://$NODE_IP:$NODE_PORT -{{- else if contains "LoadBalancer" .Values.service.type }} - NOTE: It may take a few minutes for the LoadBalancer IP to be available. - You can watch the status of by running 'kubectl get svc -w {{ template "helm-guestbook.fullname" . }}' - export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ template "helm-guestbook.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}') - echo http://$SERVICE_IP:{{ .Values.service.port }} -{{- else if contains "ClusterIP" .Values.service.type }} - export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app={{ template "helm-guestbook.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") - echo "Visit http://127.0.0.1:8080 to use your application" - kubectl port-forward $POD_NAME 8080:80 -{{- end }} diff --git a/helm-guestbook/templates/_helpers.tpl b/helm-guestbook/templates/_helpers.tpl deleted file mode 100644 index 20f5d8e..0000000 --- a/helm-guestbook/templates/_helpers.tpl +++ /dev/null @@ -1,32 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "helm-guestbook.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "helm-guestbook.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "helm-guestbook.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} diff --git a/helm-guestbook/templates/deployment.yaml b/helm-guestbook/templates/deployment.yaml deleted file mode 100644 index 980df25..0000000 --- a/helm-guestbook/templates/deployment.yaml +++ /dev/null @@ -1,52 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ template "helm-guestbook.fullname" . }} - labels: - app: {{ template "helm-guestbook.name" . }} - chart: {{ template "helm-guestbook.chart" . }} - release: {{ .Release.Name }} - heritage: {{ .Release.Service }} -spec: - replicas: {{ .Values.replicaCount }} - revisionHistoryLimit: 3 - selector: - matchLabels: - app: {{ template "helm-guestbook.name" . }} - release: {{ .Release.Name }} - template: - metadata: - labels: - app: {{ template "helm-guestbook.name" . }} - release: {{ .Release.Name }} - spec: - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - ports: - - name: http - containerPort: 80 - protocol: TCP - livenessProbe: - httpGet: - path: / - port: http - readinessProbe: - httpGet: - path: / - port: http - resources: -{{ toYaml .Values.resources | indent 12 }} - {{- with .Values.nodeSelector }} - nodeSelector: -{{ toYaml . | indent 8 }} - {{- end }} - {{- with .Values.affinity }} - affinity: -{{ toYaml . | indent 8 }} - {{- end }} - {{- with .Values.tolerations }} - tolerations: -{{ toYaml . | indent 8 }} - {{- end }} diff --git a/helm-guestbook/templates/service.yaml b/helm-guestbook/templates/service.yaml deleted file mode 100644 index b7aab0b..0000000 --- a/helm-guestbook/templates/service.yaml +++ /dev/null @@ -1,19 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: {{ template "helm-guestbook.fullname" . }} - labels: - app: {{ template "helm-guestbook.name" . }} - chart: {{ template "helm-guestbook.chart" . }} - release: {{ .Release.Name }} - heritage: {{ .Release.Service }} -spec: - type: {{ .Values.service.type }} - ports: - - port: {{ .Values.service.port }} - targetPort: http - protocol: TCP - name: http - selector: - app: {{ template "helm-guestbook.name" . }} - release: {{ .Release.Name }} diff --git a/helm-guestbook/values-production.yaml b/helm-guestbook/values-production.yaml deleted file mode 100644 index 42838b7..0000000 --- a/helm-guestbook/values-production.yaml +++ /dev/null @@ -1,2 +0,0 @@ -service: - type: LoadBalancer diff --git a/helm-guestbook/values.yaml b/helm-guestbook/values.yaml deleted file mode 100644 index 3666712..0000000 --- a/helm-guestbook/values.yaml +++ /dev/null @@ -1,45 +0,0 @@ -# Default values for helm-guestbook. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - repository: gcr.io/heptio-images/ks-guestbook-demo - tag: 0.1 - pullPolicy: IfNotPresent - -service: - type: ClusterIP - port: 80 - -ingress: - enabled: false - annotations: {} - # kubernetes.io/ingress.class: nginx - # kubernetes.io/tls-acme: "true" - path: / - hosts: - - chart-example.local - tls: [] - # - secretName: chart-example-tls - # hosts: - # - chart-example.local - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/helm-hooks/manifests.yaml b/helm-hooks/manifests.yaml deleted file mode 100644 index dcd852d..0000000 --- a/helm-hooks/manifests.yaml +++ /dev/null @@ -1,82 +0,0 @@ ---- -apiVersion: batch/v1 -kind: Job -metadata: - generateName: upgrade-sql-schema - annotations: - helm.sh/hook: pre-install - helm.sh/hook-weight: "-2" -spec: - template: - spec: - containers: - - name: upgrade-sql-schema - image: alpine:latest - command: ["sleep", "5"] - restartPolicy: Never ---- -apiVersion: batch/v1 -kind: Job -metadata: - name: maint-page-up - annotations: - helm.sh/hook: pre-install - helm.sh/hook-delete-policy: before-hook-creation - helm.sh/hook-weight: "-1" -spec: - template: - spec: - containers: - - name: page-up - image: alpine:latest - command: ["sleep", "2"] - restartPolicy: Never - backoffLimit: 0 ---- -apiVersion: apps/v1 -kind: ReplicaSet -metadata: - name: frontend -spec: - replicas: 1 - selector: - matchLabels: - tier: frontend - template: - metadata: - labels: - tier: frontend - spec: - containers: - - name: main - image: nginx:latest ---- -apiVersion: v1 -kind: Service -metadata: - name: frontend - annotations: - helm.sh/hook-weight: "2" -spec: - selector: - tier: frontend - ports: - - protocol: TCP - port: 80 - targetPort: 80 ---- -apiVersion: batch/v1 -kind: Job -metadata: - name: maint-page-down - annotations: - helm.sh/hook: post-install - helm.sh/hook-delete-policy: before-hook-creation -spec: - template: - spec: - containers: - - name: page-down - image: alpine:latest - command: ["sleep", "2"] - restartPolicy: Never diff --git a/jsonnet-guestbook-tla/guestbook-ui.jsonnet b/jsonnet-guestbook-tla/guestbook-ui.jsonnet deleted file mode 100644 index 6ebf2c8..0000000 --- a/jsonnet-guestbook-tla/guestbook-ui.jsonnet +++ /dev/null @@ -1,63 +0,0 @@ -function ( - containerPort = 80, - image = "gcr.io/heptio-images/ks-guestbook-demo:0.2", - name = "jsonnet-guestbook-ui", - replicas = 1, - servicePort = 80, - type = "LoadBalancer", - ns=$ARGOCD_APP_NAMESPACE) -[{ - "apiVersion": "v1", - "kind": "Service", - "metadata": { - "name": name, - "labels": [{ - "ns": "test" - }] - }, - "spec": { - "ports": [{ - "port": servicePort, - "targetPort": containerPort - } - ], - "selector": { - "app": name - }, - "type": type - } - }, { - "apiVersion": "apps/v1", - "kind": "Deployment", - "metadata": { - "name": name - }, - "spec": { - "replicas": replicas, - "revisionHistoryLimit": 3, - "selector": { - "matchLabels": { - "app": name - }, - }, - "template": { - "metadata": { - "labels": { - "app": name - } - }, - "spec": { - "containers": [{ - "image": image, - "name": name, - "ports": [{ - "containerPort": containerPort - } - ] - } - ] - } - } - } - } -] diff --git a/jsonnet-guestbook/guestbook-ui.jsonnet b/jsonnet-guestbook/guestbook-ui.jsonnet deleted file mode 100644 index a4b1aa7..0000000 --- a/jsonnet-guestbook/guestbook-ui.jsonnet +++ /dev/null @@ -1,59 +0,0 @@ -local params = import 'params.libsonnet'; - -[ - { - "apiVersion": "v1", - "kind": "Service", - "metadata": { - "name": params.name - }, - "spec": { - "ports": [ - { - "port": params.servicePort, - "targetPort": params.containerPort - } - ], - "selector": { - "app": params.name - }, - "type": params.type - } - }, - { - "apiVersion": "apps/v1", - "kind": "Deployment", - "metadata": { - "name": params.name - }, - "spec": { - "replicas": params.replicas, - "revisionHistoryLimit": 3, - "selector": { - "matchLabels": { - "app": params.name - }, - }, - "template": { - "metadata": { - "labels": { - "app": params.name - } - }, - "spec": { - "containers": [ - { - "image": params.image, - "name": params.name, - "ports": [ - { - "containerPort": params.containerPort - } - ] - } - ] - } - } - } - } -] diff --git a/jsonnet-guestbook/params.libsonnet b/jsonnet-guestbook/params.libsonnet deleted file mode 100644 index 3120aad..0000000 --- a/jsonnet-guestbook/params.libsonnet +++ /dev/null @@ -1,8 +0,0 @@ -{ - containerPort: 80, - image: "gcr.io/heptio-images/ks-guestbook-demo:0.2", - name: "jsonnet-guestbook-ui", - replicas: 1, - servicePort: 80, - type: "LoadBalancer", -} diff --git a/ksonnet-guestbook/.gitignore b/ksonnet-guestbook/.gitignore deleted file mode 100644 index f8714d3..0000000 --- a/ksonnet-guestbook/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -/lib -/.ksonnet/registries -/app.override.yaml -/.ks_environment diff --git a/ksonnet-guestbook/app.yaml b/ksonnet-guestbook/app.yaml deleted file mode 100644 index 6fc0b6a..0000000 --- a/ksonnet-guestbook/app.yaml +++ /dev/null @@ -1,23 +0,0 @@ -apiVersion: 0.1.0 -environments: - default: - destination: - namespace: default - server: https://kubernetes.default.svc - k8sVersion: v1.10.0 - path: default - dev: - destination: - namespace: dev - server: https://kubernetes.default.svc - k8sVersion: v1.10.0 - path: dev - prod: - destination: - namespace: prod - server: https://kubernetes.default.svc - k8sVersion: v1.10.0 - path: prod -kind: ksonnet.io/app -name: guestbook -version: 0.0.1 diff --git a/ksonnet-guestbook/components/guestbook-ui.jsonnet b/ksonnet-guestbook/components/guestbook-ui.jsonnet deleted file mode 100644 index b615bdb..0000000 --- a/ksonnet-guestbook/components/guestbook-ui.jsonnet +++ /dev/null @@ -1,59 +0,0 @@ -local env = std.extVar("__ksonnet/environments"); -local params = std.extVar("__ksonnet/params").components["guestbook-ui"]; -[ - { - "apiVersion": "v1", - "kind": "Service", - "metadata": { - "name": params.name - }, - "spec": { - "ports": [ - { - "port": params.servicePort, - "targetPort": params.containerPort - } - ], - "selector": { - "app": params.name - }, - "type": params.type - } - }, - { - "apiVersion": "apps/v1", - "kind": "Deployment", - "metadata": { - "name": params.name - }, - "spec": { - "replicas": params.replicas, - "revisionHistoryLimit": 3, - "selector": { - "matchLabels": { - "app": params.name - }, - }, - "template": { - "metadata": { - "labels": { - "app": params.name - } - }, - "spec": { - "containers": [ - { - "image": params.image, - "name": params.name, - "ports": [ - { - "containerPort": params.containerPort - } - ] - } - ] - } - } - } - } -] diff --git a/ksonnet-guestbook/components/params.libsonnet b/ksonnet-guestbook/components/params.libsonnet deleted file mode 100644 index 162ad1f..0000000 --- a/ksonnet-guestbook/components/params.libsonnet +++ /dev/null @@ -1,18 +0,0 @@ -{ - global: { - // User-defined global parameters; accessible to all component and environments, Ex: - // replicas: 4, - }, - components: { - // Component-level parameters, defined initially from 'ks prototype use ...' - // Each object below should correspond to a component in the components/ directory - "guestbook-ui": { - containerPort: 80, - image: "gcr.io/heptio-images/ks-guestbook-demo:0.2", - name: "ks-guestbook-ui", - replicas: 1, - servicePort: 80, - type: "LoadBalancer", - }, - }, -} diff --git a/ksonnet-guestbook/environments/base.libsonnet b/ksonnet-guestbook/environments/base.libsonnet deleted file mode 100644 index a129aff..0000000 --- a/ksonnet-guestbook/environments/base.libsonnet +++ /dev/null @@ -1,4 +0,0 @@ -local components = std.extVar("__ksonnet/components"); -components + { - // Insert user-specified overrides here. -} diff --git a/ksonnet-guestbook/environments/default/globals.libsonnet b/ksonnet-guestbook/environments/default/globals.libsonnet deleted file mode 100644 index 7a73a41..0000000 --- a/ksonnet-guestbook/environments/default/globals.libsonnet +++ /dev/null @@ -1,2 +0,0 @@ -{ -} \ No newline at end of file diff --git a/ksonnet-guestbook/environments/default/main.jsonnet b/ksonnet-guestbook/environments/default/main.jsonnet deleted file mode 100644 index 58695a8..0000000 --- a/ksonnet-guestbook/environments/default/main.jsonnet +++ /dev/null @@ -1,8 +0,0 @@ -local base = import "base.libsonnet"; -// uncomment if you reference ksonnet-lib -// local k = import "k.libsonnet"; - -base + { - // Insert user-specified overrides here. For example if a component is named \"nginx-deployment\", you might have something like:\n") - // "nginx-deployment"+: k.deployment.mixin.metadata.labels({foo: "bar"}) -} diff --git a/ksonnet-guestbook/environments/default/params.libsonnet b/ksonnet-guestbook/environments/default/params.libsonnet deleted file mode 100644 index b6eb32d..0000000 --- a/ksonnet-guestbook/environments/default/params.libsonnet +++ /dev/null @@ -1,17 +0,0 @@ -local params = std.extVar("__ksonnet/params"); -local globals = import "globals.libsonnet"; -local envParams = params + { - components +: { - // Insert component parameter overrides here. Ex: - // guestbook +: { - // name: "guestbook-dev", - // replicas: params.global.replicas, - // }, - }, -}; - -{ - components: { - [x]: envParams.components[x] + globals, for x in std.objectFields(envParams.components) - }, -} diff --git a/ksonnet-guestbook/environments/dev/globals.libsonnet b/ksonnet-guestbook/environments/dev/globals.libsonnet deleted file mode 100644 index 7a73a41..0000000 --- a/ksonnet-guestbook/environments/dev/globals.libsonnet +++ /dev/null @@ -1,2 +0,0 @@ -{ -} \ No newline at end of file diff --git a/ksonnet-guestbook/environments/dev/main.jsonnet b/ksonnet-guestbook/environments/dev/main.jsonnet deleted file mode 100644 index 58695a8..0000000 --- a/ksonnet-guestbook/environments/dev/main.jsonnet +++ /dev/null @@ -1,8 +0,0 @@ -local base = import "base.libsonnet"; -// uncomment if you reference ksonnet-lib -// local k = import "k.libsonnet"; - -base + { - // Insert user-specified overrides here. For example if a component is named \"nginx-deployment\", you might have something like:\n") - // "nginx-deployment"+: k.deployment.mixin.metadata.labels({foo: "bar"}) -} diff --git a/ksonnet-guestbook/environments/dev/params.libsonnet b/ksonnet-guestbook/environments/dev/params.libsonnet deleted file mode 100644 index b6eb32d..0000000 --- a/ksonnet-guestbook/environments/dev/params.libsonnet +++ /dev/null @@ -1,17 +0,0 @@ -local params = std.extVar("__ksonnet/params"); -local globals = import "globals.libsonnet"; -local envParams = params + { - components +: { - // Insert component parameter overrides here. Ex: - // guestbook +: { - // name: "guestbook-dev", - // replicas: params.global.replicas, - // }, - }, -}; - -{ - components: { - [x]: envParams.components[x] + globals, for x in std.objectFields(envParams.components) - }, -} diff --git a/ksonnet-guestbook/environments/prod/globals.libsonnet b/ksonnet-guestbook/environments/prod/globals.libsonnet deleted file mode 100644 index 7a73a41..0000000 --- a/ksonnet-guestbook/environments/prod/globals.libsonnet +++ /dev/null @@ -1,2 +0,0 @@ -{ -} \ No newline at end of file diff --git a/ksonnet-guestbook/environments/prod/main.jsonnet b/ksonnet-guestbook/environments/prod/main.jsonnet deleted file mode 100644 index 58695a8..0000000 --- a/ksonnet-guestbook/environments/prod/main.jsonnet +++ /dev/null @@ -1,8 +0,0 @@ -local base = import "base.libsonnet"; -// uncomment if you reference ksonnet-lib -// local k = import "k.libsonnet"; - -base + { - // Insert user-specified overrides here. For example if a component is named \"nginx-deployment\", you might have something like:\n") - // "nginx-deployment"+: k.deployment.mixin.metadata.labels({foo: "bar"}) -} diff --git a/ksonnet-guestbook/environments/prod/params.libsonnet b/ksonnet-guestbook/environments/prod/params.libsonnet deleted file mode 100644 index b6eb32d..0000000 --- a/ksonnet-guestbook/environments/prod/params.libsonnet +++ /dev/null @@ -1,17 +0,0 @@ -local params = std.extVar("__ksonnet/params"); -local globals = import "globals.libsonnet"; -local envParams = params + { - components +: { - // Insert component parameter overrides here. Ex: - // guestbook +: { - // name: "guestbook-dev", - // replicas: params.global.replicas, - // }, - }, -}; - -{ - components: { - [x]: envParams.components[x] + globals, for x in std.objectFields(envParams.components) - }, -} diff --git a/kustomize-guestbook/guestbook-ui-deployment.yaml b/kustomize-guestbook/guestbook-ui-deployment.yaml deleted file mode 100644 index 5688dcf..0000000 --- a/kustomize-guestbook/guestbook-ui-deployment.yaml +++ /dev/null @@ -1,20 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: guestbook-ui -spec: - replicas: 1 - revisionHistoryLimit: 3 - selector: - matchLabels: - app: guestbook-ui - template: - metadata: - labels: - app: guestbook-ui - spec: - containers: - - image: gcr.io/heptio-images/ks-guestbook-demo:0.1 - name: guestbook-ui - ports: - - containerPort: 80 diff --git a/kustomize-guestbook/guestbook-ui-svc.yaml b/kustomize-guestbook/guestbook-ui-svc.yaml deleted file mode 100644 index e619b5c..0000000 --- a/kustomize-guestbook/guestbook-ui-svc.yaml +++ /dev/null @@ -1,10 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: guestbook-ui -spec: - ports: - - port: 80 - targetPort: 80 - selector: - app: guestbook-ui diff --git a/kustomize-guestbook/kustomization.yaml b/kustomize-guestbook/kustomization.yaml deleted file mode 100644 index cbaba90..0000000 --- a/kustomize-guestbook/kustomization.yaml +++ /dev/null @@ -1,7 +0,0 @@ -namePrefix: kustomize- - -resources: -- guestbook-ui-deployment.yaml -- guestbook-ui-svc.yaml -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization diff --git a/plugins/README.md b/plugins/README.md deleted file mode 100644 index ea8645b..0000000 --- a/plugins/README.md +++ /dev/null @@ -1,6 +0,0 @@ -# Config Management Plugins Examples - -| Application | Description | -|-------------|-------------| -| [kasane](kasane/) | The guestbook application as a `kasane` package. | -| [kustomized-helm](kustomized-helm/) | Application comprised of a `helm` chart and customized using `kustomize` | diff --git a/plugins/kasane/.gitignore b/plugins/kasane/.gitignore deleted file mode 100644 index db3a6fe..0000000 --- a/plugins/kasane/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -vendor -Kasanefile.lock diff --git a/plugins/kasane/Kasanefile b/plugins/kasane/Kasanefile deleted file mode 100644 index 173412e..0000000 --- a/plugins/kasane/Kasanefile +++ /dev/null @@ -1,5 +0,0 @@ -layers: -- ../../guestbook/guestbook-ui-deployment.yaml -- patch.jsonnet -- ../../guestbook/guestbook-ui-svc.yaml - diff --git a/plugins/kasane/README.md b/plugins/kasane/README.md deleted file mode 100644 index bfed877..0000000 --- a/plugins/kasane/README.md +++ /dev/null @@ -1,29 +0,0 @@ -# Kasane - -[Kasane](https://github.com/google/kasane) is a layering tool for Kubernetes which utilises Jsonnet for deep object modification and patching. - -Use following steps to try the application: - -* Follow instructions from [custom_tools.md](https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/custom_tools.md) to make sure `kasane` binary is available in `argocd-repo-server` pod. -* Register `kasane` plugin `argocd-cm` ConfigMap: - -```yaml -apiVersion: v1 -data: - configManagementPlugins: | - - name: kasane - init: - command: [kasane, update] - generate: - command: [kasane, show] -``` -* Create application using `kasane` as a config management plugin name. - -``` -argocd app create kasane \ - --config-management-plugin kasane \ - --repo https://github.com/argoproj/argocd-example-apps \ - --path plugins/kasane \ - --dest-server https://kubernetes.default.svc \ - --dest-namespace default -``` diff --git a/plugins/kasane/patch.jsonnet b/plugins/kasane/patch.jsonnet deleted file mode 100644 index f5190fb..0000000 --- a/plugins/kasane/patch.jsonnet +++ /dev/null @@ -1,9 +0,0 @@ -function (layers) - -[ - layers[0] { - spec+: { - replicas: 2, - }, - } -] diff --git a/plugins/kustomized-helm/.gitignore b/plugins/kustomized-helm/.gitignore deleted file mode 100644 index 2582de3..0000000 --- a/plugins/kustomized-helm/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -all.yaml -charts -requirements.lock diff --git a/plugins/kustomized-helm/Chart.yaml b/plugins/kustomized-helm/Chart.yaml deleted file mode 100644 index 946f402..0000000 --- a/plugins/kustomized-helm/Chart.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: v2 -name: guestbook -description: A Helm chart for Kubernetes - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -# Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.1.0 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. Versions are not expected to -# follow Semantic Versioning. They should reflect the version the application is using. -appVersion: "1.0" - -dependencies: -- name: helm-guestbook - version: 0.1.0 - repository: file://../../helm-guestbook \ No newline at end of file diff --git a/plugins/kustomized-helm/README.md b/plugins/kustomized-helm/README.md deleted file mode 100644 index e93b202..0000000 --- a/plugins/kustomized-helm/README.md +++ /dev/null @@ -1,31 +0,0 @@ -# Helm + Kustomize - -Sometimes Helm chart don't have all required parameters and additional customization is required. This example application demonstrates how to combine Helm and Kustomize and use it -as a config management plugin in Argo CD. - -Use following steps to try the application: - -* configure `kustomized-helm` tool in `argocd-cm` ConfigMap: - -```yaml - configManagementPlugins: | - - name: kustomized-helm - init: - command: ["/bin/sh", "-c"] - args: ["helm dependency build"] - generate: - command: [sh, -c] - args: ["helm template --release-name release-name . > all.yaml && kustomize build"] -``` - -* create application using `kustomized-helm` as a config management plugin name: - - -``` -argocd app create kustomized-helm \ - --config-management-plugin kustomized-helm \ - --repo https://github.com/argoproj/argocd-example-apps \ - --path plugins/kustomized-helm \ - --dest-server https://kubernetes.default.svc \ - --dest-namespace default -``` diff --git a/plugins/kustomized-helm/kustomization.yaml b/plugins/kustomized-helm/kustomization.yaml deleted file mode 100644 index 23018b7..0000000 --- a/plugins/kustomized-helm/kustomization.yaml +++ /dev/null @@ -1,7 +0,0 @@ -namePrefix: kustomize- - -resources: -- ./all.yaml - -patches: -- overlays/guestbook-deployment.yaml diff --git a/plugins/kustomized-helm/overlays/guestbook-deployment.yaml b/plugins/kustomized-helm/overlays/guestbook-deployment.yaml deleted file mode 100644 index fd424c4..0000000 --- a/plugins/kustomized-helm/overlays/guestbook-deployment.yaml +++ /dev/null @@ -1,10 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: release-name-helm-guestbook -spec: - template: - spec: - containers: - - name: helm-guestbook - image: "gcr.io/heptio-images/ks-guestbook-demo:0.2" diff --git a/pre-post-sync/kustomization.yaml b/pre-post-sync/kustomization.yaml deleted file mode 100644 index 6797052..0000000 --- a/pre-post-sync/kustomization.yaml +++ /dev/null @@ -1,8 +0,0 @@ -namePrefix: pre-post-sync- - -bases: -- ../kustomize-guestbook - -resources: -- pre-sync-job.yaml -- post-sync-job.yaml diff --git a/pre-post-sync/post-sync-job.yaml b/pre-post-sync/post-sync-job.yaml deleted file mode 100644 index cef38f0..0000000 --- a/pre-post-sync/post-sync-job.yaml +++ /dev/null @@ -1,16 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: after - annotations: - argocd.argoproj.io/hook: PostSync - argocd.argoproj.io/hook-delete-policy: HookSucceeded -spec: - template: - spec: - containers: - - name: sleep - image: alpine:latest - command: ["sleep", "10"] - restartPolicy: Never - backoffLimit: 0 diff --git a/pre-post-sync/pre-sync-job.yaml b/pre-post-sync/pre-sync-job.yaml deleted file mode 100644 index 110ddeb..0000000 --- a/pre-post-sync/pre-sync-job.yaml +++ /dev/null @@ -1,16 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: before - annotations: - argocd.argoproj.io/hook: PreSync - argocd.argoproj.io/hook-delete-policy: HookSucceeded -spec: - template: - spec: - containers: - - name: sleep - image: alpine:latest - command: ["sleep", "10"] - restartPolicy: Never - backoffLimit: 0 diff --git a/sock-shop/base/carts-db-dep.yaml b/sock-shop/base/carts-db-dep.yaml deleted file mode 100644 index 5452b6f..0000000 --- a/sock-shop/base/carts-db-dep.yaml +++ /dev/null @@ -1,41 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: carts-db - labels: - name: carts-db -spec: - replicas: 1 - selector: - matchLabels: - name: carts-db - template: - metadata: - labels: - name: carts-db - spec: - containers: - - name: carts-db - image: mongo - ports: - - name: mongo - containerPort: 27017 - securityContext: - capabilities: - drop: - - all - add: - - CHOWN - - SETGID - - SETUID - readOnlyRootFilesystem: true - volumeMounts: - - mountPath: /tmp - name: tmp-volume - volumes: - - name: tmp-volume - emptyDir: - medium: Memory - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/carts-db-svc.yaml b/sock-shop/base/carts-db-svc.yaml deleted file mode 100644 index df88dd9..0000000 --- a/sock-shop/base/carts-db-svc.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: carts-db - labels: - name: carts-db -spec: - ports: - # the port that this service should serve on - - port: 27017 - targetPort: 27017 - selector: - name: carts-db diff --git a/sock-shop/base/carts-dep.yaml b/sock-shop/base/carts-dep.yaml deleted file mode 100644 index 7c44ff0..0000000 --- a/sock-shop/base/carts-dep.yaml +++ /dev/null @@ -1,64 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: carts - labels: - name: carts -spec: - replicas: 1 - selector: - matchLabels: - name: carts - template: - metadata: - labels: - name: carts - spec: - containers: - - name: carts - image: weaveworksdemos/carts:0.4.8 - env: - - name: ZIPKIN - value: zipkin.jaeger.svc.cluster.local - - name: JAVA_OPTS - value: -Xms64m -Xmx128m -XX:PermSize=32m -XX:MaxPermSize=64m -XX:+UseG1GC -Djava.security.egd=file:/dev/urandom - resources: - limits: - cpu: 300m - memory: 500Mi - requests: - cpu: 300m - memory: 500Mi - ports: - - containerPort: 80 - securityContext: - runAsNonRoot: true - runAsUser: 10001 - capabilities: - drop: - - all - add: - - NET_BIND_SERVICE - readOnlyRootFilesystem: true - volumeMounts: - - mountPath: /tmp - name: tmp-volume - livenessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 300 - periodSeconds: 3 - readinessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 180 - periodSeconds: 3 - volumes: - - name: tmp-volume - emptyDir: - medium: Memory - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/catalogue-db-dep.yaml b/sock-shop/base/catalogue-db-dep.yaml deleted file mode 100644 index 23890fa..0000000 --- a/sock-shop/base/catalogue-db-dep.yaml +++ /dev/null @@ -1,30 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: catalogue-db - labels: - name: catalogue-db -spec: - replicas: 1 - selector: - matchLabels: - name: catalogue-db - template: - metadata: - labels: - name: catalogue-db - spec: - containers: - - name: catalogue-db - image: weaveworksdemos/catalogue-db:0.3.0 - env: - - name: MYSQL_ROOT_PASSWORD - value: fake_password - - name: MYSQL_DATABASE - value: socksdb - ports: - - name: mysql - containerPort: 3306 - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/catalogue-db-svc.yaml b/sock-shop/base/catalogue-db-svc.yaml deleted file mode 100644 index 683b9ce..0000000 --- a/sock-shop/base/catalogue-db-svc.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: catalogue-db - labels: - name: catalogue-db -spec: - ports: - # the port that this service should serve on - - port: 3306 - targetPort: 3306 - selector: - name: catalogue-db diff --git a/sock-shop/base/catalogue-dep.yaml b/sock-shop/base/catalogue-dep.yaml deleted file mode 100644 index cfa66dc..0000000 --- a/sock-shop/base/catalogue-dep.yaml +++ /dev/null @@ -1,52 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: catalogue - labels: - name: catalogue -spec: - replicas: 1 - selector: - matchLabels: - name: catalogue - template: - metadata: - labels: - name: catalogue - spec: - containers: - - name: catalogue - image: weaveworksdemos/catalogue:0.3.5 - resources: - limits: - cpu: 100m - memory: 100Mi - requests: - cpu: 100m - memory: 100Mi - ports: - - containerPort: 80 - securityContext: - runAsNonRoot: true - runAsUser: 10001 - capabilities: - drop: - - all - add: - - NET_BIND_SERVICE - readOnlyRootFilesystem: true - livenessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 300 - periodSeconds: 3 - readinessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 180 - periodSeconds: 3 - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/catalogue-svc.yaml b/sock-shop/base/catalogue-svc.yaml deleted file mode 100644 index ed948f5..0000000 --- a/sock-shop/base/catalogue-svc.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: catalogue - labels: - name: catalogue -spec: - ports: - # the port that this service should serve on - - port: 80 - targetPort: 80 - selector: - name: catalogue diff --git a/sock-shop/base/front-end-dep.yaml b/sock-shop/base/front-end-dep.yaml deleted file mode 100644 index 069c5ef..0000000 --- a/sock-shop/base/front-end-dep.yaml +++ /dev/null @@ -1,51 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: front-end -spec: - replicas: 1 - selector: - matchLabels: - name: front-end - template: - metadata: - labels: - name: front-end - spec: - containers: - - name: front-end - image: weaveworksdemos/front-end:0.3.12 - resources: - limits: - cpu: 300m - memory: 1000Mi - requests: - cpu: 100m - memory: 300Mi - ports: - - containerPort: 8079 - env: - - name: SESSION_REDIS - value: "true" - securityContext: - runAsNonRoot: true - runAsUser: 10001 - capabilities: - drop: - - all - readOnlyRootFilesystem: true - livenessProbe: - httpGet: - path: / - port: 8079 - initialDelaySeconds: 300 - periodSeconds: 3 - readinessProbe: - httpGet: - path: / - port: 8079 - initialDelaySeconds: 30 - periodSeconds: 3 - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/front-end-svc.yaml b/sock-shop/base/front-end-svc.yaml deleted file mode 100644 index 5249bb4..0000000 --- a/sock-shop/base/front-end-svc.yaml +++ /dev/null @@ -1,15 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: front-end - labels: - name: front-end -spec: - type: LoadBalancer - ports: - - port: 80 - targetPort: 8079 - nodePort: 30001 - selector: - name: front-end diff --git a/sock-shop/base/orders-db-dep.yaml b/sock-shop/base/orders-db-dep.yaml deleted file mode 100644 index 30b7181..0000000 --- a/sock-shop/base/orders-db-dep.yaml +++ /dev/null @@ -1,41 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: orders-db - labels: - name: orders-db -spec: - replicas: 1 - selector: - matchLabels: - name: orders-db - template: - metadata: - labels: - name: orders-db - spec: - containers: - - name: orders-db - image: mongo - ports: - - name: mongo - containerPort: 27017 - securityContext: - capabilities: - drop: - - all - add: - - CHOWN - - SETGID - - SETUID - readOnlyRootFilesystem: true - volumeMounts: - - mountPath: /tmp - name: tmp-volume - volumes: - - name: tmp-volume - emptyDir: - medium: Memory - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/orders-db-svc.yaml b/sock-shop/base/orders-db-svc.yaml deleted file mode 100644 index 7ddd3bb..0000000 --- a/sock-shop/base/orders-db-svc.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: orders-db - labels: - name: orders-db -spec: - ports: - # the port that this service should serve on - - port: 27017 - targetPort: 27017 - selector: - name: orders-db diff --git a/sock-shop/base/orders-dep.yaml b/sock-shop/base/orders-dep.yaml deleted file mode 100644 index b31d9ad..0000000 --- a/sock-shop/base/orders-dep.yaml +++ /dev/null @@ -1,64 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: orders - labels: - name: orders -spec: - replicas: 1 - selector: - matchLabels: - name: orders - template: - metadata: - labels: - name: orders - spec: - containers: - - name: orders - image: weaveworksdemos/orders:0.4.7 - env: - - name: ZIPKIN - value: zipkin.jaeger.svc.cluster.local - - name: JAVA_OPTS - value: -Xms64m -Xmx128m -XX:PermSize=32m -XX:MaxPermSize=64m -XX:+UseG1GC -Djava.security.egd=file:/dev/urandom - resources: - limits: - cpu: 500m - memory: 500Mi - requests: - cpu: 200m - memory: 500Mi - ports: - - containerPort: 80 - securityContext: - runAsNonRoot: true - runAsUser: 10001 - capabilities: - drop: - - all - add: - - NET_BIND_SERVICE - readOnlyRootFilesystem: true - volumeMounts: - - mountPath: /tmp - name: tmp-volume - livenessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 300 - periodSeconds: 3 - readinessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 180 - periodSeconds: 3 - volumes: - - name: tmp-volume - emptyDir: - medium: Memory - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/orders-svc.yaml b/sock-shop/base/orders-svc.yaml deleted file mode 100644 index 6be52c4..0000000 --- a/sock-shop/base/orders-svc.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: orders - labels: - name: orders -spec: - ports: - # the port that this service should serve on - - port: 80 - targetPort: 80 - selector: - name: orders diff --git a/sock-shop/base/payment-dep.yaml b/sock-shop/base/payment-dep.yaml deleted file mode 100644 index 4477eea..0000000 --- a/sock-shop/base/payment-dep.yaml +++ /dev/null @@ -1,52 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: payment - labels: - name: payment -spec: - replicas: 1 - selector: - matchLabels: - name: payment - template: - metadata: - labels: - name: payment - spec: - containers: - - name: payment - image: weaveworksdemos/payment:0.4.3 - resources: - limits: - cpu: 100m - memory: 100Mi - requests: - cpu: 99m - memory: 100Mi - ports: - - containerPort: 80 - securityContext: - runAsNonRoot: true - runAsUser: 10001 - capabilities: - drop: - - all - add: - - NET_BIND_SERVICE - readOnlyRootFilesystem: true - livenessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 300 - periodSeconds: 3 - readinessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 180 - periodSeconds: 3 - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/payment-svc.yaml b/sock-shop/base/payment-svc.yaml deleted file mode 100644 index dbe8fcc..0000000 --- a/sock-shop/base/payment-svc.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: payment - labels: - name: payment -spec: - ports: - # the port that this service should serve on - - port: 80 - targetPort: 80 - selector: - name: payment diff --git a/sock-shop/base/queue-master-dep.yaml b/sock-shop/base/queue-master-dep.yaml deleted file mode 100644 index 626e69f..0000000 --- a/sock-shop/base/queue-master-dep.yaml +++ /dev/null @@ -1,48 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: queue-master - labels: - name: queue-master -spec: - replicas: 1 - selector: - matchLabels: - name: queue-master - template: - metadata: - labels: - name: queue-master - spec: - containers: - - name: queue-master - image: weaveworksdemos/queue-master:0.3.1 - env: - - name: ZIPKIN - value: zipkin.jaeger.svc.cluster.local - - name: JAVA_OPTS - value: -Xms64m -Xmx128m -XX:PermSize=32m -XX:MaxPermSize=64m -XX:+UseG1GC -Djava.security.egd=file:/dev/urandom - resources: - limits: - cpu: 300m - memory: 500Mi - requests: - cpu: 300m - memory: 500Mi - ports: - - containerPort: 80 - livenessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 300 - periodSeconds: 3 - readinessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 180 - periodSeconds: 3 - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/queue-master-svc.yaml b/sock-shop/base/queue-master-svc.yaml deleted file mode 100644 index fa7a6ae..0000000 --- a/sock-shop/base/queue-master-svc.yaml +++ /dev/null @@ -1,16 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: queue-master - labels: - name: queue-master - annotations: - prometheus.io/path: "/prometheus" -spec: - ports: - # the port that this service should serve on - - port: 80 - targetPort: 80 - selector: - name: queue-master diff --git a/sock-shop/base/rabbitmq-dep.yaml b/sock-shop/base/rabbitmq-dep.yaml deleted file mode 100644 index 064c6f6..0000000 --- a/sock-shop/base/rabbitmq-dep.yaml +++ /dev/null @@ -1,44 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: rabbitmq - labels: - name: rabbitmq -spec: - replicas: 1 - selector: - matchLabels: - name: rabbitmq - template: - metadata: - labels: - name: rabbitmq - annotations: - prometheus.io/scrape: "false" - spec: - containers: - - name: rabbitmq - image: rabbitmq:3.6.8-management - ports: - - containerPort: 15672 - name: management - - containerPort: 5672 - name: rabbitmq - securityContext: - capabilities: - drop: - - all - add: - - CHOWN - - SETGID - - SETUID - - DAC_OVERRIDE - readOnlyRootFilesystem: true - - name: rabbitmq-exporter - image: kbudde/rabbitmq-exporter - ports: - - containerPort: 9090 - name: exporter - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/rabbitmq-svc.yaml b/sock-shop/base/rabbitmq-svc.yaml deleted file mode 100644 index 322513c..0000000 --- a/sock-shop/base/rabbitmq-svc.yaml +++ /dev/null @@ -1,19 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: rabbitmq - labels: - name: rabbitmq -spec: - ports: - # the port that this service should serve on - - port: 5672 - name: rabbitmq - targetPort: 5672 - - port: 9090 - name: exporter - targetPort: exporter - protocol: TCP - selector: - name: rabbitmq diff --git a/sock-shop/base/session-db-dep.yaml b/sock-shop/base/session-db-dep.yaml deleted file mode 100644 index 85cfed9..0000000 --- a/sock-shop/base/session-db-dep.yaml +++ /dev/null @@ -1,36 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: session-db - labels: - name: session-db -spec: - replicas: 1 - selector: - matchLabels: - name: session-db - template: - metadata: - labels: - name: session-db - annotations: - prometheus.io.scrape: "false" - spec: - containers: - - name: session-db - image: redis:alpine - ports: - - name: redis - containerPort: 6379 - securityContext: - capabilities: - drop: - - all - add: - - CHOWN - - SETGID - - SETUID - readOnlyRootFilesystem: true - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/session-db-svc.yaml b/sock-shop/base/session-db-svc.yaml deleted file mode 100644 index a792ea4..0000000 --- a/sock-shop/base/session-db-svc.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: session-db - labels: - name: session-db -spec: - ports: - # the port that this service should serve on - - port: 6379 - targetPort: 6379 - selector: - name: session-db diff --git a/sock-shop/base/shipping-dep.yaml b/sock-shop/base/shipping-dep.yaml deleted file mode 100644 index af8d90b..0000000 --- a/sock-shop/base/shipping-dep.yaml +++ /dev/null @@ -1,64 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: shipping - labels: - name: shipping -spec: - replicas: 1 - selector: - matchLabels: - name: shipping - template: - metadata: - labels: - name: shipping - spec: - containers: - - name: shipping - image: weaveworksdemos/shipping:0.4.8 - env: - - name: ZIPKIN - value: zipkin.jaeger.svc.cluster.local - - name: JAVA_OPTS - value: -Xms64m -Xmx128m -XX:PermSize=32m -XX:MaxPermSize=64m -XX:+UseG1GC -Djava.security.egd=file:/dev/urandom - resources: - limits: - cpu: 300m - memory: 500Mi - requests: - cpu: 300m - memory: 500Mi - ports: - - containerPort: 80 - securityContext: - runAsNonRoot: true - runAsUser: 10001 - capabilities: - drop: - - all - add: - - NET_BIND_SERVICE - readOnlyRootFilesystem: true - volumeMounts: - - mountPath: /tmp - name: tmp-volume - livenessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 300 - periodSeconds: 3 - readinessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 180 - periodSeconds: 3 - volumes: - - name: tmp-volume - emptyDir: - medium: Memory - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/shipping-svc.yaml b/sock-shop/base/shipping-svc.yaml deleted file mode 100644 index aac156c..0000000 --- a/sock-shop/base/shipping-svc.yaml +++ /dev/null @@ -1,15 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: shipping - labels: - name: shipping -spec: - ports: - # the port that this service should serve on - - port: 80 - targetPort: 80 - selector: - name: shipping - diff --git a/sock-shop/base/user-db-dep.yaml b/sock-shop/base/user-db-dep.yaml deleted file mode 100644 index 41ec058..0000000 --- a/sock-shop/base/user-db-dep.yaml +++ /dev/null @@ -1,42 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: user-db - labels: - name: user-db -spec: - replicas: 1 - selector: - matchLabels: - name: user-db - template: - metadata: - labels: - name: user-db - spec: - containers: - - name: user-db - image: weaveworksdemos/user-db:0.3.0 - - ports: - - name: mongo - containerPort: 27017 - securityContext: - capabilities: - drop: - - all - add: - - CHOWN - - SETGID - - SETUID - readOnlyRootFilesystem: true - volumeMounts: - - mountPath: /tmp - name: tmp-volume - volumes: - - name: tmp-volume - emptyDir: - medium: Memory - nodeSelector: - beta.kubernetes.io/os: linux \ No newline at end of file diff --git a/sock-shop/base/user-db-svc.yaml b/sock-shop/base/user-db-svc.yaml deleted file mode 100644 index ace9d1a..0000000 --- a/sock-shop/base/user-db-svc.yaml +++ /dev/null @@ -1,15 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: user-db - labels: - name: user-db -spec: - ports: - # the port that this service should serve on - - port: 27017 - targetPort: 27017 - selector: - name: user-db - diff --git a/sock-shop/base/user-dep.yaml b/sock-shop/base/user-dep.yaml deleted file mode 100644 index 228ad3e..0000000 --- a/sock-shop/base/user-dep.yaml +++ /dev/null @@ -1,55 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: user - labels: - name: user -spec: - replicas: 1 - selector: - matchLabels: - name: user - template: - metadata: - labels: - name: user - spec: - containers: - - name: user - image: weaveworksdemos/user:0.4.7 - resources: - limits: - cpu: 300m - memory: 100Mi - requests: - cpu: 100m - memory: 100Mi - ports: - - containerPort: 80 - env: - - name: MONGO_HOST - value: user-db:27017 - securityContext: - runAsNonRoot: true - runAsUser: 10001 - capabilities: - drop: - - all - add: - - NET_BIND_SERVICE - readOnlyRootFilesystem: true - livenessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 300 - periodSeconds: 3 - readinessProbe: - httpGet: - path: /health - port: 80 - initialDelaySeconds: 180 - periodSeconds: 3 - nodeSelector: - beta.kubernetes.io/os: linux diff --git a/sock-shop/base/user-svc.yaml b/sock-shop/base/user-svc.yaml deleted file mode 100644 index f01c118..0000000 --- a/sock-shop/base/user-svc.yaml +++ /dev/null @@ -1,15 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: user - labels: - name: user -spec: - ports: - # the port that this service should serve on - - port: 80 - targetPort: 80 - selector: - name: user - diff --git a/sock-shop/kustomization.yaml b/sock-shop/kustomization.yaml deleted file mode 100644 index bcc3578..0000000 --- a/sock-shop/kustomization.yaml +++ /dev/null @@ -1,28 +0,0 @@ -resources: -- base/carts-db-dep.yaml -- base/carts-db-svc.yaml -- base/carts-dep.yaml -- base/catalogue-db-dep.yaml -- base/catalogue-db-svc.yaml -- base/catalogue-dep.yaml -- base/catalogue-svc.yaml -- base/front-end-dep.yaml -- base/front-end-svc.yaml -- base/orders-db-dep.yaml -- base/orders-db-svc.yaml -- base/orders-dep.yaml -- base/orders-svc.yaml -- base/payment-dep.yaml -- base/payment-svc.yaml -- base/queue-master-dep.yaml -- base/queue-master-svc.yaml -- base/rabbitmq-dep.yaml -- base/rabbitmq-svc.yaml -- base/session-db-dep.yaml -- base/session-db-svc.yaml -- base/shipping-dep.yaml -- base/shipping-svc.yaml -- base/user-db-dep.yaml -- base/user-db-svc.yaml -- base/user-dep.yaml -- base/user-svc.yaml \ No newline at end of file diff --git a/sync-waves/manifests.yaml b/sync-waves/manifests.yaml deleted file mode 100644 index 8f39133..0000000 --- a/sync-waves/manifests.yaml +++ /dev/null @@ -1,114 +0,0 @@ ---- -apiVersion: batch/v1 -kind: Job -metadata: - generateName: upgrade-sql-schema - annotations: - argocd.argoproj.io/hook: PreSync -spec: - template: - spec: - containers: - - name: upgrade-sql-schema - image: alpine:latest - command: ["sleep", "5"] - restartPolicy: Never ---- -apiVersion: apps/v1 -kind: ReplicaSet -metadata: - name: backend -spec: - replicas: 1 - selector: - matchLabels: - tier: backend - template: - metadata: - labels: - tier: backend - spec: - containers: - - name: main - image: nginx:latest ---- -apiVersion: v1 -kind: Service -metadata: - name: backend -spec: - selector: - tier: backend - ports: - - protocol: TCP - port: 8080 - targetPort: 8080 ---- -apiVersion: batch/v1 -kind: Job -metadata: - name: maint-page-up - annotations: - argocd.argoproj.io/hook: Sync - argocd.argoproj.io/hook-delete-policy: BeforeHookCreation - argocd.argoproj.io/sync-wave: "1" -spec: - template: - spec: - containers: - - name: page-up - image: alpine:latest - command: ["sleep", "2"] - restartPolicy: Never - backoffLimit: 0 ---- -apiVersion: apps/v1 -kind: ReplicaSet -metadata: - name: frontend - annotations: - argocd.argoproj.io/sync-wave: "2" -spec: - replicas: 1 - selector: - matchLabels: - tier: frontend - template: - metadata: - labels: - tier: frontend - spec: - containers: - - name: main - image: nginx:latest ---- -apiVersion: v1 -kind: Service -metadata: - name: frontend - annotations: - argocd.argoproj.io/sync-wave: "2" -spec: - selector: - tier: frontend - ports: - - protocol: TCP - port: 80 - targetPort: 80 ---- -apiVersion: batch/v1 -kind: Job -metadata: - name: maint-page-down - annotations: - argocd.argoproj.io/hook: Sync - argocd.argoproj.io/hook-delete-policy: BeforeHookCreation - argocd.argoproj.io/sync-wave: "3" -spec: - template: - spec: - containers: - - name: page-down - image: alpine:latest - command: ["sleep", "2"] - restartPolicy: Never