Skip to content

Commit edea9a0

Browse files
authored
chore(ci): manage utils package version to bump versions correctly (#346)
* chore(ci): manage utils package version to bump versions correctly * chore: add utils version if not exist * chore: add comment
1 parent f180473 commit edea9a0

File tree

3 files changed

+38
-14
lines changed

3 files changed

+38
-14
lines changed

openapitools.json

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@
2222
"apiName": "search",
2323
"capitalizedApiName": "Search",
2424
"packageVersion": "0.0.5",
25-
"packageName": "@experimental-api-clients-automation/client-search"
25+
"packageName": "@experimental-api-clients-automation/client-search",
26+
"utilsPackageVersion": "0.0.5"
2627
}
2728
},
2829
"javascript-recommend": {
@@ -44,7 +45,8 @@
4445
"apiName": "recommend",
4546
"capitalizedApiName": "Recommend",
4647
"packageVersion": "0.0.5",
47-
"packageName": "@experimental-api-clients-automation/recommend"
48+
"packageName": "@experimental-api-clients-automation/recommend",
49+
"utilsPackageVersion": "0.0.5"
4850
}
4951
},
5052
"javascript-personalization": {
@@ -69,7 +71,8 @@
6971
"hasRegionalHost": true,
7072
"isEuHost": true,
7173
"host": "personalization",
72-
"topLevelDomain": "com"
74+
"topLevelDomain": "com",
75+
"utilsPackageVersion": "0.0.5"
7376
}
7477
},
7578
"javascript-analytics": {
@@ -95,7 +98,8 @@
9598
"hasRegionalHost": true,
9699
"isDeHost": true,
97100
"host": "analytics",
98-
"topLevelDomain": "com"
101+
"topLevelDomain": "com",
102+
"utilsPackageVersion": "0.0.5"
99103
}
100104
},
101105
"javascript-insights": {
@@ -121,7 +125,8 @@
121125
"hasRegionalHost": true,
122126
"isDeHost": true,
123127
"host": "insights",
124-
"topLevelDomain": "io"
128+
"topLevelDomain": "io",
129+
"utilsPackageVersion": "0.0.5"
125130
}
126131
},
127132
"javascript-abtesting": {
@@ -147,7 +152,8 @@
147152
"fallbackToAliasHost": true,
148153
"isDeHost": true,
149154
"host": "analytics",
150-
"topLevelDomain": "com"
155+
"topLevelDomain": "com",
156+
"utilsPackageVersion": "0.0.5"
151157
}
152158
},
153159
"javascript-query-suggestions": {
@@ -172,7 +178,8 @@
172178
"hasRegionalHost": true,
173179
"isEuHost": true,
174180
"host": "query-suggestions",
175-
"topLevelDomain": "com"
181+
"topLevelDomain": "com",
182+
"utilsPackageVersion": "0.0.5"
176183
}
177184
},
178185
"javascript-sources": {
@@ -197,7 +204,8 @@
197204
"hasRegionalHost": true,
198205
"isDeHost": true,
199206
"host": "data",
200-
"topLevelDomain": "com"
207+
"topLevelDomain": "com",
208+
"utilsPackageVersion": "0.0.5"
201209
}
202210
},
203211
"javascript-predict": {
@@ -219,7 +227,8 @@
219227
"capitalizedApiName": "Predict",
220228
"packageVersion": "0.0.5",
221229
"packageName": "@experimental-api-clients-automation/client-predict",
222-
"experimentalHost": "predict-api-oslcbws3zq-ew.a.run.app"
230+
"experimentalHost": "predict-api-oslcbws3zq-ew.a.run.app",
231+
"utilsPackageVersion": "0.0.5"
223232
}
224233
},
225234
"java-search": {

scripts/release/process-release.ts

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import {
2828
configureGitHubAuthor,
2929
cloneRepository,
3030
getOctokit,
31+
MAIN_PACKAGE,
3132
} from './common';
3233
import TEXT from './text';
3334
import type {
@@ -103,22 +104,36 @@ export function getVersionsToRelease(issueBody: string): VersionsToRelease {
103104
async function updateOpenApiTools(
104105
versionsToRelease: VersionsToRelease
105106
): Promise<void> {
107+
const nextUtilsPackageVersion = semver.inc(
108+
openapitools['generator-cli'].generators[MAIN_PACKAGE.javascript]
109+
.additionalProperties.utilsPackageVersion,
110+
versionsToRelease.javascript?.releaseType
111+
);
112+
106113
Object.keys(openapitools['generator-cli'].generators).forEach((client) => {
107114
const lang = client.split('-')[0];
108115
if (versionsToRelease[lang]) {
109116
const additionalProperties =
110117
openapitools['generator-cli'].generators[client].additionalProperties;
118+
const releaseType = versionsToRelease[lang].releaseType;
111119

112120
const newVersion = semver.inc(
113121
additionalProperties.packageVersion,
114-
versionsToRelease[lang].releaseType
122+
releaseType
115123
);
116124
if (!newVersion) {
117125
throw new Error(
118-
`Failed to bump version ${additionalProperties.packageVersion} by ${versionsToRelease[lang].releaseType}.`
126+
`Failed to bump version ${additionalProperties.packageVersion} by ${releaseType}.`
119127
);
120128
}
121129
additionalProperties.packageVersion = newVersion;
130+
131+
// In case we're not releasing javascript package,
132+
// we shouldn't bump the utils version.
133+
// At that time `nextUtilsPackageVersion` is undefined, and the following branch is skipped.
134+
if (lang === 'javascript' && nextUtilsPackageVersion) {
135+
additionalProperties.utilsPackageVersion = nextUtilsPackageVersion;
136+
}
122137
}
123138
});
124139
await fsp.writeFile(

templates/javascript/package.mustache

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@
2424
"node": ">= 14.0.0"
2525
},
2626
"dependencies": {
27-
"@experimental-api-clients-automation/client-common": "^0.0.5",
28-
"@experimental-api-clients-automation/requester-browser-xhr": "^0.0.5",
29-
"@experimental-api-clients-automation/requester-node-http": "^0.0.5"
27+
"@experimental-api-clients-automation/client-common": "{{utilsPackageVersion}}",
28+
"@experimental-api-clients-automation/requester-browser-xhr": "{{utilsPackageVersion}}",
29+
"@experimental-api-clients-automation/requester-node-http": "{{utilsPackageVersion}}"
3030
},
3131
"devDependencies": {
3232
"@types/node": "16.11.26",

0 commit comments

Comments
 (0)