Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GH Actions: work around intermittent apt-get errors #44

Merged
merged 1 commit into from
Apr 24, 2024

Conversation

jrfnl
Copy link
Member

@jrfnl jrfnl commented Apr 24, 2024

Okay, so apparently, there is a long-standing bug in the Microsoft package deploy process which caused apt-get update to fail in the first half hour after Microsoft has deployed a package.

The failure looks like this:

E: Failed to fetch https://packages.microsoft.com/ubuntu/22.04/prod/dists/jammy/InRelease  Clearsigned file isn't valid, got 'NOSPLIT' (does the network require authentication?)

As this only happens intermittently (after a MS package deploy), the chance of running into this bug are slim, but guess what: today I ran into it.

This change to the workflow is intended to prevent the next person running into this issue from having to waste time on figuring this out.

By splitting the "Install xmllint" step into two steps: one doing the apt-get update and one doing the actual install and making the first step one which is allowed to continue-on-error, this issue should hopefully not crop up anymore.

Any errors in the apt-get update step will now be ignored and as most errors which could potentially come from that step are irrelevant for the rest of the job anyway, this is fine. If a relevant error would be surfaced, the next step (the xmllint install), will fail the job anyway.

Refs:

Okay, so apparently, there is a long-standing bug in the Microsoft package deploy process which caused `apt-get update` to fail in the first half hour after Microsoft has deployed a package.

The failure looks like this:
```
E: Failed to fetch https://packages.microsoft.com/ubuntu/22.04/prod/dists/jammy/InRelease  Clearsigned file isn't valid, got 'NOSPLIT' (does the network require authentication?)
```

As this only happens intermittently (after a MS package deploy), the chance of running into this bug are slim, but guess what: today I ran into it.

This change to the workflow is intended to prevent the next person running into this issue from having to waste time on figuring this out.

By splitting the "Install xmllint" step into two steps: one doing the `apt-get update` and one doing the actual install and making the first step one which is allowed to `continue-on-error`, this issue should hopefully not crop up anymore.

Any errors in the `apt-get update` step will now be ignored and as most errors which could potentially come from that step are irrelevant for the rest of the job anyway, this is fine.
If a relevant error would be surfaced, the next step (the xmllint install), will fail the job anyway.

Refs:
* actions/runner-images#3410
* dotnet/core#4167
@jrfnl jrfnl added this to the 1.x Next Release milestone Apr 24, 2024
@jrfnl jrfnl merged commit 5fa83bc into main Apr 24, 2024
2 checks passed
@jrfnl jrfnl deleted the feature/ghactions-xmllint-bypass-apt-get-update branch April 24, 2024 13:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant