Commit Graph

153 Commits

Author SHA1 Message Date
Christian Mesh
dd642bd53f Begin the v1.12.x development period
The v1.11 series will now continue maintenence in the v1.11 branch, and
so this branch is now tracking the work for the forthcoming v1.12 series.

Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2025-10-23 11:00:02 -07:00
James Humphries
eff8f3faba Add goreleaser key to main release process (#3423)
Signed-off-by: James Humphries <james@james-humphries.co.uk>
2025-10-23 15:38:12 +01:00
James Humphries
67ea4faab6 Ensure we use goreleaser-pro for release build workflow (#3421)
Signed-off-by: James Humphries <james@james-humphries.co.uk>
2025-10-23 15:14:23 +01:00
Andrei Ciobanu
195a131042 Add steps to alter version/VERSION for the nightly builds (#3399)
Signed-off-by: Andrei Ciobanu <andrei.ciobanu@opentofu.org>
2025-10-21 13:28:39 +03:00
Martin Atkins
e74bf2d0a1 go.mod: Use the new "tool" directive
Previously the Go toolchain had no explicit support for "tools" and so we
used the typical Go community workaround of adding "tools.go" files (two,
for some reason) that existed only to trick the Go toolchain into
considering the tools as dependencies we could track in go.mod.

Go 1.24 introduced explicit support for tracking tools as part of go.mod,
and the ability to run those using "go tool" instead of "go run", and so
this commit switches us over to using that strategy for everything we were
previously managing in tools.go.

There are some intentional exceptions here:

- The protobuf-compile script can't use "go tool" or "go run" because the
  tools in question are run only indirectly through protoc. However, we
  do still use the "tool" directive in go.mod to tell the Go toolchain that
  we depend on those tools, so that it'll track which versions we are
  currently using as part of go.mod.
- Our golangci-lint Makefile target uses "go run" to run a specific
  version of golangci-lint. We _intentionally_ don't consider that tool
  to be a direct dependency of OpenTofu because it has a lot of indirect
  dependencies that would pollute our go.mod file. Therefore that continues
  to use "go run" after this commit.
- Both of our tools.go files previously referred to
  github.com/nishanths/exhaustive , but nothing actually appears to be
  using that tool in the current OpenTofu tree, so it's no longer a
  dependency after this commit.

All of the dependencies we have _only_ for tools are now classified as
"indirect" in the go.mod file. This is the default behavior of the Go
toolchain and appears to be motivated by making it clearer that these
modules do not contribute anything to the runtime behavior of OpenTofu.
This also corrected a historical oddity in our go.mod where for some reason
the "indirect" dependencies had been split across two different "require"
directives; they are now all grouped together in a single directive.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2025-10-10 07:06:56 -03:00
Martin Atkins
b8e67c0362 .github/workflows: Add windows_amd64 to unit test matrix (#3055)
Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2025-09-30 16:00:40 -03:00
Diógenes Fernandes
720961605d Replace AWS with local provider to fix end-to-end test on darwin_amd64 (#3224)
Signed-off-by: Diogenes Fernandes <diofeher@gmail.com>
2025-09-03 09:04:12 -03:00
Diógenes Fernandes
a1c8b3163a improve go.mod and go.sum consistency checks (#3210)
Signed-off-by: Diogenes Fernandes <diofeher@gmail.com>
2025-08-29 13:58:05 -03:00
Diógenes Fernandes
c29311ee82 Ensure internal/*.tf files have the same line endings in all platforms (#3189)
Signed-off-by: Diogenes Fernandes <diofeher@gmail.com>
2025-08-27 07:04:42 -03:00
Martin Atkins
234a8b8deb .github/workflows: Run unit tests when go.mod/go.sum files change
In our checks workflow we try to skip running unit tests unless Go files
have changed, but we didn't previously consider "go.mod" and "go.sum" as
"Go files".

Changes to our dependencies can change the results of our tests, so we
should run tests even if only the dependencies have changed.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2025-08-26 06:28:27 -07:00
Martin Atkins
83b9f9245e .github/workflows: Treat workflow changes as Go changes (#3164)
Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2025-08-22 07:12:24 -04:00
Martin Atkins
9a161adbe3 go.mod: Upgrade to Go 1.25 (#3166)
Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2025-08-22 07:10:11 -04:00
James Humphries
dcc0a49bcc Remove bucket check from nightly build (#3152)
Signed-off-by: James Humphries <James@james-humphries.co.uk>
2025-08-18 13:27:23 +01:00
James Humphries
f44a46adbd Move nightly builds out of gpg environment as its no longer needed (#3147)
Signed-off-by: James Humphries <james@james-humphries.co.uk>
2025-08-15 11:26:14 +01:00
James Humphries
14125e466c Added debug logging to rclone setup, removed R2_ACL (#3141)
Signed-off-by: James Humphries <james@james-humphries.co.uk>
2025-08-15 10:12:44 +01:00
James Humphries
37810dd840 Simplify the nightly build process (#3140)
Signed-off-by: James Humphries <james@james-humphries.co.uk>
2025-08-14 10:52:25 +01:00
James Humphries
ee0029965f More nightly build work, hardcode env vars and remove version (#3138)
Signed-off-by: James Humphries <james@james-humphries.co.uk>
2025-08-13 14:33:52 +01:00
James Humphries
117e0d46f0 Use correct goreleaser version (#3130)
Signed-off-by: James Humphries <james@james-humphries.co.uk>
2025-08-12 16:04:19 +01:00
James Humphries
b204fbfcc5 Use goreleaser pro for nightly builds (#3129)
Signed-off-by: James Humphries <james@james-humphries.co.uk>
2025-08-12 15:57:37 +01:00
James Humphries
88ac34a5b7 Added nightly build process - Experimental (#3111)
Signed-off-by: James Humphries <james@james-humphries.co.uk>
2025-08-12 14:25:34 +01:00
Christian Mesh
3c17015702 Include v1.10.0 in govulncheck (#2951)
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2025-06-24 09:10:40 -04:00
Larry Bordowitz
782b817ff9 refactor: lint without revision flag (#2931)
Signed-off-by: Larry Bordowitz <laurence.bordowitz@gmail.com>
2025-06-17 22:07:14 +04:00
Christian Mesh
52700e677e Cleanup github workflows (#2903)
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2025-06-11 07:15:07 -04:00
Christian Mesh
531ade9d35 Skip unnessary workflow checks (#2872)
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2025-05-28 11:30:06 -04:00
Andrei Ciobanu
8396d0459c Add github workflow to run govoulncheck on all branches with supported OpenTofu versions (#2636)
Signed-off-by: yottta <andrei.ciobanu@opentofu.org>
Signed-off-by: Andrei Ciobanu <andrei.ciobanu@opentofu.org>
2025-05-14 18:26:22 +03:00
Tyler Auerbeck
c84716d37b Bump version of golangci-lint action as it appears older version may not work with v2
Signed-off-by: Tyler Auerbeck <tylerauerbeck@users.noreply.github.com>
2025-05-09 14:14:53 -04:00
Tyler Auerbeck
59fcdcd2b8 Update makefile, github workflow to use golangci-lint v2
Signed-off-by: Tyler Auerbeck <tylerauerbeck@users.noreply.github.com>
2025-05-09 14:14:53 -04:00
Diógenes Fernandes
56ac5b2fa5 Change Go arch from amd64 to arm64 on macos-latest (#2683)
Signed-off-by: Diogenes Fernandes <diofeher@gmail.com>
2025-04-18 09:20:17 -03:00
Martin Atkins
2b4e7b7def GitHub Actions: Use latest golangci-lint and its GitHub Action
The version we were previously using does not support Go v1.24.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2025-02-26 11:33:43 -08:00
Oleksandr Levchenkov
b8c24e935d update all github actions with no breaking changes (#2478)
Signed-off-by: ollevche <ollevche@gmail.com>
2025-02-05 15:01:58 +02:00
Oleksandr Levchenkov
ad68328582 update all build-opentofu-oss gha (#2474)
Signed-off-by: ollevche <ollevche@gmail.com>
2025-02-05 13:23:18 +02:00
Oleksandr Levchenkov
9b9ae4a25e update actions-packaging-linux gha (#2472)
Signed-off-by: ollevche <ollevche@gmail.com>
2025-02-04 17:54:48 +02:00
Oleksandr Levchenkov
210c0f68b0 update upload and download artifacts gha (#2471)
Signed-off-by: ollevche <ollevche@gmail.com>
2025-02-04 17:14:59 +02:00
AbstractionFactory
1b00b465da Switch to native Linux/ARM64 runners (#2387)
Signed-off-by: AbstractionFactory <179820029+abstractionfactory@users.noreply.github.com>
2025-01-24 10:43:47 -05:00
Christian Mesh
85dc2615ad Fix packagecloud push skip for alpha/beta/rc (#2256)
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2024-12-05 10:39:55 -05:00
AbstractionFactory
1cdfd7e867 Adding missing changelog entry and go.mod change for #2050 (#2205)
Signed-off-by: AbstractionFactory <179820029+abstractionfactory@users.noreply.github.com>
2024-11-22 11:32:10 +01:00
Oleksandr Levchenkov
52cc91c87a upgrade golangci-lint to v1.62 (#2174)
Signed-off-by: ollevche <ollevche@gmail.com>
2024-11-18 19:56:29 +02:00
Christian Mesh
2506fb7bab Always use large instance for release (#1869)
Signed-off-by: Jakub Martin <kubam@spacelift.io>
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
Co-authored-by: Kuba Martin <kubam@spacelift.io>
2024-07-29 11:35:22 -04:00
Christian Mesh
898c573000 More backport fixes (#1828)
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2024-07-17 12:18:49 -04:00
Christian Mesh
6f30b18323 Add content write permissions to backport job (#1827)
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2024-07-17 12:00:43 -04:00
Siddhartha Sonker
bb1176d3a6 Added backport.yml to automate backport process (#1452)
Signed-off-by: siddharthasonker95 <158144589+siddharthasonker95@users.noreply.github.com>
2024-07-09 13:12:51 +01:00
Christian Mesh
edc654c1de Hardcode golangci-lint revision to fix build on main (#1759)
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2024-07-01 10:47:26 -04:00
Christian Mesh
e2b6b46d43 Bump version to 1.8.0-alpha1 and cleanup CHANGELOG (#1745)
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2024-06-24 10:47:41 -04:00
Oleksandr Levchenkov
5a161c8bcc add automated copyright header check (#1696)
Signed-off-by: ollevche <ollevche@gmail.com>
Signed-off-by: Oleksandr Levchenkov <ollevche@gmail.com>
2024-06-03 16:49:36 +03:00
Oleksandr Levchenkov
ab9c995064 fix tofu installation tests (#1695)
Signed-off-by: ollevche <ollevche@gmail.com>
2024-06-03 16:29:14 +03:00
Janos
da1471b8ce Removing noisy and always failing jobs (#1611)
Signed-off-by: Janos <86970079+janosdebugs@users.noreply.github.com>
2024-05-15 12:16:01 +02:00
Luis Giraldo
290fbd66d3 Updating setup-go action to v5.0.1 (#1643)
Signed-off-by: Luis Giraldo <giraldo.luisdavid@gmail.com>
2024-05-13 15:00:18 +02:00
Janos
dd5f9afe89 Coding standards (#1423)
Signed-off-by: Janos <86970079+janosdebugs@users.noreply.github.com>
Signed-off-by: ollevche <ollevche@gmail.com>
Co-authored-by: James Humphries <james@james-humphries.co.uk>
Co-authored-by: Oleksandr Levchenkov <ollevche@gmail.com>
2024-05-13 11:39:46 +02:00
Luis Giraldo
60a0e82c1f updating checkout action to v4.1.4 (#1607)
Signed-off-by: Luis Giraldo <giraldo.luisdavid@gmail.com>
2024-05-07 18:25:30 +02:00
Alejandro Lazaro
4726d106c8 Do not run top issues workflow on forks (#1599)
Signed-off-by: Alejandro Lazaro <alazaro@werpo.com.ar>
2024-05-06 12:26:23 +02:00