Sfoglia il codice sorgente

Add more environments to guestbook. Add README content

Jesse Suen 6 anni fa
parent
commit
e3a5ac20fc

+ 11 - 0
README.md

@@ -1 +1,12 @@
 # ArgoCD Example Apps
+
+This repository contains example ksonnet 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/) | The ksonnet hello word application |
+| [pre-post-sync](pre-post-sync/) | Demonstrates ArgoCD PreSync and PostSync hooks |
+| [blue-green-deploy](blue-green-deploy/) | Demonstrates an ArgoCD Sync hook which performs a blue/green deployment |
+| [sock-shop](sock-shop/) | A microservices demo application (https://microservices-demo.github.io) |

+ 12 - 0
guestbook/app.yaml

@@ -6,6 +6,18 @@ environments:
       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

+ 2 - 0
guestbook/environments/dev/globals.libsonnet

@@ -0,0 +1,2 @@
+{
+}

+ 8 - 0
guestbook/environments/dev/main.jsonnet

@@ -0,0 +1,8 @@
+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"})
+}

+ 17 - 0
guestbook/environments/dev/params.libsonnet

@@ -0,0 +1,17 @@
+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)
+  },
+}

+ 2 - 0
guestbook/environments/prod/globals.libsonnet

@@ -0,0 +1,2 @@
+{
+}

+ 8 - 0
guestbook/environments/prod/main.jsonnet

@@ -0,0 +1,8 @@
+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"})
+}

+ 17 - 0
guestbook/environments/prod/params.libsonnet

@@ -0,0 +1,17 @@
+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)
+  },
+}

+ 3 - 2
pre-post-sync/components/post-sync-job.yaml

@@ -4,12 +4,13 @@ metadata:
   generateName: after-
   annotations:
     argocd.argoproj.io/hook: PostSync
+    argocd.argoproj.io/hook-delete-policy: OnSuccess
 spec:
   template:
     spec:
       containers:
       - name: sleep
         image: alpine:latest
-        command: ["sleep", "30"]
+        command: ["sleep", "20"]
       restartPolicy: Never
-  backoffLimit: 4
+  backoffLimit: 0

+ 3 - 2
pre-post-sync/components/pre-sync-job.yaml

@@ -4,12 +4,13 @@ metadata:
   generateName: before-
   annotations:
     argocd.argoproj.io/hook: PreSync
+    argocd.argoproj.io/hook-delete-policy: OnSuccess
 spec:
   template:
     spec:
       containers:
       - name: sleep
         image: alpine:latest
-        command: ["sleep", "30"]
+        command: ["sleep", "20"]
       restartPolicy: Never
-  backoffLimit: 4
+  backoffLimit: 0