-
Notifications
You must be signed in to change notification settings - Fork 117
/
config.go
55 lines (48 loc) · 1.89 KB
/
config.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
package backup
import (
"github.com/upbound/upjet/pkg/config"
"github.com/upbound/provider-aws/config/common"
)
// Configure adds configurations for backup group.
func Configure(p *config.Provider) {
p.AddResourceConfigurator("aws_backup_vault", func(r *config.Resource) {
r.References["kms_key_arn"] = config.Reference{
Type: "github.com/upbound/provider-aws/apis/kms/v1beta1.Key",
Extractor: common.PathARNExtractor,
}
})
p.AddResourceConfigurator("aws_backup_selection", func(r *config.Resource) {
r.References["iam_role_arn"] = config.Reference{
Type: "github.com/upbound/provider-aws/apis/iam/v1beta1.Role",
Extractor: common.PathARNExtractor,
}
r.References["plan_id"] = config.Reference{
Type: "Plan",
}
})
p.AddResourceConfigurator("aws_backup_vault_notifications", func(r *config.Resource) {
r.References["sns_topic_arn"] = config.Reference{
Type: "github.com/upbound/provider-aws/apis/sns/v1beta1.Topic",
Extractor: common.PathARNExtractor,
}
r.References["backup_vault_name"] = config.Reference{
Type: "Vault",
}
})
p.AddResourceConfigurator("aws_backup_vault_lock_configuration", func(r *config.Resource) {
r.References["backup_vault_name"] = config.Reference{
Type: "Vault",
}
})
p.AddResourceConfigurator("aws_backup_framework", func(r *config.Resource) {
r.UseAsync = true
})
p.AddResourceConfigurator("aws_backup_plan", func(r *config.Resource) {
r.UseAsync = true
})
p.AddResourceConfigurator("aws_backup_region_settings", func(r *config.Resource) {
r.TerraformResource.Schema["resource_type_management_preference"].Description += "\nWARNING: All parameters are required to be given: EFS, DynamoDB"
r.TerraformResource.Schema["resource_type_opt_in_preference"].Description += "\nWARNING: All parameters are required to be given: " +
"EFS, DynamoDB, EBS, EC2, FSx, S3, Aurora, RDS, Storage Gateway, VirtualMachine"
})
}