chore: add a simple github action workflow

This commit is contained in:
blam
2021-01-28 00:01:55 +01:00
parent 542f82fa5e
commit 83a879c4cb
+57
View File
@@ -0,0 +1,57 @@
name: Tugboat E2E Tests
on: deployment_status
jobs:
run:
# When the deployment event is success
if: github.event.deployment_status.state == 'success'
name: Run test suite against tugboat
runs-on: ubuntu-latest
steps:
# Set an initial commit status message to indicate that the tests are
# running.
- name: set pending status
uses: actions/github-script@v3
with:
github-token: ${{secrets.GH_SERVICE_ACCOUNT_TOKEN}}
debug: true
script: |
return github.repos.createCommitStatus({
owner: context.repo.owner,
repo: context.repo.repo,
sha: context.sha,
state: 'pending',
context: 'Nightwatch.js tests',
description: 'Running tests',
target_url: "https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
});
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: '14'
- name: get deployment status
id: get-status-env
uses: actions/github-script@v3
with:
github-token: ${{secrets.GH_SERVICE_ACCOUNT_TOKEN}}
result-encoding: string
script: |
const result = await github.repos.getDeploymentStatus({
owner: context.repo.owner,
repo: context.repo.repo,
deployment_id: context.payload.deployment.id,
status_id: context.payload.deployment_status.id,
headers: {
'Accept': 'application/vnd.github.ant-man-preview+json'
},
});
console.log(result);
return result.data.environment_url;
- name: echo tugboat preview url
run: |
echo ${{ steps.get-status-env.outputs.result }}
# The first time you hit a Tugboat URL it can take a while to load, so
# we visit it once here to prime it. Otherwise the very first test
# will often timeout.
curl ${{ steps.get-status-env.outputs.result }}