Skip to content

Commit

Permalink
automated update of providers
Browse files Browse the repository at this point in the history
  • Loading branch information
lingonbot committed Jul 17, 2023
1 parent 6304282 commit b952ee4
Show file tree
Hide file tree
Showing 8,925 changed files with 3,067,419 additions and 444 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
10 changes: 5 additions & 5 deletions archive/2.4.0/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ go 1.20

require (
github.com/hashicorp/hcl/v2 v2.17.0
github.com/volvo-cars/lingon v0.0.0-20230707195820-333df09ffe29
github.com/volvo-cars/lingon v0.0.0-20230716050242-618073d65bec
)

require (
Expand All @@ -20,8 +20,8 @@ require (
github.com/leodido/go-urn v1.2.4 // indirect
github.com/mitchellh/go-wordwrap v1.0.1 // indirect
github.com/zclconf/go-cty v1.13.2 // indirect
golang.org/x/crypto v0.10.0 // indirect
golang.org/x/net v0.11.0 // indirect
golang.org/x/sys v0.9.0 // indirect
golang.org/x/text v0.10.0 // indirect
golang.org/x/crypto v0.11.0 // indirect
golang.org/x/net v0.12.0 // indirect
golang.org/x/sys v0.10.0 // indirect
golang.org/x/text v0.11.0 // indirect
)
44 changes: 12 additions & 32 deletions archive/2.4.0/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,8 @@ github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkE
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/eidolon/wordwrap v0.0.0-20161011182207-e0f54129b8bb h1:ioQwBmKdOCpMVS/bDaESqNWXIE/aw4+gsVtysCGMWZ4=
github.com/fatih/color v1.15.0 h1:kOqh6YHBtK8aywxGerMG2Eq3H6Qgoqeo13Bk2Mv/nBs=
github.com/gabriel-vasile/mimetype v1.4.2 h1:w5qFW6JKBz9Y393Y4q372O9A7cUSequkh1Q7OhCmWKU=
github.com/gabriel-vasile/mimetype v1.4.2/go.mod h1:zApsH/mKG4w07erKIaJPFiX0Tsq9BFQgN3qGY5GnNgA=
github.com/go-logr/logr v1.2.4 h1:g01GSCwiDw2xSZfjJ2/T9M+S6pFdcNtFYsp+Y43HYDQ=
github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s=
github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA=
github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY=
Expand All @@ -18,28 +15,21 @@ github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91
github.com/go-playground/validator/v10 v10.14.1 h1:9c50NUPC30zyuKprjL3vNZ0m5oG+jU0zvx4AqHGnv4k=
github.com/go-playground/validator/v10 v10.14.1/go.mod h1:9iXMNT7sEkjXb0I+enO7QXmzG6QCsPWY4zveKFVRSyU=
github.com/go-test/deep v1.0.3 h1:ZrJSEWsXzPOxaZnFteGEfooLba+ju3FYIbOrS+rQd68=
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=
github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek=
github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
github.com/hashicorp/hcl/v2 v2.17.0 h1:z1XvSUyXd1HP10U4lrLg5e0JMVz6CPaJvAgxM0KNZVY=
github.com/hashicorp/hcl/v2 v2.17.0/go.mod h1:gJyW2PTShkJqQBKpAmPO3yxMxIuoXkOF2TpqXzrQyx4=
github.com/hashicorp/terraform-json v0.17.1 h1:eMfvh/uWggKmY7Pmb3T85u86E2EQg6EQHgyRwf3RkyA=
github.com/hashicorp/terraform-json v0.17.1/go.mod h1:Huy6zt6euxaY9knPAFKjUITn8QxUFIe9VuSzb4zn/0o=
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI=
github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE=
github.com/kylelemons/godebug v0.0.0-20170820004349-d65d576e9348 h1:MtvEpTB6LX3vkb4ax0b5D2DHbNAUsen0Gx5wZoq3lV4=
github.com/leodido/go-urn v1.2.4 h1:XlAE/cm/ms7TE/VMVoduSpNBoyc2dOxHs5MZSwAN63Q=
github.com/leodido/go-urn v1.2.4/go.mod h1:7ZrI8mTSeBSHl/UaRyKQW1qZeMgak41ANeCNaVckg+4=
github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA=
github.com/mitchellh/go-wordwrap v1.0.1 h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0=
github.com/mitchellh/go-wordwrap v1.0.1/go.mod h1:R62XHJLzvMFRBbcrT7m7WgmE1eOyTSsCt+hzestvNj0=
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/sergi/go-diff v1.0.0 h1:Kpca3qRNrduNnOQeazBd0ysaKrUJiIuISHxogkT9RPQ=
Expand All @@ -50,31 +40,21 @@ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify v1.8.2 h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ8=
github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
github.com/volvo-cars/lingon v0.0.0-20230707195820-333df09ffe29 h1:m9j5VYlhohtIZnlHsGjY7K/vPWWa0yLnqt69f5EtVnM=
github.com/volvo-cars/lingon v0.0.0-20230707195820-333df09ffe29/go.mod h1:H7JSWPEP7DJ9yDI6IlFLdubgn4kcjThpzC6/WWmi6z0=
github.com/volvo-cars/lingon v0.0.0-20230716050242-618073d65bec h1:SNLs69Hyjf6Jcn1gIiyZSBEa89xTIW+Y/jEOmX4iKZ4=
github.com/volvo-cars/lingon v0.0.0-20230716050242-618073d65bec/go.mod h1:i4PXUh6JWOUFDjPX+/YASsa7xr4GRtOfxY3TD5pIJbk=
github.com/zclconf/go-cty v1.13.2 h1:4GvrUxe/QUDYuJKAav4EYqdM47/kZa672LwmXFmEKT0=
github.com/zclconf/go-cty v1.13.2/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0=
github.com/zegl/kube-score v1.16.1 h1:aR4355f6kH9rwVMQPUT9946KlcHvr4r8drLQK5J7kOM=
golang.org/x/crypto v0.10.0 h1:LKqV2xt9+kDzSTfOhx4FrkEBcMrAgHSYgzywV9zcGmM=
golang.org/x/crypto v0.10.0/go.mod h1:o4eNf7Ede1fv+hwOwZsTHl9EsPFO6q6ZvYR8vYfY45I=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df h1:UA2aFVmmsIlefxMk29Dp2juaUSth8Pyn3Tq5Y5mJGME=
golang.org/x/net v0.11.0 h1:Gi2tvZIJyBtO9SDr1q9h5hEQCp/4L2RQ+ar0qjx2oNU=
golang.org/x/net v0.11.0/go.mod h1:2L/ixqYpgIVXmeoSA/4Lu7BzTG4KIyPIryS4IsOd1oQ=
golang.org/x/sys v0.9.0 h1:KS/R3tvhPqvJvwcKfnBHJwwthS11LRhmM5D59eEXa0s=
golang.org/x/sys v0.9.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/text v0.10.0 h1:UpjohKhiEgNc0CSauXmwYftY1+LlaC75SJwh0SgCX58=
golang.org/x/text v0.10.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
golang.org/x/tools v0.10.0 h1:tvDr/iQoUqNdohiYm0LmmKcBk+q86lb9EprIUFhHHGg=
golang.org/x/crypto v0.11.0 h1:6Ewdq3tDic1mg5xRO4milcWCfMVQhI4NkqWWvqejpuA=
golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio=
golang.org/x/exp v0.0.0-20230713183714-613f0c0eb8a1 h1:MGwJjxBy0HJshjDNfLsYO8xppfqWlA5ZT9OhtUUhTNw=
golang.org/x/net v0.12.0 h1:cfawfvKITfUsFCeJIHJrbSxpeu/E81khclypR0GVT50=
golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA=
golang.org/x/sys v0.10.0 h1:SqMFp9UcQJZa+pmYuAKjd9xq1f0j5rLcDIk0mj4qAsA=
golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/text v0.11.0 h1:LAntKIrcmeSKERyiOh0XMV39LXS8IE9UL2yP7+f5ij4=
golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
golang.org/x/tools v0.11.0 h1:EMCa6U9S2LtZXLAMoWiR/R8dAQFRqbAitmbJ2UKhoi8=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc=
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
k8s.io/api v0.27.3 h1:yR6oQXXnUEBWEWcvPWS0jQL575KoAboQPfJAuKNrw5Y=
k8s.io/apimachinery v0.27.3 h1:Ubye8oBufD04l9QnNtW05idcOe9Z3GQN8+7PqmuVcUM=
k8s.io/klog/v2 v2.100.1 h1:7WCHKK6K8fNhTqfBhISHQ97KrnJNFZMcQvKp7gP/tmg=
k8s.io/utils v0.0.0-20230505201702-9f6742963106 h1:EObNQ3TW2D+WptiYXlApGNLVy0zm/JIBVY9i+M4wpAU=
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo=
sigs.k8s.io/structured-merge-diff/v4 v4.2.3 h1:PRbqxJClWWYMNV1dhaG4NsibJbArud9kFxnAMREiWFE=
sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo=
142 changes: 142 additions & 0 deletions aws/5.8.0/accessanalyzer_analyzer.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
// CODE GENERATED BY github.com/volvo-cars/lingon. DO NOT EDIT.

package aws

import (
"encoding/json"
"fmt"
"github.com/volvo-cars/lingon/pkg/terra"
"io"
)

// NewAccessanalyzerAnalyzer creates a new instance of [AccessanalyzerAnalyzer].
func NewAccessanalyzerAnalyzer(name string, args AccessanalyzerAnalyzerArgs) *AccessanalyzerAnalyzer {
return &AccessanalyzerAnalyzer{
Args: args,
Name: name,
}
}

var _ terra.Resource = (*AccessanalyzerAnalyzer)(nil)

// AccessanalyzerAnalyzer represents the Terraform resource aws_accessanalyzer_analyzer.
type AccessanalyzerAnalyzer struct {
Name string
Args AccessanalyzerAnalyzerArgs
state *accessanalyzerAnalyzerState
DependsOn terra.Dependencies
Lifecycle *terra.Lifecycle
}

// Type returns the Terraform object type for [AccessanalyzerAnalyzer].
func (aa *AccessanalyzerAnalyzer) Type() string {
return "aws_accessanalyzer_analyzer"
}

// LocalName returns the local name for [AccessanalyzerAnalyzer].
func (aa *AccessanalyzerAnalyzer) LocalName() string {
return aa.Name
}

// Configuration returns the configuration (args) for [AccessanalyzerAnalyzer].
func (aa *AccessanalyzerAnalyzer) Configuration() interface{} {
return aa.Args
}

// DependOn is used for other resources to depend on [AccessanalyzerAnalyzer].
func (aa *AccessanalyzerAnalyzer) DependOn() terra.Reference {
return terra.ReferenceResource(aa)
}

// Dependencies returns the list of resources [AccessanalyzerAnalyzer] depends_on.
func (aa *AccessanalyzerAnalyzer) Dependencies() terra.Dependencies {
return aa.DependsOn
}

// LifecycleManagement returns the lifecycle block for [AccessanalyzerAnalyzer].
func (aa *AccessanalyzerAnalyzer) LifecycleManagement() *terra.Lifecycle {
return aa.Lifecycle
}

// Attributes returns the attributes for [AccessanalyzerAnalyzer].
func (aa *AccessanalyzerAnalyzer) Attributes() accessanalyzerAnalyzerAttributes {
return accessanalyzerAnalyzerAttributes{ref: terra.ReferenceResource(aa)}
}

// ImportState imports the given attribute values into [AccessanalyzerAnalyzer]'s state.
func (aa *AccessanalyzerAnalyzer) ImportState(av io.Reader) error {
aa.state = &accessanalyzerAnalyzerState{}
if err := json.NewDecoder(av).Decode(aa.state); err != nil {
return fmt.Errorf("decoding state into resource %s.%s: %w", aa.Type(), aa.LocalName(), err)
}
return nil
}

// State returns the state and a bool indicating if [AccessanalyzerAnalyzer] has state.
func (aa *AccessanalyzerAnalyzer) State() (*accessanalyzerAnalyzerState, bool) {
return aa.state, aa.state != nil
}

// StateMust returns the state for [AccessanalyzerAnalyzer]. Panics if the state is nil.
func (aa *AccessanalyzerAnalyzer) StateMust() *accessanalyzerAnalyzerState {
if aa.state == nil {
panic(fmt.Sprintf("state is nil for resource %s.%s", aa.Type(), aa.LocalName()))
}
return aa.state
}

// AccessanalyzerAnalyzerArgs contains the configurations for aws_accessanalyzer_analyzer.
type AccessanalyzerAnalyzerArgs struct {
// AnalyzerName: string, required
AnalyzerName terra.StringValue `hcl:"analyzer_name,attr" validate:"required"`
// Id: string, optional
Id terra.StringValue `hcl:"id,attr"`
// Tags: map of string, optional
Tags terra.MapValue[terra.StringValue] `hcl:"tags,attr"`
// TagsAll: map of string, optional
TagsAll terra.MapValue[terra.StringValue] `hcl:"tags_all,attr"`
// Type: string, optional
Type terra.StringValue `hcl:"type,attr"`
}
type accessanalyzerAnalyzerAttributes struct {
ref terra.Reference
}

// AnalyzerName returns a reference to field analyzer_name of aws_accessanalyzer_analyzer.
func (aa accessanalyzerAnalyzerAttributes) AnalyzerName() terra.StringValue {
return terra.ReferenceAsString(aa.ref.Append("analyzer_name"))
}

// Arn returns a reference to field arn of aws_accessanalyzer_analyzer.
func (aa accessanalyzerAnalyzerAttributes) Arn() terra.StringValue {
return terra.ReferenceAsString(aa.ref.Append("arn"))
}

// Id returns a reference to field id of aws_accessanalyzer_analyzer.
func (aa accessanalyzerAnalyzerAttributes) Id() terra.StringValue {
return terra.ReferenceAsString(aa.ref.Append("id"))
}

// Tags returns a reference to field tags of aws_accessanalyzer_analyzer.
func (aa accessanalyzerAnalyzerAttributes) Tags() terra.MapValue[terra.StringValue] {
return terra.ReferenceAsMap[terra.StringValue](aa.ref.Append("tags"))
}

// TagsAll returns a reference to field tags_all of aws_accessanalyzer_analyzer.
func (aa accessanalyzerAnalyzerAttributes) TagsAll() terra.MapValue[terra.StringValue] {
return terra.ReferenceAsMap[terra.StringValue](aa.ref.Append("tags_all"))
}

// Type returns a reference to field type of aws_accessanalyzer_analyzer.
func (aa accessanalyzerAnalyzerAttributes) Type() terra.StringValue {
return terra.ReferenceAsString(aa.ref.Append("type"))
}

type accessanalyzerAnalyzerState struct {
AnalyzerName string `json:"analyzer_name"`
Arn string `json:"arn"`
Id string `json:"id"`
Tags map[string]string `json:"tags"`
TagsAll map[string]string `json:"tags_all"`
Type string `json:"type"`
}
128 changes: 128 additions & 0 deletions aws/5.8.0/accessanalyzer_archive_rule.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
// CODE GENERATED BY github.com/volvo-cars/lingon. DO NOT EDIT.

package aws

import (
"encoding/json"
"fmt"
accessanalyzerarchiverule "github.com/golingon/terraproviders/aws/5.8.0/accessanalyzerarchiverule"
"github.com/volvo-cars/lingon/pkg/terra"
"io"
)

// NewAccessanalyzerArchiveRule creates a new instance of [AccessanalyzerArchiveRule].
func NewAccessanalyzerArchiveRule(name string, args AccessanalyzerArchiveRuleArgs) *AccessanalyzerArchiveRule {
return &AccessanalyzerArchiveRule{
Args: args,
Name: name,
}
}

var _ terra.Resource = (*AccessanalyzerArchiveRule)(nil)

// AccessanalyzerArchiveRule represents the Terraform resource aws_accessanalyzer_archive_rule.
type AccessanalyzerArchiveRule struct {
Name string
Args AccessanalyzerArchiveRuleArgs
state *accessanalyzerArchiveRuleState
DependsOn terra.Dependencies
Lifecycle *terra.Lifecycle
}

// Type returns the Terraform object type for [AccessanalyzerArchiveRule].
func (aar *AccessanalyzerArchiveRule) Type() string {
return "aws_accessanalyzer_archive_rule"
}

// LocalName returns the local name for [AccessanalyzerArchiveRule].
func (aar *AccessanalyzerArchiveRule) LocalName() string {
return aar.Name
}

// Configuration returns the configuration (args) for [AccessanalyzerArchiveRule].
func (aar *AccessanalyzerArchiveRule) Configuration() interface{} {
return aar.Args
}

// DependOn is used for other resources to depend on [AccessanalyzerArchiveRule].
func (aar *AccessanalyzerArchiveRule) DependOn() terra.Reference {
return terra.ReferenceResource(aar)
}

// Dependencies returns the list of resources [AccessanalyzerArchiveRule] depends_on.
func (aar *AccessanalyzerArchiveRule) Dependencies() terra.Dependencies {
return aar.DependsOn
}

// LifecycleManagement returns the lifecycle block for [AccessanalyzerArchiveRule].
func (aar *AccessanalyzerArchiveRule) LifecycleManagement() *terra.Lifecycle {
return aar.Lifecycle
}

// Attributes returns the attributes for [AccessanalyzerArchiveRule].
func (aar *AccessanalyzerArchiveRule) Attributes() accessanalyzerArchiveRuleAttributes {
return accessanalyzerArchiveRuleAttributes{ref: terra.ReferenceResource(aar)}
}

// ImportState imports the given attribute values into [AccessanalyzerArchiveRule]'s state.
func (aar *AccessanalyzerArchiveRule) ImportState(av io.Reader) error {
aar.state = &accessanalyzerArchiveRuleState{}
if err := json.NewDecoder(av).Decode(aar.state); err != nil {
return fmt.Errorf("decoding state into resource %s.%s: %w", aar.Type(), aar.LocalName(), err)
}
return nil
}

// State returns the state and a bool indicating if [AccessanalyzerArchiveRule] has state.
func (aar *AccessanalyzerArchiveRule) State() (*accessanalyzerArchiveRuleState, bool) {
return aar.state, aar.state != nil
}

// StateMust returns the state for [AccessanalyzerArchiveRule]. Panics if the state is nil.
func (aar *AccessanalyzerArchiveRule) StateMust() *accessanalyzerArchiveRuleState {
if aar.state == nil {
panic(fmt.Sprintf("state is nil for resource %s.%s", aar.Type(), aar.LocalName()))
}
return aar.state
}

// AccessanalyzerArchiveRuleArgs contains the configurations for aws_accessanalyzer_archive_rule.
type AccessanalyzerArchiveRuleArgs struct {
// AnalyzerName: string, required
AnalyzerName terra.StringValue `hcl:"analyzer_name,attr" validate:"required"`
// Id: string, optional
Id terra.StringValue `hcl:"id,attr"`
// RuleName: string, required
RuleName terra.StringValue `hcl:"rule_name,attr" validate:"required"`
// Filter: min=1
Filter []accessanalyzerarchiverule.Filter `hcl:"filter,block" validate:"min=1"`
}
type accessanalyzerArchiveRuleAttributes struct {
ref terra.Reference
}

// AnalyzerName returns a reference to field analyzer_name of aws_accessanalyzer_archive_rule.
func (aar accessanalyzerArchiveRuleAttributes) AnalyzerName() terra.StringValue {
return terra.ReferenceAsString(aar.ref.Append("analyzer_name"))
}

// Id returns a reference to field id of aws_accessanalyzer_archive_rule.
func (aar accessanalyzerArchiveRuleAttributes) Id() terra.StringValue {
return terra.ReferenceAsString(aar.ref.Append("id"))
}

// RuleName returns a reference to field rule_name of aws_accessanalyzer_archive_rule.
func (aar accessanalyzerArchiveRuleAttributes) RuleName() terra.StringValue {
return terra.ReferenceAsString(aar.ref.Append("rule_name"))
}

func (aar accessanalyzerArchiveRuleAttributes) Filter() terra.SetValue[accessanalyzerarchiverule.FilterAttributes] {
return terra.ReferenceAsSet[accessanalyzerarchiverule.FilterAttributes](aar.ref.Append("filter"))
}

type accessanalyzerArchiveRuleState struct {
AnalyzerName string `json:"analyzer_name"`
Id string `json:"id"`
RuleName string `json:"rule_name"`
Filter []accessanalyzerarchiverule.FilterState `json:"filter"`
}
Loading

0 comments on commit b952ee4

Please sign in to comment.