changeset 6:d3caeaf39d87

deploy with invoke & skaffold
author drewp@bigasterisk.com
date Mon, 12 Dec 2022 23:16:59 -0800
parents 0ae82df13719
children 0071c165e990
files 00-defs/skaffold.yaml 10-vols/skaffold.yaml 20-kube/skaffold.yaml 30-cert-manager/skaffold.yaml skaffold.yaml tasks.py
diffstat 6 files changed, 69 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/00-defs/skaffold.yaml	Mon Dec 12 23:16:59 2022 -0800
@@ -0,0 +1,11 @@
+apiVersion: skaffold/v3
+kind: Config
+metadata:
+  name: pomerium
+manifests:
+  rawYaml:
+    - 00-namespace.yaml
+    - 01-crd.yaml
+    - 02-roles.yaml
+    - 49-cert-manager-crd.yaml
+    - 49-cert-manager-roles.yaml
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/10-vols/skaffold.yaml	Mon Dec 12 23:16:59 2022 -0800
@@ -0,0 +1,8 @@
+apiVersion: skaffold/v3
+kind: Config
+metadata:
+  name: pomerium
+manifests:
+  rawYaml:
+    - volumes.yaml
+    - claims.yaml
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/20-kube/skaffold.yaml	Mon Dec 12 23:16:59 2022 -0800
@@ -0,0 +1,10 @@
+apiVersion: skaffold/v3
+kind: Config
+metadata:
+  name: pomerium
+manifests:
+  rawYaml:
+    - 05-idp-secret.yaml
+    - 10-pom-pom.yaml
+    - 20-pom-deploy.yaml
+    - 21-pom-svc.yaml
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/30-cert-manager/skaffold.yaml	Mon Dec 12 23:16:59 2022 -0800
@@ -0,0 +1,10 @@
+apiVersion: skaffold/v3
+kind: Config
+metadata:
+  name: pomerium
+manifests:
+  rawYaml:
+    - 50-cert-manager.yaml
+    - 51-pomerium-production-issuer.yaml
+    - 51-pomerium-staging-issuer.yaml
+    - 60-auth-cert.yaml
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/skaffold.yaml	Mon Dec 12 23:16:59 2022 -0800
@@ -0,0 +1,8 @@
+apiVersion: skaffold/v3
+kind: Config
+metadata:
+  name: pomerium
+manifests:
+  rawYaml:
+  - ingress-default.yaml
+  - ingress-static.yaml
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tasks.py	Mon Dec 12 23:16:59 2022 -0800
@@ -0,0 +1,22 @@
+from invoke import task
+from invoke.exceptions import UnexpectedExit
+@task
+def delete(ctx):
+    ctx.run("cd 30-cert-manager; skaffold delete")
+    ctx.run("cd 20-kube; skaffold delete")
+    ctx.run("cd 10-vols; skaffold delete")
+    ctx.run("cd 00-defs; skaffold delete")
+
+@task
+def run(ctx):
+    ctx.run("cd 00-defs; skaffold run", echo=True)
+    ctx.run("cd 10-vols; skaffold run", echo=True)
+    ctx.run("cd 20-kube; skaffold run", echo=True)
+    # here we must wait for cert-manager-webhook.cert-manager.svc
+    ctx.run("cd 30-cert-manager; skaffold run", echo=True, warn=True)
+    ctx.run("cd 30-cert-manager; skaffold run", echo=True)
+
+    try:
+        ctx.run("kubectl get -n pomerium ingress | grep 80")
+    except UnexpectedExit:
+        raise SystemExit("expected cm-acme-http-solver-... ingress on port 80")