Commit bb154f8
authored
Give the Store upload a timeout, and clear an abandoned submission (#52)
The first run of the Store stage, on 0.9.4, authenticated, found the
app, created the
submission, prepared the bundle, and then failed:
```
Uploading Bundle to Azure blob: 0%
Error while uploading the application package.
System.AggregateException: Retry failed after 6 tries.
(The operation was cancelled because it exceeded the configured timeout of 0:00:00.)
```
## It is not a network fault
`msstore publish` takes `--uploadTimeout` in seconds and passes it
straight through:
```csharp
blobClientOptions.Retry.NetworkTimeout = TimeSpan.FromSeconds(uploadTimeout);
```
Unset, that is zero, so every attempt is cancelled the instant it starts
— six times, then
the aggregate. It failed identically on a developer machine, which is
what ruled out the
agent's network.
The option is missing from the Learn documentation and present in
`msstore publish --help`,
which is why it was missed when the stage was written. It applies per
attempt, so 900s is
deliberately generous for a package of around 100 MB rather than a tight
bound.
## The failure wedged the next attempt
It left a created-but-empty submission behind. Every later run would
then fail on the
guard against touching a pending submission — one failure disabling the
automation until
someone opened Partner Center, which is the thing this stage exists to
avoid.
The stage now deletes a submission whose status is `PendingCommit`:
created, never
committed, nothing in certification, nothing a person published. Every
other status still
fails the stage untouched, because an in-flight submission may be a
person's listing edit.
The status parsing was checked against live CLI output, escape codes and
all.
## The message that misled
The old failure text asserted that a pending submission was the usual
cause. It was wrong
here and cost real diagnosis time. It now points at the verbose output,
and `publish` runs
verbose so the next failure reports its own exception instead of one
swallowed line.
## What this does not do
0.9.4 was not submitted and will not be. A pipeline run uses the YAML on
`main` as of that
run, and `v0.9.4` cannot be released twice, so the next promoted release
is what exercises
this. Submitting 0.9.4 by hand would defeat the point.1 parent ac36d2b commit bb154f8
4 files changed
Lines changed: 76 additions & 20 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
398 | 398 | | |
399 | 399 | | |
400 | 400 | | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
401 | 406 | | |
402 | 407 | | |
403 | 408 | | |
| |||
464 | 469 | | |
465 | 470 | | |
466 | 471 | | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
| 482 | + | |
| 483 | + | |
| 484 | + | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
467 | 507 | | |
468 | 508 | | |
469 | 509 | | |
470 | 510 | | |
471 | | - | |
472 | | - | |
473 | | - | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
474 | 516 | | |
475 | 517 | | |
476 | 518 | | |
| |||
480 | 522 | | |
481 | 523 | | |
482 | 524 | | |
483 | | - | |
| 525 | + | |
484 | 526 | | |
485 | | - | |
| 527 | + | |
486 | 528 | | |
487 | 529 | | |
488 | 530 | | |
489 | 531 | | |
490 | 532 | | |
491 | 533 | | |
| 534 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
66 | 68 | | |
67 | 69 | | |
68 | 70 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
217 | 217 | | |
218 | 218 | | |
219 | 219 | | |
220 | | - | |
221 | | - | |
222 | | - | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
223 | 224 | | |
224 | 225 | | |
225 | 226 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
299 | 299 | | |
300 | 300 | | |
301 | 301 | | |
302 | | - | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
303 | 310 | | |
304 | 311 | | |
305 | 312 | | |
| |||
317 | 324 | | |
318 | 325 | | |
319 | 326 | | |
320 | | - | |
321 | | - | |
322 | | - | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
323 | 333 | | |
324 | 334 | | |
325 | 335 | | |
| |||
0 commit comments