From fc7404ccbf6ab78443fc58472adbabddb019562c Mon Sep 17 00:00:00 2001 From: VladyslavLukyanenko Date: Thu, 19 Oct 2023 02:48:35 +0200 Subject: [PATCH 1/2] add api keys --- formal/resources/resource_satellite.go | 13 +++++++++---- go.mod | 20 ++++++++++---------- go.sum | 19 +++++++++++++++++++ 3 files changed, 38 insertions(+), 14 deletions(-) diff --git a/formal/resources/resource_satellite.go b/formal/resources/resource_satellite.go index 48cb5502..9e6f0b81 100644 --- a/formal/resources/resource_satellite.go +++ b/formal/resources/resource_satellite.go @@ -1,13 +1,13 @@ package resource import ( + adminv1 "buf.build/gen/go/formal/admin/protocolbuffers/go/admin/v1" "context" "errors" "fmt" "strconv" "time" - adminv1 "buf.build/gen/go/formal/admin/protocolbuffers/go/admin/v1" "github.com/bufbuild/connect-go" "github.com/formalco/terraform-provider-formal/formal/clients" "github.com/hashicorp/terraform-plugin-log/tflog" @@ -43,11 +43,12 @@ func ResourceSatellite() *schema.Resource { Required: true, ForceNew: true, }, - "tls_cert": { + "api_key": { // This description is used by the documentation generator and the language server. - Description: "TLS certificate of the Satellite.", + Description: "Api key of the Satellite.", Type: schema.TypeString, Computed: true, + Sensitive: true, }, }, } @@ -119,7 +120,11 @@ func resourceSatelliteRead(ctx context.Context, d *schema.ResourceData, meta int d.Set("name", res.Msg.Satellite.Name) if c.Grpc.ReturnSensitiveValue { - d.Set("tls_cert", res.Msg.Satellite.TlsCert) + res, err := c.Grpc.Sdk.SatelliteServiceClient.GetSatelliteApiKey(ctx, connect.NewRequest(&adminv1.GetSatelliteApiKeyRequest{Id: d.Id()})) + if err != nil { + return diag.FromErr(err) + } + d.Set("api_key", res.Msg.ApiKey) } d.SetId(res.Msg.Satellite.Id) diff --git a/go.mod b/go.mod index 0219f797..af06ce8d 100644 --- a/go.mod +++ b/go.mod @@ -3,9 +3,9 @@ module github.com/formalco/terraform-provider-formal go 1.20 require ( - buf.build/gen/go/formal/admin/protocolbuffers/go v1.31.0-20231002174734-de8b25337c95.1 + buf.build/gen/go/formal/admin/protocolbuffers/go v1.31.0-20231019002441-3c2c5d027b0d.1 github.com/bufbuild/connect-go v1.10.0 - github.com/formalco/go-sdk/sdk v1.2.2 + github.com/formalco/go-sdk/sdk v1.2.3 github.com/hashicorp/terraform-plugin-docs v0.13.0 github.com/hashicorp/terraform-plugin-log v0.9.0 github.com/hashicorp/terraform-plugin-sdk/v2 v2.29.0 @@ -13,7 +13,7 @@ require ( ) require ( - buf.build/gen/go/formal/admin/bufbuild/connect-go v1.10.0-20231002174734-de8b25337c95.1 // indirect + buf.build/gen/go/formal/admin/bufbuild/connect-go v1.10.0-20231019002441-3c2c5d027b0d.1 // indirect github.com/Masterminds/goutils v1.1.1 // indirect github.com/Masterminds/semver/v3 v3.1.1 // indirect github.com/Masterminds/sprig/v3 v3.2.2 // indirect @@ -25,8 +25,8 @@ require ( github.com/cloudflare/circl v1.3.3 // indirect github.com/fatih/color v1.15.0 // indirect github.com/golang/protobuf v1.5.3 // indirect - github.com/google/go-cmp v0.5.9 // indirect - github.com/google/uuid v1.3.0 // indirect + github.com/google/go-cmp v0.6.0 // indirect + github.com/google/uuid v1.3.1 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-checkpoint v0.5.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect @@ -37,7 +37,7 @@ require ( github.com/hashicorp/go-uuid v1.0.3 // indirect github.com/hashicorp/go-version v1.6.0 // indirect github.com/hashicorp/hc-install v0.6.0 // indirect - github.com/hashicorp/hcl/v2 v2.18.1 // indirect + github.com/hashicorp/hcl/v2 v2.19.1 // indirect github.com/hashicorp/logutils v1.0.0 // indirect github.com/hashicorp/terraform-exec v0.19.0 // indirect github.com/hashicorp/terraform-json v0.17.1 // indirect @@ -48,7 +48,7 @@ require ( github.com/huandu/xstrings v1.3.2 // indirect github.com/imdario/mergo v0.3.15 // indirect github.com/mattn/go-colorable v0.1.13 // indirect - github.com/mattn/go-isatty v0.0.19 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect github.com/mitchellh/cli v1.1.5 // indirect github.com/mitchellh/copystructure v1.2.0 // indirect github.com/mitchellh/go-testing-interface v1.14.1 // indirect @@ -66,10 +66,10 @@ require ( github.com/zclconf/go-cty v1.14.1 // indirect golang.org/x/crypto v0.14.0 // indirect golang.org/x/mod v0.12.0 // indirect - golang.org/x/net v0.16.0 // indirect + golang.org/x/net v0.17.0 // indirect golang.org/x/sys v0.13.0 // indirect golang.org/x/text v0.13.0 // indirect google.golang.org/appengine v1.6.8 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20231002182017-d307bd883b97 // indirect - google.golang.org/grpc v1.58.2 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20231016165738-49dd2c1f3d0b // indirect + google.golang.org/grpc v1.59.0 // indirect ) diff --git a/go.sum b/go.sum index f486a41b..cb82b389 100644 --- a/go.sum +++ b/go.sum @@ -2,10 +2,14 @@ buf.build/gen/go/formal/admin/bufbuild/connect-go v1.10.0-20230906231527-3330f26 buf.build/gen/go/formal/admin/bufbuild/connect-go v1.10.0-20230906231527-3330f2679f51.1/go.mod h1:14BcAWffQ2l7GB5PFq+KycQlXNNPFREgmTAlC02V6NA= buf.build/gen/go/formal/admin/bufbuild/connect-go v1.10.0-20231002174734-de8b25337c95.1 h1:sSN29eVpcl6TUChwFjVoDxgT9WV71uGlnVNN1/xU+lQ= buf.build/gen/go/formal/admin/bufbuild/connect-go v1.10.0-20231002174734-de8b25337c95.1/go.mod h1:1DUBWg3pWSwPv6hCVfoSNf29j/uDb7MlWWE+gjhPTDs= +buf.build/gen/go/formal/admin/bufbuild/connect-go v1.10.0-20231019002441-3c2c5d027b0d.1 h1:NnRkkMOIWfSKZeBYJd/z4fYuVR7lRW95DwNjTdp6uxc= +buf.build/gen/go/formal/admin/bufbuild/connect-go v1.10.0-20231019002441-3c2c5d027b0d.1/go.mod h1:qCPNlm3DNnxPRQW6vSZN7iGUWQJApMC+aevNEJqAppw= buf.build/gen/go/formal/admin/protocolbuffers/go v1.31.0-20230906231527-3330f2679f51.1 h1:Eu+zTzvCXknSatTmFSH35FMeX8TAy2kKjzYq5ORCmMk= buf.build/gen/go/formal/admin/protocolbuffers/go v1.31.0-20230906231527-3330f2679f51.1/go.mod h1:tT2ehgfLh5ummBwlcRRUHwLr5Xh7Sy1lYZTjZwCDoWo= buf.build/gen/go/formal/admin/protocolbuffers/go v1.31.0-20231002174734-de8b25337c95.1 h1:S5u+OYI6+x2geHAnxJf2YEhFFV4KHWOFou2K1EB3zzA= buf.build/gen/go/formal/admin/protocolbuffers/go v1.31.0-20231002174734-de8b25337c95.1/go.mod h1:tT2ehgfLh5ummBwlcRRUHwLr5Xh7Sy1lYZTjZwCDoWo= +buf.build/gen/go/formal/admin/protocolbuffers/go v1.31.0-20231019002441-3c2c5d027b0d.1 h1:0c+EHqg4mHn62m6Sq8dMGYkDBSH+3n4ocCfitqW+chY= +buf.build/gen/go/formal/admin/protocolbuffers/go v1.31.0-20231019002441-3c2c5d027b0d.1/go.mod h1:tT2ehgfLh5ummBwlcRRUHwLr5Xh7Sy1lYZTjZwCDoWo= dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI= github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= @@ -46,6 +50,8 @@ github.com/formalco/go-sdk/sdk v1.2.1 h1:x9dvmm5cTojzI29quu+6Tnv5qterdWIWDo43ieo github.com/formalco/go-sdk/sdk v1.2.1/go.mod h1:NwJmPU0KjC4MGWgV7D4SacD/4+3Bj8EYNOTyQPl+/YM= github.com/formalco/go-sdk/sdk v1.2.2 h1:Vj/SCPIBfbc3fY4YHXLmrcvZvewyf1gdPZKwSfunKuw= github.com/formalco/go-sdk/sdk v1.2.2/go.mod h1:7HtRsi6fpE/TZEgM0c80oWD8ttpVmYYL4miXaBSIcrQ= +github.com/formalco/go-sdk/sdk v1.2.3 h1:l6ScecfSpn2tboYHWCtbvdGw+ZABhqGVFDkqiTAV3Wg= +github.com/formalco/go-sdk/sdk v1.2.3/go.mod h1:8ofiAsXa3lOOqO/rjzRBQjZqarA3zzNFQUf8JLSxRr4= github.com/frankban/quicktest v1.14.3 h1:FJKSZTDHjyhriyC81FLQ0LY93eSai0ZyR/ZIkd3ZUKE= github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= github.com/go-git/go-billy/v5 v5.4.1 h1:Uwp5tDRkPr+l/TnbHOQzp+tmJfLceOlbVucgpTz8ix4= @@ -61,10 +67,13 @@ github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMyw github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= 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/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.3.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= @@ -95,6 +104,8 @@ github.com/hashicorp/hcl/v2 v2.18.0 h1:wYnG7Lt31t2zYkcquwgKo6MWXzRUDIeIVU5naZwHL github.com/hashicorp/hcl/v2 v2.18.0/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE= github.com/hashicorp/hcl/v2 v2.18.1 h1:6nxnOJFku1EuSawSD81fuviYUV8DxFr3fp2dUi3ZYSo= github.com/hashicorp/hcl/v2 v2.18.1/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE= +github.com/hashicorp/hcl/v2 v2.19.1 h1://i05Jqznmb2EXqa39Nsvyan2o5XyMowW5fnCKW5RPI= +github.com/hashicorp/hcl/v2 v2.19.1/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE= github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y= github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= github.com/hashicorp/terraform-exec v0.19.0 h1:FpqZ6n50Tk95mItTSS9BjeOVUb4eg81SpgVtZNNtFSM= @@ -141,6 +152,8 @@ github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27k github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA= github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mitchellh/cli v1.1.5 h1:OxRIeJXpAMztws/XHlN2vu6imG5Dpq+j61AzAX5fLng= github.com/mitchellh/cli v1.1.5/go.mod h1:v8+iFts2sPIKUV1ltktPXMCC8fumSKFItNcD2cLtRR4= github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= @@ -221,6 +234,8 @@ golang.org/x/net v0.15.0 h1:ugBLEUaxABaB5AJqW9enI0ACdci2RUd4eP51NTBvuJ8= golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk= golang.org/x/net v0.16.0 h1:7eBu7KsSvFDtSXUIDbh3aqlK4DPsZ1rByC8PFfBThos= golang.org/x/net v0.16.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= +golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM= +golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -274,10 +289,14 @@ google.golang.org/genproto/googleapis/rpc v0.0.0-20230822172742-b8732ec3820d h1: google.golang.org/genproto/googleapis/rpc v0.0.0-20230822172742-b8732ec3820d/go.mod h1:+Bk1OCOj40wS2hwAMA+aCW9ypzm63QTBBHp6lQ3p+9M= google.golang.org/genproto/googleapis/rpc v0.0.0-20231002182017-d307bd883b97 h1:6GQBEOdGkX6MMTLT9V+TjtIRZCw9VPD5Z+yHY9wMgS0= google.golang.org/genproto/googleapis/rpc v0.0.0-20231002182017-d307bd883b97/go.mod h1:v7nGkzlmW8P3n/bKmWBn2WpBjpOEx8Q6gMueudAmKfY= +google.golang.org/genproto/googleapis/rpc v0.0.0-20231016165738-49dd2c1f3d0b h1:ZlWIi1wSK56/8hn4QcBp/j9M7Gt3U/3hZw3mC7vDICo= +google.golang.org/genproto/googleapis/rpc v0.0.0-20231016165738-49dd2c1f3d0b/go.mod h1:swOH3j0KzcDDgGUWr+SNpyTen5YrXjS3eyPzFYKc6lc= google.golang.org/grpc v1.58.0 h1:32JY8YpPMSR45K+c3o6b8VL73V+rR8k+DeMIr4vRH8o= google.golang.org/grpc v1.58.0/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSsCJk0= google.golang.org/grpc v1.58.2 h1:SXUpjxeVF3FKrTYQI4f4KvbGD5u2xccdYdurwowix5I= google.golang.org/grpc v1.58.2/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSsCJk0= +google.golang.org/grpc v1.59.0 h1:Z5Iec2pjwb+LEOqzpB2MR12/eKFhDPhuqW91O+4bwUk= +google.golang.org/grpc v1.59.0/go.mod h1:aUPDwccQo6OTjy7Hct4AfBPD1GptF4fyUjIkQ9YtF98= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8= From b2e482471a581ee0a04f9f9a7b1d573c33439fd3 Mon Sep 17 00:00:00 2001 From: VladyslavLukyanenko Date: Sat, 21 Oct 2023 23:16:21 +0200 Subject: [PATCH 2/2] add tls_cert --- formal/resources/resource_satellite.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/formal/resources/resource_satellite.go b/formal/resources/resource_satellite.go index 9e6f0b81..ea83a794 100644 --- a/formal/resources/resource_satellite.go +++ b/formal/resources/resource_satellite.go @@ -43,6 +43,12 @@ func ResourceSatellite() *schema.Resource { Required: true, ForceNew: true, }, + "tls_cert": { + // This description is used by the documentation generator and the language server. + Description: "TLS certificate of the Satellite.", + Type: schema.TypeString, + Computed: true, + }, "api_key": { // This description is used by the documentation generator and the language server. Description: "Api key of the Satellite.", @@ -125,6 +131,7 @@ func resourceSatelliteRead(ctx context.Context, d *schema.ResourceData, meta int return diag.FromErr(err) } d.Set("api_key", res.Msg.ApiKey) + d.Set("tls_cert", res.Msg.ApiKey) } d.SetId(res.Msg.Satellite.Id)