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

build: update 99designs/keyring to use cosmos fork #1709

Merged
merged 4 commits into from
Dec 23, 2022

Conversation

clevinson
Copy link
Member

Description

Ref: #1698

I was finally able to get the issue in #1698 reproducing locally (running https://github.com/nektos/act again).

Unfortunately, just running act on its own wouldn't quite work properly. Running the goreleaser action requires GitHub Tokens and will push binaries to GitHub release's API, etc.

Instead I ran:

  • act -j release --container-architecture linux/amd64 -v
  • when the process failed (due to missing GitHub tokens), I shelled into the docker container with: docker exec -it ${container_id} /bin/bash
  • ran ln -s /opt/hostedtoolcache/go/1.19.4/x64/bin/go /usr/bin/go to add the go binary in my PATH
  • ran /opt/hostedtoolcache/goreleaser-action/1.13.1/x64/goreleaser build --skip-before --skip-validate --help -id regen-darwin-amd64 to build the failing darwin binary

This successfully reproduced the error on goreleaser (ld having an unrecognized flag -dynamic).

After digging some more, I found cosmos/cosmos-sdk#12952 which seemed to contain some related fixes in the fork that looked similar to changes we made in our go 1.19 related patches:

https://github.com/cosmos/keyring/pull/2/files#diff-33f8fbc61d6878200e61e69725cd724475a0c9dbb73bc63fcfc913a5651764feL175-L176

I thought that I got the goreleaser building successfully after updating the 99designs/keyring replace directive (as in this PR), but on subsequent runs it seems to still be failing...


Author Checklist

All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.

I have...

  • included the correct type prefix in the PR title
  • added ! to the type prefix if API or client breaking change
  • targeted the correct branch (see PR Targeting)
  • provided a link to the relevant issue or specification
  • followed the guidelines for building modules
  • included the necessary unit and integration tests
  • added a changelog entry to CHANGELOG.md
  • included comments for documenting Go code
  • updated the relevant documentation or specification
  • reviewed "Files changed" and left comments if necessary
  • confirmed all CI checks have passed

Reviewers Checklist

All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.

I have...

  • confirmed the correct type prefix in the PR title
  • confirmed ! in the type prefix if API or client breaking change
  • confirmed all author checklist items have been addressed
  • reviewed state machine logic
  • reviewed API design and naming
  • reviewed documentation is accurate
  • reviewed tests and test coverage
  • manually tested (if applicable)

Comment on lines +5 to +8
sudo apt-get update -y
sudo apt-get install clang -y
sudo apt-get install gcc-multilib g++-multilib -y
sudo apt-get install gcc-mingw-w64-x86-64 g++-mingw-w64-x86-64 -y
Copy link
Member Author

Choose a reason for hiding this comment

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

Adding these so that I could build goreleaser locally via act. Otherwise the build was hanging when running the GitHub actions locally.

Copy link
Member

Choose a reason for hiding this comment

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

Do we still need these or was this for testing purposes?

Copy link
Member Author

Choose a reason for hiding this comment

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

It shouldn't have any affect on CI runs of goreleaser, but local testing via act will not work without these -y flags.

I like having them checked in to code so the goreleaser setup can be used for local testing as-is. If you're OK with keeping I'd like to just keep & merge. If you prefer without then I can remove.

@clevinson clevinson marked this pull request as ready for review December 22, 2022 00:32
@clevinson clevinson requested a review from a team December 22, 2022 00:32
Copy link
Member

@ryanchristo ryanchristo left a comment

Choose a reason for hiding this comment

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

LGTM. One question before merging.

Comment on lines +5 to +8
sudo apt-get update -y
sudo apt-get install clang -y
sudo apt-get install gcc-multilib g++-multilib -y
sudo apt-get install gcc-mingw-w64-x86-64 g++-mingw-w64-x86-64 -y
Copy link
Member

Choose a reason for hiding this comment

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

Do we still need these or was this for testing purposes?

@ryanchristo ryanchristo added the backport/v5.0.x backport to release/v5.0.x branch label Dec 23, 2022
@ryanchristo ryanchristo merged commit 77e3913 into main Dec 23, 2022
@ryanchristo ryanchristo deleted the clev/goreleaser-fix branch December 23, 2022 06:05
mergify bot pushed a commit that referenced this pull request Dec 23, 2022
Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
(cherry picked from commit 77e3913)
ryanchristo pushed a commit that referenced this pull request Dec 23, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport/v5.0.x backport to release/v5.0.x branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants