Skip to content

Commit 06bd759

Browse files
check version before returning valid build
1 parent da29620 commit 06bd759

3 files changed

Lines changed: 15 additions & 4 deletions

File tree

dist/index.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57680,8 +57680,9 @@ async function updateBetaBuildLocalization(betaBuildLocalization, whatsNew) {
5768057680
return betaBuildLocalization;
5768157681
}
5768257682
async function pollForValidBuild(project, maxRetries = 60, interval = 30) {
57683-
var _a;
57683+
var _a, _b;
5768457684
core.info(`Polling build validation...`);
57685+
await new Promise(resolve => setTimeout(resolve, interval * 1000));
5768557686
let retries = 0;
5768657687
while (retries < maxRetries) {
5768757688
core.info(`Polling for build... Attempt ${++retries}/${maxRetries}`);
@@ -57697,7 +57698,12 @@ async function pollForValidBuild(project, maxRetries = 60, interval = 30) {
5769757698
}
5769857699
switch ((_a = build.attributes) === null || _a === void 0 ? void 0 : _a.processingState) {
5769957700
case 'VALID':
57700-
return build;
57701+
if (((_b = build.attributes) === null || _b === void 0 ? void 0 : _b.version) === project.bundleVersion) {
57702+
return build;
57703+
}
57704+
else {
57705+
core.info(`Build ${build.attributes.version} is valid but not the latest version ${project.bundleVersion}!`);
57706+
}
5770157707
case 'FAILED':
5770257708
case 'INVALID':
5770357709
throw new Error(`Build ${build.attributes.version} is ${build.attributes.processingState}!`);

dist/index.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/AppStoreConnectClient.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,7 @@ async function updateBetaBuildLocalization(betaBuildLocalization: BetaBuildLocal
238238

239239
async function pollForValidBuild(project: XcodeProject, maxRetries: number = 60, interval: number = 30): Promise<Build> {
240240
core.info(`Polling build validation...`);
241+
await new Promise(resolve => setTimeout(resolve, interval * 1000));
241242
let retries = 0;
242243
while (retries < maxRetries) {
243244
core.info(`Polling for build... Attempt ${++retries}/${maxRetries}`);
@@ -253,7 +254,11 @@ async function pollForValidBuild(project: XcodeProject, maxRetries: number = 60,
253254
}
254255
switch (build.attributes?.processingState) {
255256
case 'VALID':
256-
return build;
257+
if (build.attributes?.version === project.bundleVersion) {
258+
return build;
259+
} else {
260+
core.info(`Build ${build.attributes.version} is valid but not the latest version ${project.bundleVersion}!`);
261+
}
257262
case 'FAILED':
258263
case 'INVALID':
259264
throw new Error(`Build ${build.attributes.version} is ${build.attributes.processingState}!`);

0 commit comments

Comments
 (0)