-
name: sync_site
-
on:
workflow_run:
workflows: [pages-build-deployment]
types: [completed]
-
+env:
+ SYNC_SECRET: ${{ secrets.SYNC_SECRET }}
+ SYNC_COMMAND: ${{ secrets.SYNC_COMMAND }}
jobs:
sync:
runs-on: ubuntu-latest
steps:
+ - run: umask 0077 && echo "${{ env.SYNC_SECRET }}" >/tmp/sync_secret
- uses: actions/github-script@v5
- id: shitshow
with:
- result-encoding: string
script: |
- console.log(context);
const artifact_id = await github.rest.actions.listWorkflowRunArtifacts({
owner: context.repo.owner,
repo: context.repo.repo,
- run_id: context.payload.event.workflow.run_id,
+ run_id: context.payload.workflow_run.id,
per_page: 1,
});
- console.log(artifact_id);
- const artifact_url = await github.rest.actions.downloadArtifact({
+ const artifact = await github.rest.actions.downloadArtifact({
owner: context.repo.owner,
repo: context.repo.repo,
artifact_id: artifact_id.data.artifacts[0].id,
archive_format: "zip",
});
- console.log(artifact_url);
- return artifact_url.headers["location"];
- - run: curl -sSLO ${{ steps.shitshow.outputs.result }}
- - run: ls -al
-
+ await exec.exec(process.env.SYNC_COMMAND, [], {
+ input: Buffer.from(artifact.data)
+ });