88 branches :
99 - main
1010
11+ permissions :
12+ contents : read
13+ id-token : write
14+
1115jobs :
1216 lint :
13- runs-on : ubuntu-latest
17+ runs-on :
18+ group : databricks-protected-runner-group
19+ labels : linux-ubuntu-latest
1420 steps :
15- - uses : actions/checkout@v3
21+ - uses : actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
22+ - uses : actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
23+ with :
24+ node-version : 20
25+ - uses : ./.github/actions/setup-jfrog
1626 - name : Cache node modules
17- uses : actions/cache@v3
27+ uses : actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
1828 env :
1929 cache-name : cache-node-modules
2030 with :
3141 npm run lint
3242
3343 unit-test :
34- runs-on : ubuntu-latest
44+ runs-on :
45+ group : databricks-protected-runner-group
46+ labels : linux-ubuntu-latest
3547 strategy :
3648 matrix :
3749 # only LTS versions starting from the lowest we support
@@ -41,17 +53,18 @@ jobs:
4153 NYC_REPORT_DIR : coverage_unit_node${{ matrix.node-version }}
4254
4355 steps :
44- - uses : actions/setup-node@v4
56+ - uses : actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
4557 with :
4658 node-version : ${{ matrix.node-version }}
47- - uses : actions/checkout@v3
59+ - uses : actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
4860 - name : Set up Python 3.10 for Node 14
4961 if : ${{ matrix.node-version == '14' }}
50- uses : actions/setup-python@v4
62+ uses : actions/setup-python@7f4fc3e22c37d6ff65e88745f38bd3157c663f7c # v4
5163 with :
5264 python-version : ' 3.10'
65+ - uses : ./.github/actions/setup-jfrog
5366 - name : Cache node modules
54- uses : actions/cache@v3
67+ uses : actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
5568 with :
5669 path : ~/.npm
5770 key : ${{ runner.os }}-${{ matrix.node-version }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
@@ -65,14 +78,16 @@ jobs:
6578 npm run test
6679 - run : tar -cvf ${{ env.NYC_REPORT_DIR }}.tar ${{ env.NYC_REPORT_DIR }}
6780 - name : Store coverage report
68- uses : actions/upload-artifact@v4
81+ uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
6982 with :
7083 name : ${{ env.NYC_REPORT_DIR }}
7184 path : ${{ env.NYC_REPORT_DIR }}.tar
7285 retention-days : 1
7386
7487 e2e-test :
75- runs-on : ubuntu-latest
88+ runs-on :
89+ group : databricks-protected-runner-group
90+ labels : linux-ubuntu-latest
7691 environment : azure-prod
7792 env :
7893 E2E_HOST : ${{ secrets.DATABRICKS_HOST }}
@@ -86,9 +101,13 @@ jobs:
86101 NYC_REPORT_DIR : coverage_e2e
87102
88103 steps :
89- - uses : actions/checkout@v3
104+ - uses : actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
105+ - uses : actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
106+ with :
107+ node-version : 20
108+ - uses : ./.github/actions/setup-jfrog
90109 - name : Cache node modules
91- uses : actions/cache@v3
110+ uses : actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
92111 with :
93112 path : ~/.npm
94113 key : ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
@@ -102,30 +121,32 @@ jobs:
102121 NODE_OPTIONS="--max-old-space-size=4096" npm run e2e
103122 - run : tar -cvf ${{ env.NYC_REPORT_DIR }}.tar ${{ env.NYC_REPORT_DIR }}
104123 - name : Store coverage report
105- uses : actions/upload-artifact@v4
124+ uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
106125 with :
107126 name : ${{ env.NYC_REPORT_DIR }}
108127 path : ${{ env.NYC_REPORT_DIR }}.tar
109128 retention-days : 1
110129
111130 coverage :
112131 needs : [unit-test, e2e-test]
113- runs-on : ubuntu-latest
132+ runs-on :
133+ group : databricks-protected-runner-group
134+ labels : linux-ubuntu-latest
114135 env :
115136 cache-name : cache-node-modules
116137
117138 steps :
118- - uses : actions/checkout@v3
139+ - uses : actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
119140 - name : Cache node modules
120- uses : actions/cache@v3
141+ uses : actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
121142 with :
122143 path : ~/.npm
123144 key : ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
124145 restore-keys : |
125146 ${{ runner.os }}-build-${{ env.cache-name }}-
126147 ${{ runner.os }}-build-
127148 ${{ runner.os }}-
128- - uses : actions/download-artifact@v4
149+ - uses : actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
129150 with :
130151 pattern : coverage_*
131152 merge-multiple : true
@@ -135,7 +156,7 @@ jobs:
135156 rm coverage_*.tar
136157 - run : ls -la
137158 - name : Coverage
138- uses : codecov/codecov-action@v3
159+ uses : codecov/codecov-action@ab904c41d6ece82784817410c45d8b8c02684457 # v3
139160 with :
140161 token : ${{ secrets.CODECOV_TOKEN }}
141162 fail_ci_if_error : true
0 commit comments