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

Upload release binaries to new release infrastructure #8722

Merged
merged 31 commits into from
Jan 3, 2022

Conversation

justinas
Copy link
Contributor

@justinas justinas commented Oct 25, 2021

@@ -25,6 +25,8 @@ const (
debPackage = "deb"
)

const releasesHost = "https://releases-staging.platform.teleport.sh"
Copy link
Contributor Author

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;
Copy link
Contributor Author

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).

Copy link
Contributor

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.

@justinas justinas changed the title Upload release binaries to new release service infrastructure Upload release binaries to new release infrastructure Oct 25, 2021
Do not break existing flow in case the new step fails
@justinas justinas force-pushed the justinas/releases-poc branch from 2c5a9cb to 570a024 Compare October 26, 2021 14:39
@justinas justinas marked this pull request as ready for review October 27, 2021 14:37
@russjones
Copy link
Contributor

@justinas Who has been reviewing your work so far?

@justinas
Copy link
Contributor Author

@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

@russjones
Copy link
Contributor

@justinas We're also adding builds with the following format, will the new CDN support them as well?

teleport-8.0.1-linux-amd64-centos7-bin.tar.gz
teleport-ent-8.0.1-linux-amd64-centos7-bin.tar.gz
teleport-ent-8.0.1-linux-amd64-centos7-fips-bin.tar.gz

@justinas
Copy link
Contributor Author

justinas commented Dec 6, 2021

@justinas We're also adding builds with the following format, will the new CDN support them as well?

teleport-8.0.1-linux-amd64-centos7-bin.tar.gz
teleport-ent-8.0.1-linux-amd64-centos7-bin.tar.gz
teleport-ent-8.0.1-linux-amd64-centos7-fips-bin.tar.gz

@russjones It should support these automatically, but I will rebase and make a test tag to confirm.

@justinas justinas requested a review from codingllama December 17, 2021 14:41
@justinas justinas merged commit cc6cb4e into master Jan 3, 2022
@justinas justinas deleted the justinas/releases-poc branch January 3, 2022 15:51
justinas added a commit that referenced this pull request Jan 3, 2022
justinas added a commit that referenced this pull request Jan 3, 2022
justinas added a commit that referenced this pull request Jan 3, 2022
justinas added a commit that referenced this pull request Jan 7, 2022
justinas added a commit that referenced this pull request Jan 7, 2022
justinas added a commit that referenced this pull request Jan 7, 2022
justinas added a commit that referenced this pull request Jan 19, 2022
justinas added a commit that referenced this pull request Jan 19, 2022
justinas added a commit that referenced this pull request Jan 20, 2022
@webvictim webvictim mentioned this pull request Mar 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants