-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
logformatter: link to logs using Cirrus API #14608
Conversation
Yay, seems to work: see link here: https://cirrus-ci.com/task/4690118979092480?logs=main#L53 |
@cevich this is failing in two cases: the two Lines 129 to 130 in 3109534
Sure, it's easy for me to fix in |
77cc07f
to
0019b27
Compare
Followup: this is ready for review. I've confirmed that all the links are correct, via: $ cirrus-pr-timing --download-logs 14608
Downloading into cirrus-pr-timing.6633932056690688:
...
$ grep -ah ' https://api.cirrus-ci.com/v1/' cirrus-pr-timing.6633932056690688/* | xargs -l1 browser-open Every one of the links worked. (Yes, I also tested by manually clicking a handful of CI log links, but I have only so much tolerance for tedium) |
Ack. I'm not surprised about this. Your fix looks good, and overall this LGTM. Thanks for taking this on. |
One day we may use AWS for part of CI. Do you want to maintain two separate code paths in this script for linking to artifacts in multiple cloud providers? Can you say no? I knew you could. Cirrus already knows the location of the artifacts and provides a transparent mechanism for accessing them. Use it. This PR exposed a nasty bug in our environment-variable handling: envariables passed through to the containerized environment were being double-space-escaped, so "FOO=a b" ended up as "FOO=a\ b" (with a backslash), with one consequence being invalid URLs. The solution is simple: run 'podman -e FOO', not '-e FOO=value'. Finally, reinstate the environment-variable dump (in comments). I had removed this in a moment of panic over leaking secrets, but no, that doesn't happen. Exclude scary-sounding vars anyway. Signed-off-by: Ed Santiago <[email protected]>
0019b27
to
ef563c5
Compare
Oh sorry and thanks for mentioning me. I completely forgot about this. I can't really read perl so I'll just trust that you've got it right. /lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: cevich, edsantiago The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
One day we may use AWS for part of CI. Do you want to maintain
two separate code paths in this script for linking to artifacts
in multiple cloud providers? Can you say no? I knew you could.
Cirrus already knows the location of the artifacts and provides
a transparent mechanism for accessing them. Use it.
This PR exposed a nasty bug in our environment-variable handling:
envariables passed through to the containerized environment were
being double-space-escaped, so "FOO=a b" ended up as "FOO=a\ b"
(with a backslash), with one consequence being invalid URLs.
The solution is simple: run 'podman -e FOO', not '-e FOO=value'.
Finally, reinstate the environment-variable dump (in comments).
I had removed this in a moment of panic over leaking secrets,
but no, that doesn't happen.
See #14569 for discussion.
Signed-off-by: Ed Santiago [email protected]