Commit graph

80 commits

Author SHA1 Message Date
stephybun
595aa3de0f
Backport GenerateResourceConfig fix to v1.14 (#37896)
Some checks are pending
build / Build for solaris_amd64 (push) Blocked by required conditions
build / Build for windows_amd64 (push) Blocked by required conditions
build / Build for freebsd_arm (push) Blocked by required conditions
build / Build for linux_arm (push) Blocked by required conditions
build / Build for darwin_arm64 (push) Blocked by required conditions
build / Build for linux_arm64 (push) Blocked by required conditions
build / Build Docker image for linux_386 (push) Blocked by required conditions
build / Build Docker image for linux_amd64 (push) Blocked by required conditions
build / Build Docker image for linux_arm (push) Blocked by required conditions
build / Build Docker image for linux_arm64 (push) Blocked by required conditions
build / Build e2etest for linux_386 (push) Blocked by required conditions
build / Build e2etest for windows_386 (push) Blocked by required conditions
build / Build e2etest for darwin_amd64 (push) Blocked by required conditions
build / Build e2etest for linux_amd64 (push) Blocked by required conditions
build / Build e2etest for windows_amd64 (push) Blocked by required conditions
build / Build e2etest for linux_arm (push) Blocked by required conditions
build / Build e2etest for darwin_arm64 (push) Blocked by required conditions
build / Build e2etest for linux_arm64 (push) Blocked by required conditions
build / Run e2e test for linux_386 (push) Blocked by required conditions
build / Run e2e test for windows_386 (push) Blocked by required conditions
build / Run e2e test for darwin_amd64 (push) Blocked by required conditions
build / Run e2e test for linux_amd64 (push) Blocked by required conditions
build / Run e2e test for windows_amd64 (push) Blocked by required conditions
build / Run e2e test for linux_arm (push) Blocked by required conditions
build / Run e2e test for linux_arm64 (push) Blocked by required conditions
build / Run terraform-exec test for linux amd64 (push) Blocked by required conditions
Quick Checks / Unit Tests (push) Waiting to run
Quick Checks / Race Tests (push) Waiting to run
Quick Checks / End-to-end Tests (push) Waiting to run
Quick Checks / Code Consistency Checks (push) Waiting to run
* marshal state and set in the proto req for generate resource config

* set state in the proto req for generate resource config in plugin6

* add GRPC tests for GenerateResourceConfig

* changelog
2025-11-25 13:00:17 -05:00
Daniel Banck
72e2548c24
Fix list resource diagnostics check (#37863)
* Fix list resource diagnostics check

* Improve error message on missing identity schema

* Add test case for list response diagnostics

* Add changelog
2025-11-04 14:56:15 +01:00
github-actions[bot]
20ca183851
list: send non-null "config" object to provider when not present in the list block (#37620) (#37662) 2025-09-24 12:10:34 +02:00
Kristin Laemmert
df113486a1
actions: remove references to action types, linked resources (#37616)
* action renaming
* actions: remove references to action types
* actions: remove references to linked_resources or action types from the plan proto
2025-09-16 08:46:22 -04:00
Daniel Schmidt
871451122f actions: move schema to single action type and remove linked resources
we want to leave the door open to evolve the design in the future based on feedback
2025-09-15 17:09:22 +02:00
Daniel Banck
1ac8497994
Add support for Terraform Search in the cloud backend (TF-25935) (#37479) 2025-09-15 13:21:05 +02:00
James Bardin
4e8717295e grpc method impl 2025-08-29 15:00:30 -04:00
James Bardin
ae08612243 udpate proto mocks 2025-08-29 15:00:30 -04:00
Daniel Schmidt
176263d936 actions: remove future action types
removing them for now, this gives us more flexibility in the future since the schema is not yet locked in
2025-08-29 16:25:41 +02:00
Daniel Banck
2563b07813
Allow list events with only warnings (#37415)
This updates the event processing logic. Terraform now allows error and
warning diagnostics for list events with all other fields set to null.
The combination of a warning with a valid result is still possible.
2025-08-08 11:24:05 +02:00
Daniel Schmidt
17e7338b0f add client capabilites across the board 2025-08-05 15:34:13 +02:00
Kristin Laemmert
0374f04424
Add ValidateActionConfig to provider interface, protocol & internal implementations (#37345)
* Add ValidateActionConfig to provider interface and protocol

* Update internal/provider-simple-v6/provider.go

Co-authored-by: Daniel Schmidt <danielmschmidt92@gmail.com>

---------

Co-authored-by: Daniel Schmidt <danielmschmidt92@gmail.com>
2025-07-18 14:14:44 -04:00
Kristin Laemmert
9256074c43
Actions in plan/changes (#37320)
* Add actions to the plans and change
* jsonplan - ignoring LinkedResources for now, those are not in the MVP
* pausing here: we'll work on the plan rendering later
2025-07-17 08:19:57 -04:00
Daniel Schmidt
24773cf86e improve allocation 2025-07-10 16:06:44 +02:00
Daniel Schmidt
a2ce38ce12 use gomock generated mocks for the action invoke stream API 2025-07-10 16:06:44 +02:00
Daniel Schmidt
ac132d1b15 add provider implementation for actions 2025-07-10 16:06:44 +02:00
Daniel Schmidt
e6b848d5ab add actions protobuf definitions 2025-07-10 16:06:44 +02:00
Sarah French
0f8e77a50f
PSS: Add GetStates and DeleteState RPCs to plugin protocol v6 (#37288)
* Add GetStates RPC method to Plugin Protocol v6

* Add DeleteState RPC method to Plugin Protocol v6

* Add methods to provider-simple

* Fix error messages

* Apply suggestions from code review

Co-authored-by: Radek Simko <radeksimko@users.noreply.github.com>

* Change how GetStates RPC returns the list of state names

* Change GetStates implementation to use new data type

* `make protobuf` to accommodate new code comments

---------

Co-authored-by: Radek Simko <radeksimko@users.noreply.github.com>
2025-07-07 10:40:45 +01:00
Samsondeen
3d3439e00e
Testing list blocks with the gRPC Provider (#37236) 2025-06-18 11:16:29 +02:00
Daniel Banck
540512e27b
Add config to List response (#37237) 2025-06-13 17:06:51 +02:00
Samsondeen
e178088a5b
unwrap nested config (#37235) 2025-06-13 13:28:19 +02:00
Samsondeen
cacd7861e5
add nested config block to list block (#37229) 2025-06-11 15:37:45 +02:00
Samsondeen
685ff9f192
Schema representation of list block config and results (#37209) 2025-06-10 20:08:54 +02:00
Daniel Banck
cb58a15f3d
Implement ListResource RPC (TF-25509) (#37092)
* Implement ListResource RPC via callbacks

* Implement ListResource with iterators

* Change `ListResourceResponse` to slice

* Turn ListResourceResponse into a struct

* Add a limit for ListResource

* explicitly cancel stream when listing resources

---------

Co-authored-by: Samsondeen Dare <samsondeen.dare@hashicorp.com>
2025-06-04 09:40:10 +02:00
Radek Simko
643266dc90
Add initial state store protocol skeleton (#37197)
* Add initial state store protocol skeleton

Introduce ValidateStateStoreConfig + ConfigureStateStore
Update GetProviderSchema + GetMetadata (for mux)

* address PR feedback
2025-06-03 13:52:35 +00:00
Daniel Banck
44ae7da18e
Update Plugin Protocol for List and Implement ValidateListResourceConfig (#37007)
* Minor auto-formatting changes

* Add list RPC and schema protobuf definitions

* make protobuf

* make generate

* Add ValidateListResourceConfig implementation
2025-05-19 10:20:52 +02:00
Daniel Banck
421fe3580f
Check GetResourceIdentitySchemas diagnostics and return early (#36999) 2025-05-16 13:55:12 +02:00
Austin Valle
5c4c669882
Fix ImportResourceState RPC response decoding for identity data (#36806)
* Fix `ImportResourceState` RPC response decoding for identity data

* add tests for importy by identity

* re-run action for flakey UI test
2025-04-01 18:03:06 +02:00
Austin Valle
31f1ef37a1 update log 2025-03-24 17:34:03 -04:00
Daniel Schmidt
fec6e4b552 send resource identities to provider calls 2025-03-12 09:18:55 +01:00
Daniel Banck
b2b42c0fb4
Store resource identities in state (TF-23255) (#36464)
* Persist resource identity in Terraform state

* make syncdeps

* Move identity schema merging closer to the protocol

* mock GetResourceIdentitySchemas

* Fix identity refresh tests

* Add more tests

* Change grcpwrap upgrade identity

* Review feedback

* Remove unnecessary version conversion

* Check if GetResourceIdentitySchemas RPC call is implemented

* Update function signature docs

* Adapt protocol changes

* Check unimplemented error for identities in GetSchema
2025-03-11 20:58:44 +01:00
Daniel Banck
10c9b64007
Rename schema.Block to Body (#36629) 2025-03-04 16:33:43 +01:00
James Bardin
e1485f27fc use go tool to run generate commands 2025-02-12 12:25:50 -05:00
Radek Simko
289a3568da
Address go vet 1.24 failures (#36485)
* address go vet failures

* avoid unnecessary .Error()
2025-02-12 16:51:53 +00:00
Daniel Banck
857d188308
Add resource identity message to protocol (TF-23178) (#36451)
* protocol: create new 5.9 and 6.9 protocol versions

* protocol: add resource identity messages to 5.9 & 6.9

* make protobuf

* make generate

* grpcwrap: Add RPC calls skeleton
2025-02-10 16:31:50 +01:00
Daniel Schmidt
e29708c4d9
ephemeral: add WriteOnlyAttributesAllowed client capability to validate resource 2024-12-18 09:30:32 +01:00
Daniel Schmidt
0222b97692
ephemeral: add write-only attribute to proto to schema conversion 2024-12-12 10:56:40 +01:00
Daniel Schmidt
50b3732f72
write-only attributes: add to provider schema 2024-11-12 16:42:05 +01:00
James Bardin
6f5007efe7 grpc mock tests 2024-09-30 10:51:04 -04:00
James Bardin
94687676a3 add basic grpc wrapper implemenation 2024-09-30 10:51:04 -04:00
James Bardin
9c3dc8f73a ephemeral protocol rename
Add `Resource` to all the ephemeral protocol symbols to make them
consistent with existing naming conventions.
2024-09-20 11:08:53 -04:00
James Bardin
03e1a9835d add ephemeral validation to existing implementations 2024-09-19 10:10:20 -04:00
James Bardin
26915ef6f1 update provider mocks 2024-09-19 10:02:45 -04:00
James Bardin
95124dbe5a update provider impls for ephemeral
Add ephemeral methods to provider implementations so they still satisfy
the provider interface
2024-09-13 08:55:48 -04:00
Jeff Bonhag
8b2941455a
Upgrade go-tfe from 1.51.0 to 1.58.0 (#35495)
* go get github.com/hashicorp/go-tfe@v1.58.0

* Switch to go.uber.org/mock for mocks
2024-08-08 11:31:49 +02:00
Daniel Schmidt
ce721b8e9c
stacks: add deferred to grpc calls 2024-04-26 13:27:56 +02:00
Liam Cervante
055dd27e53
deferred actions: implement latest provider protocol changes (#35063) 2024-04-24 14:10:08 +02:00
Daniel Schmidt
a26fd2e81f
stacks: add deferrals to PlanResourceChange
Co-authored-by: Mutahhir Hayat <mutahhir.hayat@hashicorp.com>
2024-04-16 10:18:44 +02:00
Mark DeCrane
e6f4ffa8a3
stacks: adding deferred action to datasource reads 2024-04-11 14:26:05 +02:00
Daniel Schmidt
b59edb4463
stacks: handle deferred actions in refresh
Co-authored-by: Matej Risek <matej.risek@hashicorp.com>
2024-04-08 14:20:22 +02:00