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

tests/provider: Initial goreleaser configuration and CI workflow #14033

Merged
merged 4 commits into from
Jul 8, 2020

Conversation

bflad
Copy link
Contributor

@bflad bflad commented Jul 2, 2020

Community Note

  • Please vote on this pull request by adding a 👍 reaction to the original pull request comment to help the community and maintainers prioritize this request
  • Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for pull request followers and do not help prioritize the request

Closes #8988
Reference: https://www.terraform.io/docs/registry/providers/publishing.html

Release note for CHANGELOG:

NONE

Going forward, the Terraform Provider release process for the Terraform Registry will recommend goreleaser for all providers, including the official ones released via a separate process today. Given this decision is now more final, we can begin the process of using this tool for CI. In the future, we can also support nightly builds and later releases via the new GitHub release process. For now though, we leverage it just to verify codebase cross-compilation for all platforms that will be supported after the upcoming 3.0.0 release.

Output from acceptance testing: N/A (CI testing)

Reference: #8988
Reference: https://www.terraform.io/docs/registry/providers/publishing.html

Going forward, the Terraform Provider release process for the Terraform Registry will recommend `goreleaser` for all providers, including the official ones released via a separate process today. Given this decision is now more final, we can begin the process of using this tool for CI. In the future, we can also support nightly builds and later releases via the new GitHub release process. For now though, we leverage it just to verify codebase cross-compilation for all platforms that will be supported after the upcoming 3.0.0 release.
@bflad bflad added tests PRs: expanded test coverage. Issues: expanded coverage, enhancements to test infrastructure. provider Pertains to the provider itself, rather than any interaction with AWS. labels Jul 2, 2020
@bflad bflad requested a review from a team July 2, 2020 14:35
@ghost ghost added size/M Managed by automation to categorize the size of a PR. documentation Introduces or discusses updates to documentation. labels Jul 2, 2020
Increase timeout to 1 hour to match GitHub Actions, reduce parallelism to try and reduce CPU contention.
.github/workflows/terraform_provider.yml Show resolved Hide resolved
.goreleaser.yml Outdated
builds:
- binary: '{{ .ProjectName }}_{{ .Version }}'
env:
- CGO_ENABLED=0
Copy link
Member

Choose a reason for hiding this comment

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

Not sure if go mod download does anything that this may affect, but you might want to move it to the top-level env section, so that any other go commands outside of builds can pick it up too.

.goreleaser.yml Show resolved Hide resolved
…view

Reference: #14033 (review)

Also let's try again with build concurrency enabled in the workflow.
@bflad
Copy link
Contributor Author

bflad commented Jul 6, 2020

Thanks, @radeksimko! Adjusted per your recommendations. Also going to see if re-enabling build concurrency is a good or bad idea, since the timeout is now fixed to match GitHub Actions'.

.goreleaser.yml Outdated Show resolved Hide resolved
@bflad bflad added this to the v2.70.0 milestone Jul 8, 2020
@bflad bflad merged commit 971d9eb into master Jul 8, 2020
@bflad bflad deleted the f-goreleaser branch July 8, 2020 11:49
@ghost
Copy link

ghost commented Jul 10, 2020

This has been released in version 2.70.0 of the Terraform AWS provider. Please see the Terraform documentation on provider versioning or reach out if you need any assistance upgrading.

For further feature requests or bug reports with this functionality, please create a new GitHub issue following the template for triage. Thanks!

@ghost
Copy link

ghost commented Aug 7, 2020

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.

If you feel this issue should be reopened, we encourage creating a new issue linking back to this one for added context. Thanks!

@ghost ghost locked and limited conversation to collaborators Aug 7, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
documentation Introduces or discusses updates to documentation. provider Pertains to the provider itself, rather than any interaction with AWS. size/M Managed by automation to categorize the size of a PR. tests PRs: expanded test coverage. Issues: expanded coverage, enhancements to test infrastructure.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add Cross Compiler Checks to CI
3 participants