@@ -15,20 +15,16 @@ jobs:
15
15
runs-on : ubuntu-latest
16
16
steps :
17
17
- uses : actions/checkout@v4
18
- - uses : denoland/setup-deno@v1
19
- with :
20
- deno-version : v1.36.x
18
+ - uses : ./.github/actions/setup-deno-with-cache
21
19
- id : fmt
22
- run : deno fmt
20
+ run : deno fmt --check
23
21
- id : lint
24
22
run : deno lint
25
23
check-dist :
26
24
runs-on : ubuntu-latest
27
25
steps :
28
26
- uses : actions/checkout@v4
29
- - uses : denoland/setup-deno@v1
30
- with :
31
- deno-version : v1.36.x
27
+ - uses : ./.github/actions/setup-deno-with-cache
32
28
- name : Rebuild the dist/ directory
33
29
run : deno task bundle
34
30
- name : Compare the expected and actual dist/ directories
@@ -38,25 +34,35 @@ jobs:
38
34
git diff
39
35
exit 1
40
36
fi
37
+ # post processes
38
+ - name : Upload dist for post job
39
+ if : ${{ always() }}
40
+ uses : actions/upload-artifact@v3
41
+ with :
42
+ name : js_dist
43
+ path : |
44
+ dist/
45
+ action.yml
41
46
- name : Create dist/*.js size json
47
+ if : ${{ always() }}
42
48
run : |
43
49
find ./dist -type f -printf '%s %f\n' \
44
50
| jq -n -R '{name: "dist_size", key: "dist_size", metrics: [inputs | capture("(?<value>\\S+)\\s+(?<key>.+)") + {unit: "byte"} | .value |= tonumber | .name = .key ]}' \
45
51
> dist_js_sizes.json
46
52
cat dist_js_sizes.json
47
53
# octocov must needs some coverage files but this job don't exec test, so put dummy file.
48
54
- name : Create dummy coverage
55
+ if : ${{ always() }}
49
56
run : touch coverage.out
50
57
- uses : k1LoW/octocov-action@v0
58
+ if : ${{ always() }}
51
59
env :
52
60
OCTOCOV_CUSTOM_METRICS_DIST_JS : dist_js_sizes.json
53
61
test :
54
62
runs-on : ubuntu-latest
55
63
steps :
56
64
- uses : actions/checkout@v4
57
- - uses : denoland/setup-deno@v1
58
- with :
59
- deno-version : v1.36.x
65
+ - uses : ./.github/actions/setup-deno-with-cache
60
66
- id : test
61
67
run : deno test
62
68
65
71
if : ${{ always() }}
66
72
needs : [ check, check-dist, test ]
67
73
steps :
68
- - uses : actions/checkout@v4
69
- - uses : denoland/setup-deno@v1
74
+ - name : Download bundled dist
75
+ uses : actions/download-artifact@v3
70
76
with :
71
- deno-version : v1.36.x
72
- - run : deno task bundle
77
+ name : js_dist
73
78
- name : Run self action
74
79
uses : ./
0 commit comments