diff --git a/go.mod b/go.mod index 1ca9a72565..fcb2f07417 100644 --- a/go.mod +++ b/go.mod @@ -3,6 +3,7 @@ module github.com/scaleway/terraform-provider-scaleway/v2 go 1.24.0 require ( + github.com/alexedwards/argon2id v1.0.0 github.com/aws/aws-sdk-go-v2 v1.36.0 github.com/aws/aws-sdk-go-v2/config v1.29.4 github.com/aws/aws-sdk-go-v2/credentials v1.17.57 diff --git a/go.sum b/go.sum index 0b6067d09e..b831105d03 100644 --- a/go.sum +++ b/go.sum @@ -16,6 +16,8 @@ github.com/ProtonMail/go-crypto v1.1.3 h1:nRBOetoydLeUb4nHajyO2bKqMLfWQ/ZPwkXqXx github.com/ProtonMail/go-crypto v1.1.3/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= +github.com/alexedwards/argon2id v1.0.0 h1:wJzDx66hqWX7siL/SRUmgz3F8YMrd/nfX/xHHcQQP0w= +github.com/alexedwards/argon2id v1.0.0/go.mod h1:tYKkqIjzXvZdzPvADMWOEZ+l6+BD6CtBXMj5fnJppiw= github.com/apparentlymart/go-textseg/v12 v12.0.0/go.mod h1:S/4uRK2UtaQttw1GenVJEynmyUenKwP++x/+DdGV/Ec= github.com/apparentlymart/go-textseg/v15 v15.0.0 h1:uYvfpb3DyLSCGWnctWKGj857c6ew1u1fNQOlOtuGxQY= github.com/apparentlymart/go-textseg/v15 v15.0.0/go.mod h1:K8XmNZdhEBkdlyDdvbmmsvpAG721bKi0joRfFdHIWJ4= @@ -346,12 +348,14 @@ golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPh golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= +golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4= golang.org/x/crypto v0.33.0 h1:IOBPskki6Lysi0lo9qQvbxiQ+FvsCC/YWOecCHAixus= golang.org/x/crypto v0.33.0/go.mod h1:bVdXmD7IV/4GdElGPozy6U7lWdRXA4qyRVGJV57uQ5M= golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= +golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.23.0 h1:Zb7khfcRGKk+kqfxFaP5tZqCnDZMjC5VtUBs87Hr6QM= golang.org/x/mod v0.23.0/go.mod h1:6SkKJ3Xj0I0BrPOZoBy3bdMptDDU9oJrpohJ3eWZ1fY= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= @@ -363,6 +367,8 @@ golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwY golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= +golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.35.0 h1:T5GQRQb2y08kTAByq9L4/bz8cipCdA8FbRTXewonqY8= golang.org/x/net v0.35.0/go.mod h1:EglIi67kWsHKlRzzVMUD93VMSWGFOMSZgxFjparz1Qk= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -370,6 +376,7 @@ golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.11.0 h1:GGz8+XQP4FvTTrjZPzNKTMFtSXH80RAzG+5ghFPgK9w= golang.org/x/sync v0.11.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -387,12 +394,18 @@ golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc= golang.org/x/sys v0.30.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= +golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= +golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= +golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U= golang.org/x/term v0.29.0 h1:L6pJp37ocefwRRtYPKSWOWzOtWSxVajvz2ldH/xi3iU= golang.org/x/term v0.29.0/go.mod h1:6bl4lRlvVuDgSf3179VpIxBF0o10JUpXWOnI7nErv7s= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -401,6 +414,9 @@ golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/text v0.22.0 h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM= golang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY= golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4= @@ -412,6 +428,7 @@ golang.org/x/tools v0.0.0-20200214201135-548b770e2dfa/go.mod h1:TB2adYChydJhpapK golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= golang.org/x/tools v0.30.0 h1:BgcpHewrV5AUp2G9MebG4XPFI1E2W41zU1SaqVA9vJY= golang.org/x/tools v0.30.0/go.mod h1:c347cR/OJfw5TI+GfX7RUPNMdDRRbjvYTS0jPyvsVtY= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= diff --git a/internal/services/container/helpers_container.go b/internal/services/container/helpers_container.go index d56dab179f..b557ffd1b3 100644 --- a/internal/services/container/helpers_container.go +++ b/internal/services/container/helpers_container.go @@ -6,6 +6,7 @@ import ( "strings" "time" + "github.com/alexedwards/argon2id" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" container "github.com/scaleway/scaleway-sdk-go/api/container/v1beta1" "github.com/scaleway/scaleway-sdk-go/scw" @@ -329,3 +330,35 @@ func retryCreateContainerDomain(ctx context.Context, containerAPI *container.API } } } + +func flattenContainerSecretEnvironmentVariables(secrets []*container.Secret) map[string]any { + m := make(map[string]any, len(secrets)) + for _, s := range secrets { + m[s.Key] = s.Value + } + + return m +} + +// flattenContainerHashedSecretEnvironmentVariables convert secret hashed values to a state ready map. +// It needs stateSecrets which is the old map stored in state. It will +func flattenContainerHashedSecretEnvironmentVariables(secrets []*container.SecretHashedValue, stateSecrets any) map[string]any { + stateSecretsMap := stateSecrets.(map[string]any) + _ = stateSecretsMap + + m := make(map[string]any, len(secrets)) + for _, s := range secrets { + secret := s.HashedValue + + if oldValue, hasOldValue := stateSecretsMap[s.Key]; hasOldValue { + match, _ := argon2id.ComparePasswordAndHash(oldValue.(string), secret) + if match { + secret = oldValue.(string) // Keep state value if hashed value is the same + } + } + + m[s.Key] = secret + } + + return m +} diff --git a/internal/services/container/namespace.go b/internal/services/container/namespace.go index 8e9633f13a..cbf43cb9c2 100644 --- a/internal/services/container/namespace.go +++ b/internal/services/container/namespace.go @@ -2,7 +2,9 @@ package container import ( "context" + "strings" + "github.com/alexedwards/argon2id" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation" @@ -74,6 +76,28 @@ func ResourceNamespace() *schema.Resource { ValidateFunc: validation.StringLenBetween(0, 1000), }, ValidateDiagFunc: validation.MapKeyLenBetween(0, 100), + DiffSuppressFunc: func(k, oldValue, newValue string, d *schema.ResourceData) bool { + secretKey := strings.TrimPrefix(k, "secret_environment_variables.") + if secretKey == "" || secretKey == "%" { + return false + } + + match, _ := argon2id.ComparePasswordAndHash(newValue, oldValue) + + // If values match, we can store the correct value in state + // This has impact when we import a namespace with secrets, check container_test.TestAccNamespace_ImportWithSecrets + if match { + secrets := expandContainerSecrets(d.Get("secret_environment_variables")) + for _, secret := range secrets { + if secret.Key == secretKey { + secret.Value = scw.StringPtr(newValue) + } + } + _ = d.Set("secret_environment_variables", flattenContainerSecretEnvironmentVariables(secrets)) + } + + return match + }, }, "registry_endpoint": { Type: schema.TypeString, @@ -154,6 +178,7 @@ func ResourceContainerNamespaceRead(ctx context.Context, d *schema.ResourceData, _ = d.Set("description", types.FlattenStringPtr(ns.Description)) _ = d.Set("tags", types.FlattenSliceString(ns.Tags)) _ = d.Set("environment_variables", ns.EnvironmentVariables) + _ = d.Set("secret_environment_variables", flattenContainerHashedSecretEnvironmentVariables(ns.SecretEnvironmentVariables, d.Get("secret_environment_variables"))) _ = d.Set("name", ns.Name) _ = d.Set("organization_id", ns.OrganizationID) _ = d.Set("project_id", ns.ProjectID) diff --git a/internal/services/container/namespace_test.go b/internal/services/container/namespace_test.go index 75ec95a497..9fe42dd64e 100644 --- a/internal/services/container/namespace_test.go +++ b/internal/services/container/namespace_test.go @@ -201,6 +201,78 @@ func TestAccNamespace_DestroyRegistry(t *testing.T) { }) } +func TestAccNamespace_ImportWithSecrets(t *testing.T) { + tt := acctest.NewTestTools(t) + defer tt.Cleanup() + + resource.ParallelTest(t, resource.TestCase{ + PreCheck: func() { acctest.PreCheck(t) }, + ProviderFactories: tt.ProviderFactories, + CheckDestroy: resource.ComposeTestCheckFunc( + isNamespaceDestroyed(tt), + isRegistryDestroyed(tt), + ), + Steps: []resource.TestStep{ + { + Config: ` + resource scaleway_container_namespace main { + name = "test-cr-ns-import-01" + secret_environment_variables = { + foo = "bar" + } + } + `, + Check: resource.ComposeTestCheckFunc( + isNamespacePresent(tt, "scaleway_container_namespace.main"), + acctest.CheckResourceAttrUUID("scaleway_container_namespace.main", "id"), + resource.TestCheckResourceAttr("scaleway_container_namespace.main", "secret_environment_variables.foo", "bar"), + ), + }, + { + Config: ` + resource scaleway_container_namespace main { + name = "test-cr-ns-import-01" + secret_environment_variables = { + foo = "bar" + } + } + + resource scaleway_container_namespace import { + name = "test-cr-ns-import-01" + secret_environment_variables = { + foo = "bar" + } + } + `, + ResourceName: "scaleway_container_namespace.import", + ImportState: true, + ImportStatePersist: true, + ImportStateIdFunc: func(state *terraform.State) (string, error) { + return state.RootModule().Resources["scaleway_container_namespace.main"].Primary.ID, nil + }, + }, + { + Config: ` + resource scaleway_container_namespace main { + name = "test-cr-ns-import-01" + secret_environment_variables = { + foo = "bar" + } + } + + resource scaleway_container_namespace import { + name = "test-cr-ns-import-01" + secret_environment_variables = { + foo = "bar" + } + } + `, + PlanOnly: true, + }, + }, + }) +} + func isNamespacePresent(tt *acctest.TestTools, n string) resource.TestCheckFunc { return func(state *terraform.State) error { rs, ok := state.RootModule().Resources[n] diff --git a/internal/services/container/testdata/namespace-import-with-secrets.cassette.yaml b/internal/services/container/testdata/namespace-import-with-secrets.cassette.yaml new file mode 100644 index 0000000000..c6b27e4823 --- /dev/null +++ b/internal/services/container/testdata/namespace-import-with-secrets.cassette.yaml @@ -0,0 +1,1132 @@ +--- +version: 2 +interactions: + - id: 0 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 183 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: '{"name":"test-cr-ns-import-01","environment_variables":{},"project_id":"105bdce1-64c0-48ab-899d-868455867ecf","secret_environment_variables":[{"key":"foo","value":"bar"}],"tags":null}' + form: {} + headers: + Content-Type: + - application/json + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces + method: POST + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 600 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503818548Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"","registry_namespace_id":"","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"pending","tags":[],"updated_at":"2025-02-28T13:05:12.503818548Z"}' + headers: + Content-Length: + - "600" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:12 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 57582ab3-4955-4565-83fb-8bda19f7f618 + status: 200 OK + code: 200 + duration: 1.145185584s + - id: 1 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 594 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"","registry_namespace_id":"","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"pending","tags":[],"updated_at":"2025-02-28T13:05:12.503819Z"}' + headers: + Content-Length: + - "594" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:12 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 8c102091-eeb5-40c1-829b-3518f968edfd + status: 200 OK + code: 200 + duration: 84.645ms + - id: 2 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 679 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"ready","tags":[],"updated_at":"2025-02-28T13:05:14.896985Z"}' + headers: + Content-Length: + - "679" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:17 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - a16ff83c-f2a1-4b9a-ad7b-49f6a3217847 + status: 200 OK + code: 200 + duration: 82.681375ms + - id: 3 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 679 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"ready","tags":[],"updated_at":"2025-02-28T13:05:14.896985Z"}' + headers: + Content-Length: + - "679" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:17 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - c22283a5-e01e-4514-b4f7-23201c49466e + status: 200 OK + code: 200 + duration: 67.643583ms + - id: 4 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 679 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"ready","tags":[],"updated_at":"2025-02-28T13:05:14.896985Z"}' + headers: + Content-Length: + - "679" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:18 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 3ef4afa7-6e24-4bbd-87d4-80989e0e38ee + status: 200 OK + code: 200 + duration: 77.049584ms + - id: 5 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 679 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"ready","tags":[],"updated_at":"2025-02-28T13:05:14.896985Z"}' + headers: + Content-Length: + - "679" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:18 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 63f4fad9-13aa-495a-ba7f-f9c8525cf572 + status: 200 OK + code: 200 + duration: 71.817ms + - id: 6 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 679 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"ready","tags":[],"updated_at":"2025-02-28T13:05:14.896985Z"}' + headers: + Content-Length: + - "679" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:18 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - a7c54702-233c-469a-9b25-39d2d969490c + status: 200 OK + code: 200 + duration: 69.347416ms + - id: 7 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 679 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"ready","tags":[],"updated_at":"2025-02-28T13:05:14.896985Z"}' + headers: + Content-Length: + - "679" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:18 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - a0152b5f-92a9-4457-948f-5ee51022298a + status: 200 OK + code: 200 + duration: 65.828291ms + - id: 8 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 679 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"ready","tags":[],"updated_at":"2025-02-28T13:05:14.896985Z"}' + headers: + Content-Length: + - "679" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:18 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 30537a71-d06a-4a2d-8446-e113edd643ad + status: 200 OK + code: 200 + duration: 73.449333ms + - id: 9 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 679 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"ready","tags":[],"updated_at":"2025-02-28T13:05:14.896985Z"}' + headers: + Content-Length: + - "679" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:19 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 8e8818bc-ff3a-4d16-9aac-0239debefda0 + status: 200 OK + code: 200 + duration: 74.50625ms + - id: 10 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 679 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"ready","tags":[],"updated_at":"2025-02-28T13:05:14.896985Z"}' + headers: + Content-Length: + - "679" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:19 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - ccfd51ec-64b1-42ef-8266-a5836bcaddf4 + status: 200 OK + code: 200 + duration: 79.805583ms + - id: 11 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 679 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"ready","tags":[],"updated_at":"2025-02-28T13:05:14.896985Z"}' + headers: + Content-Length: + - "679" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:19 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - a51a0bcb-2167-4a0c-b54b-c7510dd89b85 + status: 200 OK + code: 200 + duration: 78.552167ms + - id: 12 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 679 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"ready","tags":[],"updated_at":"2025-02-28T13:05:14.896985Z"}' + headers: + Content-Length: + - "679" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:19 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - a81665cd-b4af-4e71-8fb7-4191d021d09a + status: 200 OK + code: 200 + duration: 78.592208ms + - id: 13 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 685 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"deleting","tags":[],"updated_at":"2025-02-28T13:05:19.836811428Z"}' + headers: + Content-Length: + - "685" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:20 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 6a568c00-34e1-430a-ab34-209825fe5599 + status: 200 OK + code: 200 + duration: 336.029083ms + - id: 14 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 685 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"deleting","tags":[],"updated_at":"2025-02-28T13:05:19.832396393Z"}' + headers: + Content-Length: + - "685" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:20 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 64ed6bf3-b887-443a-a58c-48361c3973aa + status: 200 OK + code: 200 + duration: 336.293542ms + - id: 15 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 682 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"deleting","tags":[],"updated_at":"2025-02-28T13:05:19.836811Z"}' + headers: + Content-Length: + - "682" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:20 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - e8abcfd4-705c-4369-a6e1-09908d079123 + status: 200 OK + code: 200 + duration: 67.096375ms + - id: 16 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 682 + uncompressed: false + body: '{"created_at":"2025-02-28T13:05:12.503819Z","description":"","environment_variables":{},"error_message":null,"id":"43b67f48-24a7-4a1e-b0bd-41d09ad1afe1","name":"test-cr-ns-import-01","organization_id":"105bdce1-64c0-48ab-899d-868455867ecf","project_id":"105bdce1-64c0-48ab-899d-868455867ecf","region":"fr-par","registry_endpoint":"rg.fr-par.scw.cloud/funcscwtestcrnsimport013x6z7eag","registry_namespace_id":"1743f14c-ee20-4ef6-8bde-5018615196b2","secret_environment_variables":[{"hashed_value":"$argon2id$v=19$m=65536,t=1,p=2$QsHEAaFmIS/TiV548k/6ow$cgDKWHzeZJXYZ9GKe2yriLpmpFkOFa0Njt7vhIS0goM","key":"foo"}],"status":"deleting","tags":[],"updated_at":"2025-02-28T13:05:19.836811Z"}' + headers: + Content-Length: + - "682" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:20 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 331b3579-3a91-478b-b0c9-7afa6a13f53f + status: 200 OK + code: 200 + duration: 70.996792ms + - id: 17 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 37 + uncompressed: false + body: '{"message":"Namespace was not found"}' + headers: + Content-Length: + - "37" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:25 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - a0bc9d7b-b62e-4c20-9a46-07030a02dd36 + status: 404 Not Found + code: 404 + duration: 24.046917ms + - id: 18 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 37 + uncompressed: false + body: '{"message":"Namespace was not found"}' + headers: + Content-Length: + - "37" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:25 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - a90efd31-6901-41de-a04a-5b34b526661a + status: 404 Not Found + code: 404 + duration: 34.337541ms + - id: 19 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 37 + uncompressed: false + body: '{"message":"Namespace was not found"}' + headers: + Content-Length: + - "37" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:25 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 14c1409b-ab6e-42ac-b1b4-2dbc3374e8a3 + status: 404 Not Found + code: 404 + duration: 26.665667ms + - id: 20 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/containers/v1beta1/regions/fr-par/namespaces/43b67f48-24a7-4a1e-b0bd-41d09ad1afe1 + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 37 + uncompressed: false + body: '{"message":"Namespace was not found"}' + headers: + Content-Length: + - "37" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:25 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 97fdd8f2-1a76-4ace-a377-7506735b1217 + status: 404 Not Found + code: 404 + duration: 27.654708ms + - id: 21 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/registry/v1/regions/fr-par/namespaces/1743f14c-ee20-4ef6-8bde-5018615196b2 + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 37 + uncompressed: false + body: '{"message":"Namespace was not found"}' + headers: + Content-Length: + - "37" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:25 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 1e137d4d-440c-462e-a7a4-018267c99663 + status: 404 Not Found + code: 404 + duration: 25.673209ms + - id: 22 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: api.scaleway.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + User-Agent: + - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.24.0; darwin; arm64) terraform-provider/develop terraform/terraform-tests + url: https://api.scaleway.com/registry/v1/regions/fr-par/namespaces/1743f14c-ee20-4ef6-8bde-5018615196b2 + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 37 + uncompressed: false + body: '{"message":"Namespace was not found"}' + headers: + Content-Length: + - "37" + Content-Security-Policy: + - default-src 'none'; frame-ancestors 'none' + Content-Type: + - application/json + Date: + - Fri, 28 Feb 2025 13:05:25 GMT + Server: + - Scaleway API Gateway (fr-par-3;edge02) + Strict-Transport-Security: + - max-age=63072000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + X-Request-Id: + - 003f3d68-96c2-4388-a07a-de7e1d4407b2 + status: 404 Not Found + code: 404 + duration: 24.743583ms