1515 schedule :
1616 - cron : 0 0 * * 1-5
1717
18+ permissions :
19+ contents : read
20+
1821jobs :
1922 build :
2023 runs-on : ubuntu-latest
2124 name : Build
2225 steps :
2326 - name : Checkout
24- uses : actions/checkout@v3
27+ uses : actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
28+ with :
29+ persist-credentials : false
2530 - name : Setup node
26- uses : actions/setup-node@v3
31+ uses : actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
2732 with :
2833 node-version : ' 20'
2934 check-latest : false
30- - name : angular build cache
31- uses : actions/cache@v3
32- with :
33- path : ./.angular
34- key : angular-cache
35- - name : node_modules cache
36- uses : actions/cache@v3
37- id : node_modules_cache
38- with :
39- path : ./node_modules
40- key : ${{ runner.os }}-20-${{ hashFiles('package-lock.json') }}
41- restore-keys : |
42- ${{ runner.os }}-20-
4335 - name : Install deps
44- if : steps.node_modules_cache.outputs.cache-hit != 'true'
45- run : |
46- npm ci
36+ run : npm ci
4737 - name : Build
4838 run : ./tools/build.sh
4939 - name : ' Upload Artifact'
50- uses : actions/upload-artifact@v4
40+ uses : actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
5141 with :
5242 name : angularfire-${{ github.run_id }}
5343 path : dist
@@ -59,32 +49,26 @@ jobs:
5949 strategy :
6050 matrix :
6151 os : [ ubuntu-latest, macos-latest, windows-latest ]
62- node : ["18 ", "20 ", "22 "]
52+ node : ["20 ", "22 ", "24 "]
6353 fail-fast : false
6454 name : Test Node ${{ matrix.node }} (${{ matrix.os }})
6555 steps :
6656 - name : Checkout
67- uses : actions/checkout@v3
57+ uses : actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
58+ with :
59+ persist-credentials : false
6860 - name : Setup node
69- uses : actions/setup-node@v3
61+ uses : actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
7062 with :
7163 node-version : ${{ matrix.node }}
7264 check-latest : true
73- - name : node_modules cache
74- id : node_modules_cache
75- uses : actions/cache@v3
76- with :
77- path : ./node_modules
78- key : ${{ runner.os }}-${{ matrix.node }}-${{ hashFiles('package-lock.json') }}
79- restore-keys : |
80- ${{ runner.os }}-${{ matrix.node }}-
8165 - name : Install deps
82- if : steps.node_modules_cache.outputs.cache-hit != 'true'
8366 run : npm ci
8467 - name : Download Artifacts
85- uses : actions/download-artifact@v4
86- - name : Relocate Artifacts
87- run : mv angularfire-${{ github.run_id }} dist
68+ uses : actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
69+ with :
70+ name : angularfire-${{ github.run_id }}
71+ path : dist
8872 - name : Test Node
8973 run : |
9074 npm run build:jasmine
@@ -105,37 +89,26 @@ jobs:
10589 fail-fast : false
10690 steps :
10791 - name : Checkout
108- uses : actions/checkout@v3
92+ uses : actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
93+ with :
94+ persist-credentials : false
10995 - name : Setup node
110- uses : actions/setup-node@v3
96+ uses : actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
11197 with :
11298 node-version : 20
11399 check-latest : false
114100 - name : Setup java
115- uses : actions/setup-java@v3
101+ uses : actions/setup-java@1bcf9fb12cf4aa7d266a90ae39939e61372fe520 # v5.4.0
116102 with :
117103 distribution : ' temurin'
118- java-version : ' 11'
119- - name : node_modules cache
120- id : node_modules_cache
121- uses : actions/cache@v3
122- with :
123- path : ./node_modules
124- key : ${{ runner.os }}-${{ matrix.node }}-${{ hashFiles('package-lock.json') }}
125- restore-keys : |
126- ${{ runner.os }}-${{ matrix.node }}-
104+ java-version : ' 21'
127105 - name : Install deps
128- if : steps.node_modules_cache.outputs.cache-hit != 'true'
129106 run : npm ci
130- - name : Firebase emulator cache
131- uses : actions/cache@v3
132- with :
133- path : ~/.cache/firebase/emulators
134- key : firebase_emulators
135107 - name : Download Artifacts
136- uses : actions/download-artifact@v4
137- - name : Relocate Artifacts
138- run : mv angularfire-${{ github.run_id }} dist
108+ uses : actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
109+ with :
110+ name : angularfire-${{ github.run_id }}
111+ path : dist
139112 - name : Test browser
140113 run : npm run test:${{ matrix.browser }}
141114
@@ -149,22 +122,15 @@ jobs:
149122 fail-fast : false
150123 steps :
151124 - name : Checkout
152- uses : actions/checkout@v3
125+ uses : actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
126+ with :
127+ persist-credentials : false
153128 - name : Setup node
154- uses : actions/setup-node@v3
129+ uses : actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
155130 with :
156131 node-version : ${{ matrix.node }}
157132 check-latest : true
158- - name : node_modules cache
159- uses : actions/cache@v3
160- id : node_modules_cache
161- with :
162- path : ./node_modules
163- key : ${{ runner.os }}-${{ matrix.node }}-${{ hashFiles('package-lock.json') }}
164- restore-keys : |
165- ${{ runner.os }}-${{ matrix.node }}-
166133 - name : Install deps
167- if : steps.node_modules_cache.outputs.cache-hit != 'true'
168134 run : npm ci
169135 # - name: Lint
170136 # run: npm run lint
@@ -174,16 +140,11 @@ jobs:
174140 run : |
175141 npm run build:jasmine
176142 npm run test:node
177- - name : Firebase emulator cache
178- uses : actions/cache@v3
179- with :
180- path : ~/.cache/firebase/emulators
181- key : firebase_emulators
182143 - name : Setup java
183- uses : actions/setup-java@v3
144+ uses : actions/setup-java@1bcf9fb12cf4aa7d266a90ae39939e61372fe520 # v5.4.0
184145 with :
185146 distribution : ' temurin'
186- java-version : ' 11 '
147+ java-version : ' 21 '
187148 - name : Test headless
188149 run : npm run test:chrome-headless
189150 # Tests are flaky on Windows
@@ -204,16 +165,19 @@ jobs:
204165 if : ${{ github.ref == 'refs/heads/main' || github.event_name == 'release' }}
205166 steps :
206167 - name : Setup node
207- uses : actions/setup-node@v3
168+ uses : actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
208169 with :
209170 node-version : ' 20'
210171 registry-url : ' https://registry.npmjs.org'
211172 check-latest : false
212173 - name : ' Download Artifacts'
213- uses : actions/download-artifact@v4
174+ uses : actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
175+ with :
176+ name : angularfire-${{ github.run_id }}
177+ path : dist
214178 - name : Publish
215179 run : |
216- cd ./angularfire-${{ github.run_id }} /packages-dist
180+ cd ./dist /packages-dist
217181 chmod +x publish.sh
218182 ./publish.sh
219183 env :
0 commit comments