11name : ci
22
3- on : [push]
3+ on :
4+ push :
5+ branches :
6+ - main
7+ pull_request :
8+ branches :
9+ - main
410
511jobs :
612 fmt :
713 runs-on : ubuntu-latest
814 steps :
9- - uses : actions/checkout@v1
15+ - uses : actions/checkout@v2
1016 - name : Run ./ci/steps/fmt.sh
1117 uses : ./ci/images/debian10
1218 with :
@@ -15,20 +21,28 @@ jobs:
1521 lint :
1622 runs-on : ubuntu-latest
1723 steps :
18- - uses : actions/checkout@v1
24+ - uses : actions/checkout@v2
1925 - name : Run ./ci/steps/lint.sh
2026 uses : ./ci/images/debian10
2127 with :
2228 args : ./ci/steps/lint.sh
2329
24- test :
30+ test-unit :
31+ runs-on : ubuntu-latest
32+ steps :
33+ - uses : actions/checkout@v1
34+ - name : Run unit tests
35+ uses : ./ci/images/debian10
36+ with :
37+ args : ./ci/steps/test-unit.sh
38+ test-e2e :
2539 needs : linux-amd64
2640 runs-on : ubuntu-latest
2741 env :
2842 PASSWORD : e45432jklfdsab
2943 CODE_SERVER_ADDRESS : http://localhost:8080
3044 steps :
31- - uses : actions/checkout@v1
45+ - uses : actions/checkout@v2
3246 - name : Download release packages
3347 uses : actions/download-artifact@v2
3448 with :
@@ -38,24 +52,24 @@ jobs:
3852 run : |
3953 cd release-packages && tar -xzf code-server*-linux-amd64.tar.gz
4054 - uses : microsoft/playwright-github-action@v1
41- - name : Install dependencies and run tests
55+ - name : Install dependencies and run end-to-end tests
4256 run : |
4357 ./release-packages/code-server*-linux-amd64/bin/code-server &
4458 yarn --frozen-lockfile
45- yarn test
59+ yarn test:e2e
4660 - name : Upload test artifacts
4761 if : always()
4862 uses : actions/upload-artifact@v2
4963 with :
5064 name : test-videos
51- path : ./test/videos
65+ path : ./test/e2e/ videos
5266 - name : Remove release packages and test artifacts
53- run : rm -rf ./release-packages ./test/videos
67+ run : rm -rf ./release-packages ./test/e2e/ videos
5468
5569 release :
5670 runs-on : ubuntu-latest
5771 steps :
58- - uses : actions/checkout@v1
72+ - uses : actions/checkout@v2
5973 - name : Run ./ci/steps/release.sh
6074 uses : ./ci/images/debian10
6175 with :
7084 needs : release
7185 runs-on : ubuntu-latest
7286 steps :
73- - uses : actions/checkout@v1
87+ - uses : actions/checkout@v2
7488 - name : Download npm package
7589 uses : actions/download-artifact@v2
7690 with :
90104 needs : release
91105 runs-on : ubuntu-arm64-latest
92106 steps :
93- - uses : actions/checkout@v1
107+ - uses : actions/checkout@v2
94108 - name : Download npm package
95109 uses : actions/download-artifact@v2
96110 with :
@@ -111,8 +125,10 @@ jobs:
111125 macos-amd64 :
112126 needs : release
113127 runs-on : macos-latest
128+ # This job requires secrets, so can only run on the default branch
129+ if : github.ref == 'refs/heads/main'
114130 steps :
115- - uses : actions/checkout@v1
131+ - uses : actions/checkout@v2
116132 - name : Download npm package
117133 uses : actions/download-artifact@v2
118134 with :
@@ -133,7 +149,7 @@ jobs:
133149 runs-on : ubuntu-latest
134150 needs : linux-amd64
135151 steps :
136- - uses : actions/checkout@v1
152+ - uses : actions/checkout@v2
137153 - name : Download release package
138154 uses : actions/download-artifact@v2
139155 with :
@@ -153,7 +169,7 @@ jobs:
153169 runs-on : ubuntu-arm64-latest
154170 needs : linux-arm64
155171 steps :
156- - uses : actions/checkout@v1
172+ - uses : actions/checkout@v2
157173 - name : Download release package
158174 uses : actions/download-artifact@v2
159175 with :
0 commit comments