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

Tooling rehaul: introduce ARM64 release; use git tags instead of production branch for releases #68

Merged
merged 2 commits into from
Nov 27, 2023

Conversation

peterdeme
Copy link
Contributor

@peterdeme peterdeme commented Nov 25, 2023

Description of the change

Tooling rehaul.

Multi-arch uploads to S3 (downloads.spacelift.io)

This pull request makes it so that we'll upload platform-specific binaries to S3 and multi-platform Docker images as well.

How it used to look like:

☝️ Let's call this legacy.

New format:

This naming convention entirely matches the launcher binaries.
We will still upload the legacy files, but we shouldn't use those links anywhere. I'll update the documentation at docs.spacelift.io once this PR is merged.

New release process

A new use-case arose in Spacelift where we'd like to download VCS Agent binaries for Darwin for end-to-end testing purposes. CC @jakubdal
In order to facilitate that, let's improve our release process: instead of merging to the production branch, releases should happen when a new tag is pushed. This follows our other public repositories' pattern such as spacectl or terraform-provider-spacelift.

From now on, Goreleaser will publish a GitHub release whenever a tag is pushed and it'll attach all the built binaries as well.

How does that help us? We will publish all 3 operating systems (Linux/Darwin/Windows) to the GitHub Releases which can be used by endtoend tests - those tests can detect the current OS and architecture and download the agent accordingly.

Type of change

  • Bug fix (non-breaking change that fixes an issue);
  • New feature (non-breaking change that adds functionality);
  • Breaking change (fix or feature that would cause existing functionality not to work as expected);
  • Other (miscellaneous, GitHub workflow changes, changes to the PR template);

Checklists

Development

  • Lint rules pass locally;
  • All tests related to the changed code pass in development;

Code review

  • This pull request has a descriptive title and sufficient context for a reviewer. There may be a screenshot or screencast attached;
  • This pull request is no longer a draft;

Deployment

  • Selected merge strategy is squash merge;
  • Changes have been reviewed by at least one other engineer;

@peterdeme peterdeme force-pushed the add-arm64-build branch 7 times, most recently from c0f0abe to 3c30b5f Compare November 25, 2023 10:14
@github-advanced-security
Copy link

This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.

@peterdeme peterdeme force-pushed the add-arm64-build branch 17 times, most recently from 9e08955 to c193f39 Compare November 25, 2023 11:40
@peterdeme peterdeme changed the title Use Goreleaser, and publish arm64 Introduce arm64 release Nov 25, 2023
@peterdeme peterdeme marked this pull request as ready for review November 25, 2023 11:50
@peterdeme peterdeme force-pushed the add-arm64-build branch 3 times, most recently from d684d38 to f9af0bb Compare November 25, 2023 11:55
@peterdeme peterdeme force-pushed the add-arm64-build branch 7 times, most recently from 6e2ec6f to 913fbf4 Compare November 25, 2023 17:30
@peterdeme peterdeme changed the title Introduce ARM64 release; use git tags instead of production branch for releases Tooling rehaul: Introduce ARM64 release; use git tags instead of production branch for releases Nov 26, 2023
@peterdeme peterdeme changed the title Tooling rehaul: Introduce ARM64 release; use git tags instead of production branch for releases Tooling rehaul: introduce ARM64 release; use git tags instead of production branch for releases Nov 26, 2023
@peterdeme peterdeme force-pushed the add-arm64-build branch 9 times, most recently from 269d25d to 2c33556 Compare November 26, 2023 15:51
jakubdal
jakubdal previously approved these changes Nov 27, 2023
.github/workflows/linting.yml Show resolved Hide resolved
@peterdeme
Copy link
Contributor Author

@jakubdal ahh there was a typo, fixed it, do you mind reapproving? 🙏

Copy link
Collaborator

@eminalemdar eminalemdar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

.github/workflows/publish/action.yml Show resolved Hide resolved
@peterdeme peterdeme merged commit 60c6494 into main Nov 27, 2023
9 checks passed
@peterdeme peterdeme deleted the add-arm64-build branch November 27, 2023 11:02
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.

3 participants