-
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:
- - uses: dawidd6/action-download-artifact@v2
+ - run: umask 0077 && echo "${{ env.SYNC_SECRET }}" >/tmp/sync_secret
+ - uses: actions/github-script@v5
with:
- workflow: pages-build-deployment
- workflow_conclusion: success
- name: github-pages
- - run: tar tf artifact.tar
-
+ script: |
+ const artifact_id = await github.rest.actions.listWorkflowRunArtifacts({
+ owner: context.repo.owner,
+ repo: context.repo.repo,
+ run_id: context.payload.workflow_run.id,
+ per_page: 1,
+ });
+ 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",
+ });
+ await exec.exec(process.env.SYNC_COMMAND, [], {
+ input: Buffer.from(artifact.data)
+ });