Commit Graph

31 Commits

Author SHA1 Message Date
AbstractionFactory
f64498e2b8 Authentication
Signed-off-by: AbstractionFactory <179820029+abstractionfactory@users.noreply.github.com>
Co-authored-by: Martin Atkins <mart@degeneration.co.uk>
2025-03-04 11:13:19 -08:00
AbstractionFactory
6252f505c4 Link fix
Signed-off-by: AbstractionFactory <179820029+abstractionfactory@users.noreply.github.com>
Co-authored-by: Martin Atkins <mart@degeneration.co.uk>
2025-03-04 11:13:19 -08:00
AbstractionFactory
df2e3baade Removed Helm reference
Signed-off-by: AbstractionFactory <179820029+abstractionfactory@users.noreply.github.com>
Co-authored-by: Martin Atkins <mart@degeneration.co.uk>
2025-03-04 11:13:19 -08:00
AbstractionFactory
898f9f78d3 Minor fixes
Signed-off-by: AbstractionFactory <179820029+abstractionfactory@users.noreply.github.com>
Co-authored-by: Martin Atkins <mart@degeneration.co.uk>
2025-03-04 11:13:19 -08:00
AbstractionFactory
55d7a98a0b Minor fixes and module contents
Signed-off-by: AbstractionFactory <179820029+abstractionfactory@users.noreply.github.com>
Co-authored-by: Martin Atkins <mart@degeneration.co.uk>
2025-03-04 11:13:19 -08:00
AbstractionFactory
e85fae8e0e WIP refactor
Signed-off-by: AbstractionFactory <179820029+abstractionfactory@users.noreply.github.com>
Co-authored-by: Martin Atkins <mart@degeneration.co.uk>
2025-03-04 11:13:19 -08:00
AbstractionFactory
1263570efe Typo fix
Co-authored-by: Yousif Akbar <11247449+yhakbar@users.noreply.github.com>
Signed-off-by: AbstractionFactory <179820029+abstractionfactory@users.noreply.github.com>
2025-03-04 11:13:19 -08:00
Martin Atkins
a1ec1298bd rfc: Dependency Packages from OCI Registries
This commit rescopes what was originally a draft about provider
installation from OCI registries into a more general document about how
we intend to use OCI container images and OCI registries as a distribution
vehicle for at least two different kinds of OpenTofu dependency packages
(module and provider packages).

This document already had good content about how OCI registries and
artifacts work _in general_, and its associated PR was already attracting
general discussion about whether to use Docker-style or ORAS-style
conventions across both provider and module packages, so we'll now use
this document to discuss just the overall question of what style of
packaging we intend to use (across both package types) and will discuss
the module-specific and provider-specific details in other RFCs.

This also reworks the document to now propose using the Docker-like
conventions instead of the ORAS-like conventions, since that matches what
we've been exploring in prototypes. Of course, that decision is not final
until this RFC is accepted and merged, but we have considerably better
understanding of how this would work under the Docker-like approach than
ORAS and it seems like consensus is so far heading in that direction. We
may revise this document again if we learn of some strong arguments in
favor of the ORAS approach.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2025-03-04 11:13:19 -08:00
AbstractionFactory
a92ed801e5 Draft: OCI provider registry
Signed-off-by: AbstractionFactory <179820029+abstractionfactory@users.noreply.github.com>
2025-03-04 11:13:19 -08:00
Oleksandr Levchenkov
5e41711584 [RFC] Deprecation of module variables and outputs (#2180)
Signed-off-by: ollevche <ollevche@gmail.com>
2025-03-03 16:16:29 +02:00
Andrei Ciobanu
de95b65faa RFC: s3 locking based on conditional writes (#2511)
Signed-off-by: yottta <andrei.ciobanu@opentofu.org>
2025-02-19 10:11:09 +02:00
Oleksandr Levchenkov
2a4d81042b make pg backend acquire schema-based global locks (#2411)
Signed-off-by: ollevche <ollevche@gmail.com>
2025-01-31 14:21:36 +02:00
Martin Atkins
2848ed054e rfc: Update README.md to discuss RFC Tracking Issues (#2377)
Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2025-01-15 07:36:54 -05:00
Martin Atkins
0576d07397 RFC: Naming convention for internal variables representing "contexts"
This is a lightweight RFC proposing that we adopt some cross-cutting naming
conventions for variables of various different types whose names all
include the noun "context", both to gradually improve existing confusion
and inconsistency in the codebase and in particular to un-squat the name
"ctx" that has emerged as the idiomatic name for a context.Context
elsewhere in the Go ecosystem.

This proposal does not call for any immediate code changes. It is only an
attempt to agree on some conventions to follow in future work on other
projects.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2025-01-14 14:39:29 -08:00
Martin Atkins
6bd681e98f Process RFC: RFC Tracking Issues
Proposal for creating a separate "tracking issue" for each accepted RFC,
which represents the implementation of the features described in that RFC
separately from the potentially-many feature request issues it aims to
address.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2025-01-14 14:33:04 -08:00
Martin Atkins
f802281c5a rfc: A Pragmatic Approach to Linting for Code Complexity
We currently have a set of aspirational linting rules in the project's
golangci-lint configuration, but this codebase was derived from a much
older codebase that was not written under those lint rules and so we made
the pragmatic decision that only code that has changed since the addition
of the lint rules is subjected to those lint rules.

That approach aims to make the compromise of encouraging us to gradually
improve code "while we're in the area" working on other changes, while
avoiding the need for a huge retrofit of existing code.

However, that compromise seems to be less appropriate for the subset of
linting rules related to code complexity in particular. That category of
rules typically imposes some arbitrary limit on a qualitative metric that
the linting tool can measure. These particular rules therefore have a
relatively broad scope and tend to require very disruptive changes to
existing code in order to resolve them.

This proposal aims to find a pragmatic path that will lead to a codebase
that _does_ conform to the complexity lint rules in the long run, but to
treat those improvements as a separate project in their own right rather
than as something we aim to gradually improve as part of other work.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2025-01-02 13:35:50 -08:00
Martin Atkins
954e3aed01 rfc: Static Evaluation of Provider Iteration state tracking revision
The original proposal called for the state snapshot loader to accept a
resource instance with both an instance-level provider instance address
and a resource-level provider instance address.

The final implementation does follow that specification, but it also emits
a warning in that case to draw attention to the inconsistency.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2024-12-11 12:52:50 -08:00
Martin Atkins
b480343798 rfc: Static Evaluation of Provider Iteration state tracking revision
The original proposal called for the state snapshot writer to generate a
resource-level provider property if all of the instances of the resource
had the same provider instance address, regardless of what that address
actually is.

The actual implementation instead chose to generate the resource-level
property only if none of the instances of the resource refer to a provider
instance that has an instance key.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2024-12-11 12:52:50 -08:00
Christian Mesh
8fb8f066c4 Detect when provider and resource/module have identical for_each (#2186)
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
Co-authored-by: Martin Atkins <mart@degeneration.co.uk>
2024-12-03 14:02:27 -05:00
Martin Atkins
e6ca786e09 rfc: Static Evaluation of Provider Iteration further updates
This continues the work of the last few commits, updating this RFC to
reflect the evolved design that's makes room for adding fully-dynamic
provider instance expansion in a later release.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2024-10-31 10:50:34 -07:00
Christian Mesh
b8d4b24964 RFC: Claify scenarios that don't work
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2024-10-31 10:50:34 -07:00
Christian Mesh
a11251cb67 RFC: Clarify provider validate special case
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2024-10-31 10:50:34 -07:00
Christian Mesh
68a3d7fcd3 RFC provider iteration: Update technical details
Now that we have a prototype well understood, we can
better describe the technical challenges and implementation
flow

Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2024-10-31 10:50:34 -07:00
Martin Atkins
757daacab9 RFC: Updated "Static Evaluation of Provider Iteration"
This is the beginnings of a proposed amendment to the previously-approved
RFC for static-eval-based provider expansion to incorporate the new
constraints discovered for RFC "Dynamic Provider Instances and Instance
Assignment".

This first draft of the changes focuses only on the "User Documentation"
portion to ensure that we have consensus on the intended user-facing
changes before worrying too much about the implementation details. A
subsequent commit will revise the implementation details once the new
version of the language design is settled.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2024-10-31 10:50:34 -07:00
Nathan Baulch
ea558d9d4b Fix typos (#1905)
Signed-off-by: Nathan Baulch <nathan.baulch@gmail.com>
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
Co-authored-by: Christian Mesh <christianmesh1@gmail.com>
2024-08-29 13:20:33 -04:00
Arel Rabinowitz
801421870a RFC: -exclude flag for planning and applying (#1860)
Signed-off-by: RLRabinowitz <rlrabinowitz2@gmail.com>
2024-08-08 09:31:36 -04:00
Jon Johnson
b6c31dfb87 Fix RFC template link (#1821)
Signed-off-by: Jon Johnson <jon.johnson@chainguard.dev>
2024-07-15 14:07:56 -04:00
Ronny Orot
5a40234661 RFC: OpenTofu Specific Code Override (#1699)
Signed-off-by: Ronny Orot <ronny.orot@gmail.com>
Co-authored-by: Oleksandr Levchenkov <ollevche@gmail.com>
2024-06-17 13:35:42 +03:00
Christian Mesh
ed0c761b0e RFC #1042: Planning the implementation of static evaluation (#1649)
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
Signed-off-by: Janos <86970079+janosdebugs@users.noreply.github.com>
Co-authored-by: Janos <86970079+janosdebugs@users.noreply.github.com>
Co-authored-by: James Humphries <James@james-humphries.co.uk>
Co-authored-by: Ronny Orot <ronny.orot@gmail.com>
Co-authored-by: Oleksandr Levchenkov <ollevche@gmail.com>
2024-06-12 09:21:32 -04:00
Christian Mesh
874483182b Backfill accepted RFCs into new location (#1702)
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2024-06-12 07:31:35 -04:00
Janos
bfe5a4cd13 New RFC process (#1669)
Signed-off-by: Janos <86970079+janosdebugs@users.noreply.github.com>
Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
Co-authored-by: James Humphries <James@james-humphries.co.uk>
Co-authored-by: Christian Mesh <christianmesh1@gmail.com>
Co-authored-by: Siddhartha Sonker <158144589+siddharthasonker95@users.noreply.github.com>
Co-authored-by: Ronny Orot <ronny.orot@gmail.com>
Co-authored-by: Oleksandr Levchenkov <ollevche@gmail.com>
2024-06-03 10:30:18 -04:00