Skip to content

Add CI workflow to publish releases #4

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 5 commits into from
Jan 26, 2022
Merged

Conversation

umbynos
Copy link
Contributor

@umbynos umbynos commented Jan 24, 2022

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

  • Build the project for all supported platforms.
  • Use gon to sign and notarize the macOS build.
  • Create a GitHub release.
    • Builds and checksums are attached as release assets
    • A changelog generated by arduino/create-changelog 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.

@umbynos umbynos requested a review from a team January 24, 2022 17:41
@umbynos umbynos self-assigned this Jan 24, 2022
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.

I did a test run in my fork with a certificate from my personal Apple developer program account and it worked perfectly:

https://github.com/per1234/cslt-tool/releases/tag/0.0.2

I suggest that we finalize the decision of the naming and location of these files in the arduino/tooling-project-assets repo before merging this, so that the reference URLs and file names of the files added here will be synced with the parent copies when those are added to that repo.

@umbynos umbynos linked an issue Jan 25, 2022 that may be closed by this pull request
@umbynos umbynos added the topic: infrastructure Related to project infrastructure label Jan 25, 2022
@umbynos umbynos force-pushed the umbynos/add_release_wf branch from 1c30378 to cf74419 Compare January 25, 2022 16:26
@umbynos
Copy link
Contributor Author

umbynos commented Jan 25, 2022

Rebased to include #13

umbynos and others added 4 commits January 26, 2022 12:08
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.
@umbynos umbynos force-pushed the umbynos/add_release_wf branch from 63732c6 to 52a3736 Compare January 26, 2022 11:10
@umbynos umbynos requested a review from per1234 January 26, 2022 11:11
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.

I suggest renaming release-go-crosscompile-task.yaml to release-go-crosscompile-task.yml.

Either is perfectly valid, and perhaps .yaml is even more "official", but the GitHub Actions documentation and the assets all use .yml, and the other two YAML files added also use .yml, so I think in this case .yml is better.

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.

Since the automated system is in place ready to give itself a validation, I did another fake release in my fork and all is well:

Thanks Umberto!

@umbynos
Copy link
Contributor Author

umbynos commented Jan 26, 2022

The release is failing because of the format of the secrets.INSTALLER_CERT_MAC_P12 secret, I'm going to fix the secret and retry the release

@umbynos
Copy link
Contributor Author

umbynos commented Jan 26, 2022

Fixed

@umbynos umbynos merged commit 02afe46 into main Jan 26, 2022
@umbynos umbynos deleted the umbynos/add_release_wf branch January 26, 2022 14:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic: infrastructure Related to project infrastructure
Projects
None yet
Development

Successfully merging this pull request may close these issues.

setup release-go workflow in cslt-tool repo
2 participants