-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Upload release binaries to new release infrastructure #8722
Conversation
@@ -25,6 +25,8 @@ const ( | |||
debPackage = "deb" | |||
) | |||
|
|||
const releasesHost = "https://releases-staging.platform.teleport.sh" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The idea right now is to run on staging for a while to iron out any remaining bugs. After that, existing releases would be synced and this would be switched over to prod.
dronegen/tag.go
Outdated
shasum="$(cat "$file.sha256" | cut -d ' ' -f 1)" | ||
status_code=$(curl $CREDENTIALS -o $WORKSPACE_DIR/curl_out.txt -w "%%{http_code}" -F product=$product -F version=$VERSION -F notesMd="# Teleport $VERSION" -F status=draft $RELEASES_HOST/releases) | ||
[ $status_code = 200 ] || [ $status_code = 409 ] || (echo "curl HTTP status: $status_code"; cat $WORKSPACE_DIR/curl_out.txt && exit 1) | ||
curl $CREDENTIALS --fail -o /dev/null -F description="TODO" -F os="%s" -F arch="%s" -F file=@$file -F sha256="$shasum" -F releaseId="$product@$VERSION" $RELEASES_HOST/assets; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Regarding leftover TODOs: the purpose of description
in the backend is currently unclear.
I think meaningful names such as Linux 32-bit RPM for ARMv8
may still be generated on the frontend, as they are now, but we should provide the frontend with richer information (currently it seems to do a whole lot of string parsing). Same for the fips
flag (it is currently omitted as it has not yet been added to the backend).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
description
is a user friendly name for a given asset, it's purpose to avoid a client to construct this message otherwise introducing new binaries (platforms) result in a bigger code footprint across multiple repositories. Simply put, lets try to make clients as dummy as we can.
Do not break existing flow in case the new step fails
2c5a9cb
to
570a024
Compare
@justinas Who has been reviewing your work so far? |
@russjones the backend of this was mostly reviewed by @pierrebeaucamp, @alex-kovoy, @ibeckermayer. Alexey drafted the original RFD. https://github.com/gravitational/cloud/blob/master/rfd/0004-Release-Asset-Management.md |
@justinas We're also adding builds with the following format, will the new CDN support them as well?
|
@russjones It should support these automatically, but I will rebase and make a test tag to confirm. |
Tag pipeline: https://drone.teleport.dev/gravitational/teleport/9607
Part of https://github.com/gravitational/cloud/milestone/36