From e29f49358e4c42e8e9f56f86ee842d3d458a22cd Mon Sep 17 00:00:00 2001 From: alongwill Date: Wed, 6 Jul 2022 21:36:17 +0100 Subject: [PATCH 1/4] comment --- .github/workflows/issue_comment.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/issue_comment.yml b/.github/workflows/issue_comment.yml index 7960adf..4e15c48 100644 --- a/.github/workflows/issue_comment.yml +++ b/.github/workflows/issue_comment.yml @@ -1,4 +1,4 @@ -# +# Attempt to understand how this works name: Invoke PR comment Workflow on: From 2cb29ce178efa0937144a508579f6f6297738af0 Mon Sep 17 00:00:00 2001 From: alongwill Date: Fri, 8 Jul 2022 12:41:42 +0100 Subject: [PATCH 2/4] Test JSON --- .github/workflows/workflow_dispatch.yml | 29 ++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/.github/workflows/workflow_dispatch.yml b/.github/workflows/workflow_dispatch.yml index f7e676e..51d3af6 100644 --- a/.github/workflows/workflow_dispatch.yml +++ b/.github/workflows/workflow_dispatch.yml @@ -2,7 +2,7 @@ name: A workflow for my Hello World file on: workflow_dispatch: jobs: - build: + test-show-inside-container: name: Show what is inside a container runs-on: ubuntu-latest steps: @@ -20,3 +20,30 @@ jobs: - run: | # If FOO is set from action-b then env vars ARE persisted echo "FOO=${FOO}" + + test-json: + name: Test passing JSON as an environment variable + runs-on: ubuntu-latest + steps: + - name: Prepare JSON + run: | + CONFIGURATION=' + { + "webapp-service" : { + "ENTRYPOINT_K8S_API_URL": "api-::ephemeral_string::.k8s-green.eu-west-1.non-prod.mydomain.net", + "ENTRYPOINT_K8S_STATIC_PATH":" www-::ephemeral_string::.k8s-green.eu-west-1.non-prod.mydomain.net", + "ENTRYPOINT_K8S_BASE_URL": "www-::ephemeral_string::.k8s-green.eu-west-1.non-prod.mydomain.net" + }, + "homepage-service" : { + "ENTRYPOINT_K8S_API_URL": "api-::ephemeral_string::.k8s-green.eu-west-1.non-prod.mydomain.net", + "ENTRYPOINT_K8S_WWW_URL": "www-::ephemeral_string::.k8s-green.eu-west-1.non-prod.mydomain.net" + }, + "website-service" : { + "COOKIE_DOMAIN" : "mydomain.net" + } + }' + echo $CONFIGURATION | jq --compact-output . + # TODO: + # Store as env var + # Use jq to subsequently extract particular config + # Scrap this approach and use a .yaml file? \ No newline at end of file From bab2222ac262abf6a28307319d0c5e891161d2d0 Mon Sep 17 00:00:00 2001 From: alongwill Date: Fri, 8 Jul 2022 13:25:28 +0100 Subject: [PATCH 3/4] Error handling --- .github/workflows/workflow_dispatch.yml | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/.github/workflows/workflow_dispatch.yml b/.github/workflows/workflow_dispatch.yml index 51d3af6..5209e57 100644 --- a/.github/workflows/workflow_dispatch.yml +++ b/.github/workflows/workflow_dispatch.yml @@ -21,7 +21,25 @@ jobs: # If FOO is set from action-b then env vars ARE persisted echo "FOO=${FOO}" - test-json: + test-error-throw: + name: Test how to handle errors + runs-on: ubuntu-latest + steps: + - name: top the action running + run: | + exit 1 + + test-error-handle: + needs: test-error-throw + if : ${{ always() && needs.test-error.result=='failure' }} + name: Test handling errors + runs-on: ubuntu-latest + steps: + - name: Handle the errors + run: | + echo "I'm going to handle the error!" + + test-json-as-env-var: name: Test passing JSON as an environment variable runs-on: ubuntu-latest steps: From 4c5464829f665fb57b6da0e098790508dbbf7807 Mon Sep 17 00:00:00 2001 From: alongwill Date: Sat, 9 Jul 2022 09:00:05 +0000 Subject: [PATCH 4/4] Update script tests --- .github/workflows/github_script.yml | 39 +++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 .github/workflows/github_script.yml diff --git a/.github/workflows/github_script.yml b/.github/workflows/github_script.yml new file mode 100644 index 0000000..106148b --- /dev/null +++ b/.github/workflows/github_script.yml @@ -0,0 +1,39 @@ +name: Test GitHub script +on: + workflow_dispatch: + +jobs: + build-container: + name: Test some script + runs-on: ubuntu-latest + steps: + - run: | + echo "Hello World" + + test-script: + needs: build-container + name: Test some script + runs-on: ubuntu-latest + steps: + - name: Test building a URL from github context + uses: actions/github-script@v6 + with: + script: | + const run_url = github.server_url + '/' + github.repository + '/actions/runs/' + github.run_id + message = "This is a message" + message += '\n' + run_url + console.log(message) + - name: Test using Environment variables within JavaScript + uses: actions/github-script@v6 + env: + FOO: BAR + with: + script: | + const { FOO } = process.env + if (`${FOO}` == 'BAR') { + console.log("True") + } + console.log('https://${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id}}') + console.log('needs.build-container.result = ${{ needs.build-container.result }}') + console.log(`FOO = ${FOO}`) + console.log(${{ github.server_url }}) \ No newline at end of file