@@ -13,62 +13,53 @@ jobs:
13
13
github.event.workflow_run.event == 'pull_request' &&
14
14
github.event.workflow_run.conclusion == 'success'
15
15
outputs :
16
- imagename : ${{ steps.extract_image .outputs.imagename }}
16
+ imagename : ${{ steps.extract_image_name .outputs.imagename }}
17
17
steps :
18
18
- name : Download PR Image
19
19
uses : actions/github-script@v7
20
20
with :
21
21
script : |
22
- var artifacts = await github.actions.listWorkflowRunArtifacts({
22
+ var artifacts = await github.rest. actions.listWorkflowRunArtifacts({
23
23
owner: context.repo.owner,
24
24
repo: context.repo.repo,
25
25
run_id: ${{github.event.workflow_run.id }},
26
26
});
27
27
var matchArtifact = artifacts.data.artifacts.filter((artifact) => {
28
28
return artifact.name == "pr"
29
29
})[0];
30
- var download = await github.actions.downloadArtifact({
30
+ var download = await github.rest. actions.downloadArtifact({
31
31
owner: context.repo.owner,
32
32
repo: context.repo.repo,
33
33
artifact_id: matchArtifact.id,
34
34
archive_format: 'zip',
35
35
});
36
36
var fs = require('fs');
37
37
fs.writeFileSync('${{github.workspace}}/pr.zip', Buffer.from(download.data));
38
- - run : ls -hal
39
38
- name : Unzip PR Image
40
39
run : |
41
40
unzip pr.zip
42
- - run : ls -hal
43
41
- name : Check PR Metadata
44
42
run : |
45
- cat ./pr/ prnumber
46
- cat ./pr/ branchname
47
- cat ./pr/ imagename
43
+ cat ./prnumber
44
+ cat ./branchname
45
+ cat ./imagename
48
46
- name : Extract image name
49
47
shell : bash
50
- run : echo "imagename="$(cat test )"" | tr / - >> $GITHUB_OUTPUT
51
- id : extract_image
48
+ run : echo "imagename="$(cat imagename )"" - >> $GITHUB_OUTPUT
49
+ id : extract_image_name
52
50
- name : Load PR Image
53
51
run : |
54
- docker load --input ./pr/ untrusted-pr-image.tar
52
+ docker load --input ./untrusted-pr-image.tar
55
53
docker image ls -a
56
54
57
- - name : Set up Docker Buildx
58
- uses : docker/setup-buildx-action@v3
59
55
- name : Login to DockerHub
60
56
uses : docker/login-action@v3
61
57
with :
62
58
username : ${{ secrets.DOCKERHUB_USERNAME }}
63
59
password : ${{ secrets.DOCKERHUB_TOKEN }}
64
- - name : Build and Push
65
- id : docker_build
66
- uses : docker/build-push-action@v6
67
- with :
68
- file : docker/Dockerfile
69
- push : true
70
- tags : ${{ steps.extract_image.outputs.imagename }}
71
-
60
+ - name : Push docker image to DockerHub
61
+ run : |
62
+ docker push ${{ steps.extract_image_name.outputs.imagename }}
72
63
comment_docker_image :
73
64
needs : upload-docker-pr
74
65
runs-on : ubuntu-latest
82
73
issue_number: context.issue.number,
83
74
owner: context.repo.owner,
84
75
repo: context.repo.repo,
85
- body: 'Created image with name `${{ needs.upload-docker-pr.outputs.imagename }}`.'
76
+ body: 'Created image with name `${{ needs.upload-docker-pr.outputs.imagename }}`. WARNING: run this at your own risk - it is an untrusted PR. '
86
77
})
0 commit comments