Skip to content

Commit cc57be8

Browse files
authored
chore(ci): fix built client cache (#65)
1 parent 96d73e6 commit cc57be8

File tree

3 files changed

+51
-36
lines changed

3 files changed

+51
-36
lines changed

.github/actions/cache/action.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,35 +16,35 @@ runs:
1616
uses: actions/cache@v2
1717
with:
1818
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-javascript/client-search/dist
19-
key: ${{ runner.os }}-js-client-search-${{ hashFiles('yarn.lock') }}
19+
key: ${{ runner.os }}-js-client-search-${{ hashFiles('clients/algoliasearch-client-javascript/client-search/**') }}
2020

2121
- name: Restore built JavaScript recommend client
2222
if: ${{ inputs.job == 'cts' }}
2323
uses: actions/cache@v2
2424
with:
2525
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-javascript/recommend/dist
26-
key: ${{ runner.os }}-js-client-recommend-${{ hashFiles('yarn.lock') }}
26+
key: ${{ runner.os }}-js-client-recommend-${{ hashFiles('clients/algoliasearch-client-javascript/recommend/**') }}
2727

2828
- name: Restore built JavaScript personalization client
2929
if: ${{ inputs.job == 'cts' }}
3030
uses: actions/cache@v2
3131
with:
3232
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-javascript/client-personalization/dist
33-
key: ${{ runner.os }}-js-client-personalization-${{ hashFiles('yarn.lock') }}
33+
key: ${{ runner.os }}-js-client-personalization-${{ hashFiles('clients/algoliasearch-client-javascript/client-personalization/**') }}
3434

3535
- name: Restore built JavaScript analytics client
3636
if: ${{ inputs.job == 'cts' }}
3737
uses: actions/cache@v2
3838
with:
3939
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-javascript/client-analytics/dist
40-
key: ${{ runner.os }}-js-client-analytics-${{ hashFiles('yarn.lock') }}
40+
key: ${{ runner.os }}-js-client-analytics-${{ hashFiles('clients/algoliasearch-client-javascript/client-analytics/**') }}
4141

4242
- name: Restore built Java client
4343
if: ${{ inputs.job == 'cts' }}
4444
uses: actions/cache@v2
4545
with:
4646
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-java-2/target
47-
key: ${{ runner.os }}-java-client-${{ hashFiles('**/pom.xml') }}
47+
key: ${{ runner.os }}-java-client-${{ hashFiles('clients/algoliasearch-client-java-2/**') }}
4848

4949
# setup yarn
5050
- name: Get yarn cache directory path

.github/actions/setup/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,4 +97,4 @@ outputs:
9797
# cts variables
9898
RUN_CTS:
9999
description: 'Determine if the `cts` job should run'
100-
value: ${{ github.ref_name == 'main' || steps.diff.outputs.GITHUB_ACTIONS_CHANGED > 0 || steps.diff.outputs.SPECS_CHANGED > 0 || steps.diff.outputs.CTS_CHANGED > 0 || steps.diff.outputs.JS_CLIENT_CHANGED > 0 || steps.diff.outputs.JS_TEMPLATE_CHANGED > 0 || steps.diff.outputs.JAVA_CLIENT_CHANGED > 0 || steps.diff.outputs.JAVA_TEMPLATE_CHANGED > 0 }}
100+
value: ${{ github.ref_name == 'main' || steps.diff.outputs.GITHUB_ACTIONS_CHANGED > 0 || steps.diff.outputs.SPECS_CHANGED > 0 || steps.diff.outputs.TESTS_CHANGED > 0 || steps.diff.outputs.JS_CLIENT_CHANGED > 0 || steps.diff.outputs.JS_TEMPLATE_CHANGED > 0 || steps.diff.outputs.JAVA_CLIENT_CHANGED > 0 || steps.diff.outputs.JAVA_TEMPLATE_CHANGED > 0 }}

.github/workflows/check.yml

Lines changed: 45 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -102,18 +102,21 @@ jobs:
102102
- name: Restore cache
103103
uses: ./.github/actions/cache
104104

105+
- name: Cache search client
106+
id: cache
107+
uses: actions/cache@v2
108+
with:
109+
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-javascript/client-search/dist
110+
key: ${{ runner.os }}-js-client-search-${{ hashFiles('clients/algoliasearch-client-javascript/client-search/**') }}
111+
105112
- name: Generate search client
113+
if: steps.cache.outputs.cache-hit != 'true'
106114
run: yarn generate javascript search
107115

108116
- name: Build search client
117+
if: steps.cache.outputs.cache-hit != 'true'
109118
run: yarn build:clients javascript search
110119

111-
- name: Cache search client
112-
uses: actions/cache@v2
113-
with:
114-
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-javascript/client-search/dist
115-
key: ${{ runner.os }}-js-client-search-${{ hashFiles('yarn.lock') }}
116-
117120
client_javascript_recommend:
118121
runs-on: ubuntu-20.04
119122
needs: [specs_recommend]
@@ -124,18 +127,21 @@ jobs:
124127
- name: Restore cache
125128
uses: ./.github/actions/cache
126129

130+
- name: Cache recommend client
131+
id: cache
132+
uses: actions/cache@v2
133+
with:
134+
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-javascript/recommend/dist
135+
key: ${{ runner.os }}-js-client-recommend-${{ hashFiles('clients/algoliasearch-client-javascript/recommend/**') }}
136+
127137
- name: Generate recommend client
138+
if: steps.cache.outputs.cache-hit != 'true'
128139
run: yarn generate javascript recommend
129140

130141
- name: Build recommend client
142+
if: steps.cache.outputs.cache-hit != 'true'
131143
run: yarn build:clients javascript recommend
132144

133-
- name: Cache recommend client
134-
uses: actions/cache@v2
135-
with:
136-
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-javascript/recommend/dist
137-
key: ${{ runner.os }}-js-client-recommend-${{ hashFiles('yarn.lock') }}
138-
139145
client_javascript_perso:
140146
runs-on: ubuntu-20.04
141147
needs: [specs_perso]
@@ -146,18 +152,21 @@ jobs:
146152
- name: Restore cache
147153
uses: ./.github/actions/cache
148154

155+
- name: Cache personalization client
156+
id: cache
157+
uses: actions/cache@v2
158+
with:
159+
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-javascript/client-personalization/dist
160+
key: ${{ runner.os }}-js-client-personalization-${{ hashFiles('clients/algoliasearch-client-javascript/client-personalization/**') }}
161+
149162
- name: Generate personalization client
163+
if: steps.cache.outputs.cache-hit != 'true'
150164
run: yarn generate javascript personalization
151165

152166
- name: Build personalization client
167+
if: steps.cache.outputs.cache-hit != 'true'
153168
run: yarn build:clients javascript personalization
154169

155-
- name: Cache personalization client
156-
uses: actions/cache@v2
157-
with:
158-
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-javascript/client-personalization/dist
159-
key: ${{ runner.os }}-js-client-personalization-${{ hashFiles('yarn.lock') }}
160-
161170
client_javascript_analytics:
162171
runs-on: ubuntu-20.04
163172
needs: [specs_analytics]
@@ -168,18 +177,21 @@ jobs:
168177
- name: Restore cache
169178
uses: ./.github/actions/cache
170179

180+
- name: Cache analytics client
181+
id: cache
182+
uses: actions/cache@v2
183+
with:
184+
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-javascript/client-analytics/dist
185+
key: ${{ runner.os }}-js-client-analytics-${{ hashFiles('clients/algoliasearch-client-javascript/client-analytics/**') }}
186+
171187
- name: Generate analytics client
188+
if: steps.cache.outputs.cache-hit != 'true'
172189
run: yarn generate javascript analytics
173190

174191
- name: Build analytics client
192+
if: steps.cache.outputs.cache-hit != 'true'
175193
run: yarn build:clients javascript analytics
176194

177-
- name: Cache analytics client
178-
uses: actions/cache@v2
179-
with:
180-
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-javascript/client-analytics/dist
181-
key: ${{ runner.os }}-js-client-analytics-${{ hashFiles('yarn.lock') }}
182-
183195
client_java_search:
184196
runs-on: ubuntu-20.04
185197
needs: [specs_search]
@@ -192,18 +204,21 @@ jobs:
192204
with:
193205
job: java
194206

207+
- name: Cache built clients
208+
id: cache
209+
uses: actions/cache@v2
210+
with:
211+
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-java-2/target
212+
key: ${{ runner.os }}-java-client-${{ hashFiles('clients/algoliasearch-client-java-2/**') }}
213+
195214
- name: Generate search client
215+
if: steps.cache.outputs.cache-hit != 'true'
196216
run: yarn generate java search
197217

198218
- name: Build search client
219+
if: steps.cache.outputs.cache-hit != 'true'
199220
run: yarn build:clients java search
200221

201-
- name: Cache built clients
202-
uses: actions/cache@v2
203-
with:
204-
path: /home/runner/work/api-clients-automation/api-clients-automation/clients/algoliasearch-client-java-2/target
205-
key: ${{ runner.os }}-java-client-${{ hashFiles('**/pom.xml') }}
206-
207222
cts:
208223
runs-on: ubuntu-20.04
209224
needs:

0 commit comments

Comments
 (0)