From 5e71ab6395b5ff54c4ec47fbe144cba9acefe198 Mon Sep 17 00:00:00 2001 From: Alexander Matyushentsev Date: Wed, 11 Oct 2017 09:31:51 -0700 Subject: [PATCH] Automate helm publishing --- .argo/argo-checkout.yaml | 21 +++++++++++++++ .argo/publish.yaml | 58 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 79 insertions(+) create mode 100644 .argo/argo-checkout.yaml create mode 100644 .argo/publish.yaml diff --git a/.argo/argo-checkout.yaml b/.argo/argo-checkout.yaml new file mode 100644 index 00000000..d7280c3b --- /dev/null +++ b/.argo/argo-checkout.yaml @@ -0,0 +1,21 @@ +--- +type: container +version: 1 +name: argo-checkout +description: Checks out a source repository to /src +resources: + mem_mib: 500 + cpu_cores: 0.1 +image: argoproj/argoscm:v2.0 +command: ["axscm"] +args: ["clone", "%%inputs.parameters.REPO%%", "/src", "--commit", "%%inputs.parameters.COMMIT%%"] +inputs: + parameters: + COMMIT: + default: "%%session.commit%%" + REPO: + default: "%%session.repo%%" +outputs: + artifacts: + CODE: + path: /src diff --git a/.argo/publish.yaml b/.argo/publish.yaml new file mode 100644 index 00000000..e38a024f --- /dev/null +++ b/.argo/publish.yaml @@ -0,0 +1,58 @@ +--- +type: workflow +version: 1 +name: Publish Charts +inputs: + parameters: + COMMIT: + default: "%%session.commit%%" + REPO: + default: "%%session.repo%%" +steps: +- CHECKOUT: + template: argo-checkout +- PREPARE: + image: ruby + resources: + mem_mib: 500 + cpu_cores: 0.1 + command: ["sh", "-c"] + args: [ruby /src/scripts/publish.rb] + inputs: + artifacts: + CODE: + from: "%%steps.CHECKOUT.outputs.artifacts.CODE%%" + path: /src + outputs: + artifacts: + CODE: + path: /src/output +- PUBLISH: + image: argoproj/argoscm:v2.0 + command: ["sh", "-c"] + args: [ + axscm clone %%inputs.parameters.REPO%% --commit gh-pages /src && cd /src && cp -r /output/* . && + git add . && git commit -m "Build on `date`" && + axscm clone %%inputs.parameters.REPO%% /src --commit gh-pages --merge=gh-pages --push] + resources: + mem_mib: 500 + cpu_cores: 0.1 + inputs: + artifacts: + CODE: + from: "%%steps.PREPARE.outputs.artifacts.CODE%%" + path: /output + +--- +type: policy +version: 1 +name: Publish Charts Policy +template: Publish Charts +notifications: +- when: + - on_failure + whom: + - committer + - author +when: +- event: on_push