Skip to content

Add release-go-crosscompile-task workflow that use golang crosscompile #198

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

Merged
merged 3 commits into from
Jan 26, 2022

Conversation

umbynos
Copy link
Contributor

@umbynos umbynos commented Jan 25, 2022

Previously there was only a workflow in the assets repo handling the release of a go project. That workflow was based on the build process we have in the Arduino CLI, but that's not the only way of compiling. We use that one in the Arduino CLI because we need CGO enabled and is not possible with golang crosscompile. The easiest (and fastest) way of cross-compiling is by using environment variables to set the OS and ARCH we want to build for. See https://go.dev/doc/install/source#introduction

umbynos and others added 2 commits January 25, 2022 17:01
Previously there was only a workflow in the assets repo handling the release of a go project. That workflow was based on the build process we have in the Arduino CLI, but that's not the only way of compiling. We use that one in the Arduino CLI because we need CGO enabled and is not possible with golang crosscompile. The easiest (and fastest) way of cross-compiling is by using environment variables to set the OS and ARCH we want to build for. See https://go.dev/doc/install/source#introduction
@umbynos umbynos added the type: enhancement Proposed improvement label Jan 25, 2022
@umbynos umbynos requested a review from per1234 January 25, 2022 16:02
@umbynos umbynos self-assigned this Jan 25, 2022
umbynos added a commit to arduino/arduino-cslt that referenced this pull request Jan 25, 2022
@umbynos umbynos requested a review from per1234 January 26, 2022 10:12
Copy link
Contributor

@per1234 per1234 left a comment

Choose a reason for hiding this comment

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

Thanks Umberto!

@umbynos umbynos merged commit 1145667 into main Jan 26, 2022
@umbynos umbynos deleted the umbynos/golang-crosscompile branch January 26, 2022 10:32
umbynos added a commit to arduino/arduino-cslt that referenced this pull request Jan 26, 2022
umbynos added a commit to arduino/arduino-cslt that referenced this pull request Jan 26, 2022
* Add CI workflow to publish releases

On every push of a tag named with a version format:

- Build the project for all supported platforms.
- Sign and notarize the macOS build.
- Create a GitHub release.
  - Builds and checksums are attached as release assets
  - A changelog generated from the commit history is added to the release description
  - If the tag has a pre-release version suffix, the GitHub release will be marked as a pre-release.

* rename stuff according to arduino/tooling-project-assets#198

* Remove license after #3

* use Go version 1.17 to build

* change fine extension to be compliant with assets repo
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: enhancement Proposed improvement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants