chore: add_protocol #47
4 changed files with 391 additions and 710 deletions
20
.github/actions/setup-cache-go/action.yaml
vendored
20
.github/actions/setup-cache-go/action.yaml
vendored
|
|
@ -1,30 +1,39 @@
|
||||||
# SPDX-License-Identifier: MIT
|
name: 'Setup Go and cache dependencies'
|
||||||
name: 'Forgejo Actions to setup Go and cache dependencies'
|
author: 'Forgejo authors, Marcel S. Henselin'
|
||||||
author: 'Forgejo authors'
|
|
||||||
description: |
|
description: |
|
||||||
Wrap the setup-go with improved dependency caching.
|
Wrap the setup-go with improved dependency caching.
|
||||||
|
|
||||||
inputs:
|
inputs:
|
||||||
username:
|
username:
|
||||||
description: 'User for which to manage the dependency cache'
|
description: 'User for which to manage the dependency cache'
|
||||||
default: root
|
default: root
|
||||||
|
|
||||||
|
go-version:
|
||||||
|
description: "go version to install"
|
||||||
|
default: '1.25'
|
||||||
|
required: true
|
||||||
|
|
||||||
runs:
|
runs:
|
||||||
using: "composite"
|
using: "composite"
|
||||||
steps:
|
steps:
|
||||||
- name: "Install zstd for faster caching"
|
- name: "Install zstd for faster caching"
|
||||||
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
apt-get update -qq
|
apt-get update -qq
|
||||||
apt-get -q install -qq -y zstd
|
apt-get -q install -qq -y zstd
|
||||||
|
|
||||||
- name: "Set up Go using setup-go"
|
- name: "Set up Go using setup-go"
|
||||||
uses: https://data.forgejo.org/actions/setup-go@v6
|
uses: https://code.forgejo.org/actions/setup-go@v6
|
||||||
id: go-version
|
id: go-version
|
||||||
with:
|
with:
|
||||||
go-version-file: "go.mod"
|
go-version: ${{ inputs.go-version }}
|
||||||
|
check-latest: true # Always check for the latest patch release
|
||||||
|
# go-version-file: "go.mod"
|
||||||
# do not cache dependencies, we do this manually
|
# do not cache dependencies, we do this manually
|
||||||
cache: false
|
cache: false
|
||||||
|
|
||||||
- name: "Get go environment information"
|
- name: "Get go environment information"
|
||||||
|
shell: bash
|
||||||
id: go-environment
|
id: go-environment
|
||||||
run: |
|
run: |
|
||||||
chmod 755 $HOME # ensure ${RUN_AS_USER} has permission when go is located in $HOME
|
chmod 755 $HOME # ensure ${RUN_AS_USER} has permission when go is located in $HOME
|
||||||
|
|
@ -36,6 +45,7 @@ runs:
|
||||||
GO_VERSION: ${{ steps.go-version.outputs.go-version }}
|
GO_VERSION: ${{ steps.go-version.outputs.go-version }}
|
||||||
|
|
||||||
- name: "Create cache folders with correct permissions (for non-root users)"
|
- name: "Create cache folders with correct permissions (for non-root users)"
|
||||||
|
shell: bash
|
||||||
if: inputs.username != 'root'
|
if: inputs.username != 'root'
|
||||||
# when the cache is restored, only the permissions of the last part are restored
|
# when the cache is restored, only the permissions of the last part are restored
|
||||||
# so assuming that /home/user exists and we are restoring /home/user/go/pkg/mod,
|
# so assuming that /home/user exists and we are restoring /home/user/go/pkg/mod,
|
||||||
|
|
|
||||||
11
.github/workflows/ci.yaml
vendored
11
.github/workflows/ci.yaml
vendored
|
|
@ -146,6 +146,17 @@ jobs:
|
||||||
- name: Test
|
- name: Test
|
||||||
run: make test
|
run: make test
|
||||||
|
|
||||||
|
- name: Check coverage threshold
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
make coverage
|
||||||
|
COVERAGE=$(go tool cover -func=coverage.out | grep total | awk '{print $3}' | sed 's/%//')
|
||||||
|
echo "Coverage: $COVERAGE%"
|
||||||
|
if (( $(echo "$COVERAGE < 80" | bc -l) )); then
|
||||||
|
echo "Coverage is below 80%"
|
||||||
|
# exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
- name: Archive code coverage results
|
- name: Archive code coverage results
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
|
|
|
||||||
|
|
@ -143,7 +143,7 @@ func (p *Provider) createVersionsFile() error {
|
||||||
// Build the versions file...
|
// Build the versions file...
|
||||||
version := Version{
|
version := Version{
|
||||||
Version: p.Version,
|
Version: p.Version,
|
||||||
Protocols: []string{"5.1"},
|
Protocols: []string{"5.1", "6.0"},
|
||||||
Platforms: nil,
|
Platforms: nil,
|
||||||
}
|
}
|
||||||
for _, sum := range shasums {
|
for _, sum := range shasums {
|
||||||
|
|
|
||||||
|
|
@ -18,8 +18,8 @@ import (
|
||||||
"github.com/stackitcloud/stackit-sdk-go/core/utils"
|
"github.com/stackitcloud/stackit-sdk-go/core/utils"
|
||||||
"github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex"
|
"github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex"
|
||||||
"github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/wait"
|
"github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/wait"
|
||||||
|
"tf-provider.git.onstackit.cloud/stackit-dev-tools/terraform-provider-stackitprivatepreview/internal/testutils"
|
||||||
"tf-provider.git.onstackit.cloud/stackit-dev-tools/terraform-provider-stackitprivatepreview/stackit/internal/core"
|
"tf-provider.git.onstackit.cloud/stackit-dev-tools/terraform-provider-stackitprivatepreview/stackit/internal/core"
|
||||||
"tf-provider.git.onstackit.cloud/stackit-dev-tools/terraform-provider-stackitprivatepreview/stackit/internal/testutil"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
|
@ -30,35 +30,20 @@ var (
|
||||||
)
|
)
|
||||||
|
|
||||||
var testConfigVarsMin = config.Variables{
|
var testConfigVarsMin = config.Variables{
|
||||||
"project_id": config.StringVariable(testutil.ProjectId),
|
"project_id": config.StringVariable(testutils.ProjectId),
|
||||||
"name": config.StringVariable(
|
"name": config.StringVariable(fmt.Sprintf("tf-acc-%s", acctest.RandStringFromCharSet(7, acctest.CharSetAlphaNum))),
|
||||||
fmt.Sprintf(
|
|
||||||
"tf-acc-%s",
|
|
||||||
acctest.RandStringFromCharSet(7, acctest.CharSetAlphaNum),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
"flavor_cpu": config.IntegerVariable(4),
|
"flavor_cpu": config.IntegerVariable(4),
|
||||||
"flavor_ram": config.IntegerVariable(16),
|
"flavor_ram": config.IntegerVariable(16),
|
||||||
"flavor_description": config.StringVariable("SQLServer-Flex-4.16-Standard-EU01"),
|
"flavor_description": config.StringVariable("SQLServer-Flex-4.16-Standard-EU01"),
|
||||||
"replicas": config.IntegerVariable(1),
|
"replicas": config.IntegerVariable(1),
|
||||||
"flavor_id": config.StringVariable("4.16-Single"),
|
"flavor_id": config.StringVariable("4.16-Single"),
|
||||||
"username": config.StringVariable(
|
"username": config.StringVariable(fmt.Sprintf("tf-acc-user-%s", acctest.RandStringFromCharSet(7, acctest.CharSetAlpha))),
|
||||||
fmt.Sprintf(
|
|
||||||
"tf-acc-user-%s",
|
|
||||||
acctest.RandStringFromCharSet(7, acctest.CharSetAlpha),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
"role": config.StringVariable("##STACKIT_LoginManager##"),
|
"role": config.StringVariable("##STACKIT_LoginManager##"),
|
||||||
}
|
}
|
||||||
|
|
||||||
var testConfigVarsMax = config.Variables{
|
var testConfigVarsMax = config.Variables{
|
||||||
"project_id": config.StringVariable(testutil.ProjectId),
|
"project_id": config.StringVariable(testutils.ProjectId),
|
||||||
"name": config.StringVariable(
|
"name": config.StringVariable(fmt.Sprintf("tf-acc-%s", acctest.RandStringFromCharSet(7, acctest.CharSetAlphaNum))),
|
||||||
fmt.Sprintf(
|
|
||||||
"tf-acc-%s",
|
|
||||||
acctest.RandStringFromCharSet(7, acctest.CharSetAlphaNum),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
"acl1": config.StringVariable("192.168.0.0/16"),
|
"acl1": config.StringVariable("192.168.0.0/16"),
|
||||||
"flavor_cpu": config.IntegerVariable(4),
|
"flavor_cpu": config.IntegerVariable(4),
|
||||||
"flavor_ram": config.IntegerVariable(16),
|
"flavor_ram": config.IntegerVariable(16),
|
||||||
|
|
@ -70,19 +55,14 @@ var testConfigVarsMax = config.Variables{
|
||||||
"options_retention_days": config.IntegerVariable(64),
|
"options_retention_days": config.IntegerVariable(64),
|
||||||
"flavor_id": config.StringVariable("4.16-Single"),
|
"flavor_id": config.StringVariable("4.16-Single"),
|
||||||
"backup_schedule": config.StringVariable("00 6 * * *"),
|
"backup_schedule": config.StringVariable("00 6 * * *"),
|
||||||
"username": config.StringVariable(
|
"username": config.StringVariable(fmt.Sprintf("tf-acc-user-%s", acctest.RandStringFromCharSet(7, acctest.CharSetAlpha))),
|
||||||
fmt.Sprintf(
|
|
||||||
"tf-acc-user-%s",
|
|
||||||
acctest.RandStringFromCharSet(7, acctest.CharSetAlpha),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
"role": config.StringVariable("##STACKIT_LoginManager##"),
|
"role": config.StringVariable("##STACKIT_LoginManager##"),
|
||||||
"region": config.StringVariable(testutil.Region),
|
"region": config.StringVariable(testutils.Region),
|
||||||
}
|
}
|
||||||
|
|
||||||
func configVarsMinUpdated() config.Variables {
|
func configVarsMinUpdated() config.Variables {
|
||||||
temp := maps.Clone(testConfigVarsMax)
|
temp := maps.Clone(testConfigVarsMax)
|
||||||
temp["name"] = config.StringVariable(testutil.ConvertConfigVariable(temp["name"]) + "changed")
|
temp["name"] = config.StringVariable(testutils.ConvertConfigVariable(temp["name"]) + "changed")
|
||||||
return temp
|
return temp
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -93,50 +73,25 @@ func configVarsMaxUpdated() config.Variables {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestAccSQLServerFlexMinResource(t *testing.T) {
|
func TestAccSQLServerFlexMinResource(t *testing.T) {
|
||||||
resource.Test(
|
resource.Test(t, resource.TestCase{
|
||||||
t, resource.TestCase{
|
ProtoV6ProviderFactories: testutils.TestAccProtoV6ProviderFactories,
|
||||||
ProtoV6ProviderFactories: testutil.TestAccProtoV6ProviderFactories,
|
|
||||||
CheckDestroy: testAccChecksqlserverflexDestroy,
|
CheckDestroy: testAccChecksqlserverflexDestroy,
|
||||||
Steps: []resource.TestStep{
|
Steps: []resource.TestStep{
|
||||||
// Creation
|
// Creation
|
||||||
{
|
{
|
||||||
Config: testutil.SQLServerFlexProviderConfig("") + "\n" + resourceMinConfig,
|
Config: testutils.SQLServerFlexProviderConfig("") + "\n" + resourceMinConfig,
|
||||||
ConfigVariables: testConfigVarsMin,
|
ConfigVariables: testConfigVarsMin,
|
||||||
Check: resource.ComposeAggregateTestCheckFunc(
|
Check: resource.ComposeAggregateTestCheckFunc(
|
||||||
// Instance
|
// Instance
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "project_id", testutils.ConvertConfigVariable(testConfigVarsMin["project_id"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"project_id",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["project_id"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "instance_id"),
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "instance_id"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "name", testutils.ConvertConfigVariable(testConfigVarsMin["name"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"name",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["name"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
||||||
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.id"),
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.id"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.description", testutils.ConvertConfigVariable(testConfigVarsMin["flavor_description"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "replicas", testutils.ConvertConfigVariable(testConfigVarsMin["replicas"])),
|
||||||
"flavor.description",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.cpu", testutils.ConvertConfigVariable(testConfigVarsMin["flavor_cpu"])),
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["flavor_description"]),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.ram", testutils.ConvertConfigVariable(testConfigVarsMin["flavor_ram"])),
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"replicas",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["replicas"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.cpu",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["flavor_cpu"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.ram",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["flavor_ram"]),
|
|
||||||
),
|
|
||||||
// User
|
// User
|
||||||
resource.TestCheckResourceAttrPair(
|
resource.TestCheckResourceAttrPair(
|
||||||
"stackit_sqlserverflex_user.user", "project_id",
|
"stackit_sqlserverflex_user.user", "project_id",
|
||||||
|
|
@ -152,38 +107,18 @@ func TestAccSQLServerFlexMinResource(t *testing.T) {
|
||||||
},
|
},
|
||||||
// Update
|
// Update
|
||||||
{
|
{
|
||||||
Config: testutil.SQLServerFlexProviderConfig("") + "\n" + resourceMinConfig,
|
Config: testutils.SQLServerFlexProviderConfig("") + "\n" + resourceMinConfig,
|
||||||
ConfigVariables: testConfigVarsMin,
|
ConfigVariables: testConfigVarsMin,
|
||||||
Check: resource.ComposeAggregateTestCheckFunc(
|
Check: resource.ComposeAggregateTestCheckFunc(
|
||||||
// Instance
|
// Instance
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "project_id", testutils.ConvertConfigVariable(testConfigVarsMin["project_id"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"project_id",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["project_id"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "instance_id"),
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "instance_id"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "name", testutils.ConvertConfigVariable(testConfigVarsMin["name"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"name",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["name"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
||||||
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.id"),
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.id"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.description", testutils.ConvertConfigVariable(testConfigVarsMin["flavor_description"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.cpu", testutils.ConvertConfigVariable(testConfigVarsMin["flavor_cpu"])),
|
||||||
"flavor.description",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.ram", testutils.ConvertConfigVariable(testConfigVarsMin["flavor_ram"])),
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["flavor_description"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.cpu",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["flavor_cpu"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.ram",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["flavor_ram"]),
|
|
||||||
),
|
|
||||||
// User
|
// User
|
||||||
resource.TestCheckResourceAttrPair(
|
resource.TestCheckResourceAttrPair(
|
||||||
"stackit_sqlserverflex_user.user", "project_id",
|
"stackit_sqlserverflex_user.user", "project_id",
|
||||||
|
|
@ -199,20 +134,12 @@ func TestAccSQLServerFlexMinResource(t *testing.T) {
|
||||||
},
|
},
|
||||||
// data source
|
// data source
|
||||||
{
|
{
|
||||||
Config: testutil.SQLServerFlexProviderConfig("") + "\n" + resourceMinConfig,
|
Config: testutils.SQLServerFlexProviderConfig("") + "\n" + resourceMinConfig,
|
||||||
ConfigVariables: testConfigVarsMin,
|
ConfigVariables: testConfigVarsMin,
|
||||||
Check: resource.ComposeAggregateTestCheckFunc(
|
Check: resource.ComposeAggregateTestCheckFunc(
|
||||||
// Instance data
|
// Instance data
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "project_id", testutils.ConvertConfigVariable(testConfigVarsMin["project_id"])),
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "name", testutils.ConvertConfigVariable(testConfigVarsMin["name"])),
|
||||||
"project_id",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["project_id"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
|
||||||
"name",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["name"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrPair(
|
resource.TestCheckResourceAttrPair(
|
||||||
"data.stackit_sqlserverflex_instance.instance", "project_id",
|
"data.stackit_sqlserverflex_instance.instance", "project_id",
|
||||||
"stackit_sqlserverflex_instance.instance", "project_id",
|
"stackit_sqlserverflex_instance.instance", "project_id",
|
||||||
|
|
@ -227,45 +154,17 @@ func TestAccSQLServerFlexMinResource(t *testing.T) {
|
||||||
),
|
),
|
||||||
|
|
||||||
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "flavor.id", testutils.ConvertConfigVariable(testConfigVarsMin["flavor_id"])),
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "flavor.description", testutils.ConvertConfigVariable(testConfigVarsMin["flavor_description"])),
|
||||||
"flavor.id",
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "flavor.cpu", testutils.ConvertConfigVariable(testConfigVarsMin["flavor_cpu"])),
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["flavor_id"]),
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "flavor.ram", testutils.ConvertConfigVariable(testConfigVarsMin["flavor_ram"])),
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.description",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["flavor_description"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.cpu",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["flavor_cpu"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.ram",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["flavor_ram"]),
|
|
||||||
),
|
|
||||||
|
|
||||||
// User data
|
// User data
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_user.user", "project_id", testutils.ConvertConfigVariable(testConfigVarsMin["project_id"])),
|
||||||
"data.stackit_sqlserverflex_user.user",
|
|
||||||
"project_id",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["project_id"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrSet("data.stackit_sqlserverflex_user.user", "user_id"),
|
resource.TestCheckResourceAttrSet("data.stackit_sqlserverflex_user.user", "user_id"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_user.user", "username", testutils.ConvertConfigVariable(testConfigVarsMin["username"])),
|
||||||
"data.stackit_sqlserverflex_user.user",
|
|
||||||
"username",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMin["username"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_user.user", "roles.#", "1"),
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_user.user", "roles.#", "1"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_user.user", "roles.0", testutils.ConvertConfigVariable(testConfigVarsMax["role"])),
|
||||||
"data.stackit_sqlserverflex_user.user",
|
|
||||||
"roles.0",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["role"]),
|
|
||||||
),
|
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
// Import
|
// Import
|
||||||
|
|
@ -282,7 +181,7 @@ func TestAccSQLServerFlexMinResource(t *testing.T) {
|
||||||
return "", fmt.Errorf("couldn't find attribute instance_id")
|
return "", fmt.Errorf("couldn't find attribute instance_id")
|
||||||
}
|
}
|
||||||
|
|
||||||
return fmt.Sprintf("%s,%s,%s", testutil.ProjectId, testutil.Region, instanceId), nil
|
return fmt.Sprintf("%s,%s,%s", testutils.ProjectId, testutils.Region, instanceId), nil
|
||||||
},
|
},
|
||||||
ImportState: true,
|
ImportState: true,
|
||||||
ImportStateVerify: true,
|
ImportStateVerify: true,
|
||||||
|
|
@ -311,7 +210,7 @@ func TestAccSQLServerFlexMinResource(t *testing.T) {
|
||||||
return "", fmt.Errorf("couldn't find attribute user_id")
|
return "", fmt.Errorf("couldn't find attribute user_id")
|
||||||
}
|
}
|
||||||
|
|
||||||
return fmt.Sprintf("%s,%s,%s,%s", testutil.ProjectId, testutil.Region, instanceId, userId), nil
|
return fmt.Sprintf("%s,%s,%s,%s", testutils.ProjectId, testutils.Region, instanceId, userId), nil
|
||||||
},
|
},
|
||||||
ImportState: true,
|
ImportState: true,
|
||||||
ImportStateVerify: true,
|
ImportStateVerify: true,
|
||||||
|
|
@ -319,125 +218,52 @@ func TestAccSQLServerFlexMinResource(t *testing.T) {
|
||||||
},
|
},
|
||||||
// Update
|
// Update
|
||||||
{
|
{
|
||||||
Config: testutil.SQLServerFlexProviderConfig("") + "\n" + resourceMinConfig,
|
Config: testutils.SQLServerFlexProviderConfig("") + "\n" + resourceMinConfig,
|
||||||
ConfigVariables: configVarsMinUpdated(),
|
ConfigVariables: configVarsMinUpdated(),
|
||||||
Check: resource.ComposeAggregateTestCheckFunc(
|
Check: resource.ComposeAggregateTestCheckFunc(
|
||||||
// Instance data
|
// Instance data
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "project_id", testutils.ConvertConfigVariable(configVarsMinUpdated()["project_id"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"project_id",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMinUpdated()["project_id"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "instance_id"),
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "instance_id"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "name", testutils.ConvertConfigVariable(configVarsMinUpdated()["name"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"name",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMinUpdated()["name"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
||||||
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.id"),
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.id"),
|
||||||
resource.TestCheckResourceAttrSet(
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.description"),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.cpu", testutils.ConvertConfigVariable(configVarsMinUpdated()["flavor_cpu"])),
|
||||||
"flavor.description",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.ram", testutils.ConvertConfigVariable(configVarsMinUpdated()["flavor_ram"])),
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.cpu",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMinUpdated()["flavor_cpu"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.ram",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMinUpdated()["flavor_ram"]),
|
|
||||||
),
|
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
// Deletion is done by the framework implicitly
|
// Deletion is done by the framework implicitly
|
||||||
},
|
},
|
||||||
},
|
})
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestAccSQLServerFlexMaxResource(t *testing.T) {
|
func TestAccSQLServerFlexMaxResource(t *testing.T) {
|
||||||
resource.Test(
|
resource.Test(t, resource.TestCase{
|
||||||
t, resource.TestCase{
|
ProtoV6ProviderFactories: testutils.TestAccProtoV6ProviderFactories,
|
||||||
ProtoV6ProviderFactories: testutil.TestAccProtoV6ProviderFactories,
|
|
||||||
CheckDestroy: testAccChecksqlserverflexDestroy,
|
CheckDestroy: testAccChecksqlserverflexDestroy,
|
||||||
Steps: []resource.TestStep{
|
Steps: []resource.TestStep{
|
||||||
// Creation
|
// Creation
|
||||||
{
|
{
|
||||||
Config: testutil.SQLServerFlexProviderConfig("") + "\n" + resourceMaxConfig,
|
Config: testutils.SQLServerFlexProviderConfig("") + "\n" + resourceMaxConfig,
|
||||||
ConfigVariables: testConfigVarsMax,
|
ConfigVariables: testConfigVarsMax,
|
||||||
Check: resource.ComposeAggregateTestCheckFunc(
|
Check: resource.ComposeAggregateTestCheckFunc(
|
||||||
// Instance
|
// Instance
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "project_id", testutils.ConvertConfigVariable(testConfigVarsMax["project_id"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"project_id",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["project_id"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "instance_id"),
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "instance_id"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "name", testutils.ConvertConfigVariable(testConfigVarsMax["name"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"name",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["name"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.0", testutils.ConvertConfigVariable(testConfigVarsMax["acl1"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"acl.0",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["acl1"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.id"),
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.id"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.description", testutils.ConvertConfigVariable(testConfigVarsMax["flavor_description"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "replicas", testutils.ConvertConfigVariable(testConfigVarsMax["replicas"])),
|
||||||
"flavor.description",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.cpu", testutils.ConvertConfigVariable(testConfigVarsMax["flavor_cpu"])),
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["flavor_description"]),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.ram", testutils.ConvertConfigVariable(testConfigVarsMax["flavor_ram"])),
|
||||||
),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "storage.class", testutils.ConvertConfigVariable(testConfigVarsMax["storage_class"])),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "storage.size", testutils.ConvertConfigVariable(testConfigVarsMax["storage_size"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "version", testutils.ConvertConfigVariable(testConfigVarsMax["server_version"])),
|
||||||
"replicas",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "options.retention_days", testutils.ConvertConfigVariable(testConfigVarsMax["options_retention_days"])),
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["replicas"]),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "backup_schedule", testutils.ConvertConfigVariable(testConfigVarsMax["backup_schedule"])),
|
||||||
),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "region", testutils.Region),
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.cpu",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["flavor_cpu"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.ram",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["flavor_ram"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"storage.class",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["storage_class"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"storage.size",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["storage_size"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"version",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["server_version"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"options.retention_days",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["options_retention_days"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"backup_schedule",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["backup_schedule"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"region",
|
|
||||||
testutil.Region,
|
|
||||||
),
|
|
||||||
// User
|
// User
|
||||||
resource.TestCheckResourceAttrPair(
|
resource.TestCheckResourceAttrPair(
|
||||||
"stackit_sqlserverflex_user.user", "project_id",
|
"stackit_sqlserverflex_user.user", "project_id",
|
||||||
|
|
@ -453,78 +279,26 @@ func TestAccSQLServerFlexMaxResource(t *testing.T) {
|
||||||
},
|
},
|
||||||
// Update
|
// Update
|
||||||
{
|
{
|
||||||
Config: testutil.SQLServerFlexProviderConfig("") + "\n" + resourceMaxConfig,
|
Config: testutils.SQLServerFlexProviderConfig("") + "\n" + resourceMaxConfig,
|
||||||
ConfigVariables: testConfigVarsMax,
|
ConfigVariables: testConfigVarsMax,
|
||||||
Check: resource.ComposeAggregateTestCheckFunc(
|
Check: resource.ComposeAggregateTestCheckFunc(
|
||||||
// Instance
|
// Instance
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "project_id", testutils.ConvertConfigVariable(testConfigVarsMax["project_id"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"project_id",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["project_id"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "instance_id"),
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "instance_id"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "name", testutils.ConvertConfigVariable(testConfigVarsMax["name"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"name",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["name"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.0", testutils.ConvertConfigVariable(testConfigVarsMax["acl1"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"acl.0",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["acl1"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.id"),
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.id"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.description", testutils.ConvertConfigVariable(testConfigVarsMax["flavor_description"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "replicas", testutils.ConvertConfigVariable(testConfigVarsMax["replicas"])),
|
||||||
"flavor.description",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.cpu", testutils.ConvertConfigVariable(testConfigVarsMax["flavor_cpu"])),
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["flavor_description"]),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.ram", testutils.ConvertConfigVariable(testConfigVarsMax["flavor_ram"])),
|
||||||
),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "storage.class", testutils.ConvertConfigVariable(testConfigVarsMax["storage_class"])),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "storage.size", testutils.ConvertConfigVariable(testConfigVarsMax["storage_size"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "version", testutils.ConvertConfigVariable(testConfigVarsMax["server_version"])),
|
||||||
"replicas",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "options.retention_days", testutils.ConvertConfigVariable(testConfigVarsMax["options_retention_days"])),
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["replicas"]),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "backup_schedule", testutils.ConvertConfigVariable(testConfigVarsMax["backup_schedule"])),
|
||||||
),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "region", testutils.Region),
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.cpu",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["flavor_cpu"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.ram",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["flavor_ram"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"storage.class",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["storage_class"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"storage.size",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["storage_size"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"version",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["server_version"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"options.retention_days",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["options_retention_days"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"backup_schedule",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["backup_schedule"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"region",
|
|
||||||
testutil.Region,
|
|
||||||
),
|
|
||||||
// User
|
// User
|
||||||
resource.TestCheckResourceAttrPair(
|
resource.TestCheckResourceAttrPair(
|
||||||
"stackit_sqlserverflex_user.user", "project_id",
|
"stackit_sqlserverflex_user.user", "project_id",
|
||||||
|
|
@ -540,20 +314,12 @@ func TestAccSQLServerFlexMaxResource(t *testing.T) {
|
||||||
},
|
},
|
||||||
// data source
|
// data source
|
||||||
{
|
{
|
||||||
Config: testutil.SQLServerFlexProviderConfig("") + "\n" + resourceMaxConfig,
|
Config: testutils.SQLServerFlexProviderConfig("") + "\n" + resourceMaxConfig,
|
||||||
ConfigVariables: testConfigVarsMax,
|
ConfigVariables: testConfigVarsMax,
|
||||||
Check: resource.ComposeAggregateTestCheckFunc(
|
Check: resource.ComposeAggregateTestCheckFunc(
|
||||||
// Instance data
|
// Instance data
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "project_id", testutils.ConvertConfigVariable(testConfigVarsMax["project_id"])),
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "name", testutils.ConvertConfigVariable(testConfigVarsMax["name"])),
|
||||||
"project_id",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["project_id"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
|
||||||
"name",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["name"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrPair(
|
resource.TestCheckResourceAttrPair(
|
||||||
"data.stackit_sqlserverflex_instance.instance", "project_id",
|
"data.stackit_sqlserverflex_instance.instance", "project_id",
|
||||||
"stackit_sqlserverflex_instance.instance", "project_id",
|
"stackit_sqlserverflex_instance.instance", "project_id",
|
||||||
|
|
@ -568,65 +334,21 @@ func TestAccSQLServerFlexMaxResource(t *testing.T) {
|
||||||
),
|
),
|
||||||
|
|
||||||
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "acl.0", testutils.ConvertConfigVariable(testConfigVarsMax["acl1"])),
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "flavor.id", testutils.ConvertConfigVariable(testConfigVarsMax["flavor_id"])),
|
||||||
"acl.0",
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "flavor.description", testutils.ConvertConfigVariable(testConfigVarsMax["flavor_description"])),
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["acl1"]),
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "flavor.cpu", testutils.ConvertConfigVariable(testConfigVarsMax["flavor_cpu"])),
|
||||||
),
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "flavor.ram", testutils.ConvertConfigVariable(testConfigVarsMax["flavor_ram"])),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "replicas", testutils.ConvertConfigVariable(testConfigVarsMax["replicas"])),
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "options.retention_days", testutils.ConvertConfigVariable(testConfigVarsMax["options_retention_days"])),
|
||||||
"flavor.id",
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_instance.instance", "backup_schedule", testutils.ConvertConfigVariable(testConfigVarsMax["backup_schedule"])),
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["flavor_id"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.description",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["flavor_description"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.cpu",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["flavor_cpu"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.ram",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["flavor_ram"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
|
||||||
"replicas",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["replicas"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"options.retention_days",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["options_retention_days"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"data.stackit_sqlserverflex_instance.instance",
|
|
||||||
"backup_schedule",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["backup_schedule"]),
|
|
||||||
),
|
|
||||||
|
|
||||||
// User data
|
// User data
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_user.user", "project_id", testutils.ConvertConfigVariable(testConfigVarsMax["project_id"])),
|
||||||
"data.stackit_sqlserverflex_user.user",
|
|
||||||
"project_id",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["project_id"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrSet("data.stackit_sqlserverflex_user.user", "user_id"),
|
resource.TestCheckResourceAttrSet("data.stackit_sqlserverflex_user.user", "user_id"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_user.user", "username", testutils.ConvertConfigVariable(testConfigVarsMax["username"])),
|
||||||
"data.stackit_sqlserverflex_user.user",
|
|
||||||
"username",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["username"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_user.user", "roles.#", "1"),
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_user.user", "roles.#", "1"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("data.stackit_sqlserverflex_user.user", "roles.0", testutils.ConvertConfigVariable(testConfigVarsMax["role"])),
|
||||||
"data.stackit_sqlserverflex_user.user",
|
|
||||||
"roles.0",
|
|
||||||
testutil.ConvertConfigVariable(testConfigVarsMax["role"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrSet("data.stackit_sqlserverflex_user.user", "host"),
|
resource.TestCheckResourceAttrSet("data.stackit_sqlserverflex_user.user", "host"),
|
||||||
resource.TestCheckResourceAttrSet("data.stackit_sqlserverflex_user.user", "port"),
|
resource.TestCheckResourceAttrSet("data.stackit_sqlserverflex_user.user", "port"),
|
||||||
),
|
),
|
||||||
|
|
@ -645,7 +367,7 @@ func TestAccSQLServerFlexMaxResource(t *testing.T) {
|
||||||
return "", fmt.Errorf("couldn't find attribute instance_id")
|
return "", fmt.Errorf("couldn't find attribute instance_id")
|
||||||
}
|
}
|
||||||
|
|
||||||
return fmt.Sprintf("%s,%s,%s", testutil.ProjectId, testutil.Region, instanceId), nil
|
return fmt.Sprintf("%s,%s,%s", testutils.ProjectId, testutils.Region, instanceId), nil
|
||||||
},
|
},
|
||||||
ImportState: true,
|
ImportState: true,
|
||||||
ImportStateVerify: true,
|
ImportStateVerify: true,
|
||||||
|
|
@ -654,12 +376,8 @@ func TestAccSQLServerFlexMaxResource(t *testing.T) {
|
||||||
if len(s) != 1 {
|
if len(s) != 1 {
|
||||||
return fmt.Errorf("expected 1 state, got %d", len(s))
|
return fmt.Errorf("expected 1 state, got %d", len(s))
|
||||||
}
|
}
|
||||||
if s[0].Attributes["backup_schedule"] != testutil.ConvertConfigVariable(testConfigVarsMax["backup_schedule"]) {
|
if s[0].Attributes["backup_schedule"] != testutils.ConvertConfigVariable(testConfigVarsMax["backup_schedule"]) {
|
||||||
return fmt.Errorf(
|
return fmt.Errorf("expected backup_schedule %s, got %s", testConfigVarsMax["backup_schedule"], s[0].Attributes["backup_schedule"])
|
||||||
"expected backup_schedule %s, got %s",
|
|
||||||
testConfigVarsMax["backup_schedule"],
|
|
||||||
s[0].Attributes["backup_schedule"],
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
},
|
},
|
||||||
|
|
@ -681,7 +399,7 @@ func TestAccSQLServerFlexMaxResource(t *testing.T) {
|
||||||
return "", fmt.Errorf("couldn't find attribute user_id")
|
return "", fmt.Errorf("couldn't find attribute user_id")
|
||||||
}
|
}
|
||||||
|
|
||||||
return fmt.Sprintf("%s,%s,%s,%s", testutil.ProjectId, testutil.Region, instanceId, userId), nil
|
return fmt.Sprintf("%s,%s,%s,%s", testutils.ProjectId, testutils.Region, instanceId, userId), nil
|
||||||
},
|
},
|
||||||
ImportState: true,
|
ImportState: true,
|
||||||
ImportStateVerify: true,
|
ImportStateVerify: true,
|
||||||
|
|
@ -689,89 +407,41 @@ func TestAccSQLServerFlexMaxResource(t *testing.T) {
|
||||||
},
|
},
|
||||||
// Update
|
// Update
|
||||||
{
|
{
|
||||||
Config: testutil.SQLServerFlexProviderConfig("") + "\n" + resourceMaxConfig,
|
Config: testutils.SQLServerFlexProviderConfig("") + "\n" + resourceMaxConfig,
|
||||||
ConfigVariables: configVarsMaxUpdated(),
|
ConfigVariables: configVarsMaxUpdated(),
|
||||||
Check: resource.ComposeAggregateTestCheckFunc(
|
Check: resource.ComposeAggregateTestCheckFunc(
|
||||||
// Instance data
|
// Instance data
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "project_id", testutils.ConvertConfigVariable(configVarsMaxUpdated()["project_id"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"project_id",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMaxUpdated()["project_id"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "instance_id"),
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "instance_id"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "name", testutils.ConvertConfigVariable(configVarsMaxUpdated()["name"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"name",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMaxUpdated()["name"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.#", "1"),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "acl.0", testutils.ConvertConfigVariable(configVarsMaxUpdated()["acl1"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"acl.0",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMaxUpdated()["acl1"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.id"),
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.id"),
|
||||||
resource.TestCheckResourceAttrSet(
|
resource.TestCheckResourceAttrSet("stackit_sqlserverflex_instance.instance", "flavor.description"),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.cpu", testutils.ConvertConfigVariable(configVarsMaxUpdated()["flavor_cpu"])),
|
||||||
"flavor.description",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "flavor.ram", testutils.ConvertConfigVariable(configVarsMaxUpdated()["flavor_ram"])),
|
||||||
),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "replicas", testutils.ConvertConfigVariable(configVarsMaxUpdated()["replicas"])),
|
||||||
resource.TestCheckResourceAttr(
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "storage.class", testutils.ConvertConfigVariable(configVarsMaxUpdated()["storage_class"])),
|
||||||
"stackit_sqlserverflex_instance.instance",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "storage.size", testutils.ConvertConfigVariable(configVarsMaxUpdated()["storage_size"])),
|
||||||
"flavor.cpu",
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "version", testutils.ConvertConfigVariable(configVarsMaxUpdated()["server_version"])),
|
||||||
testutil.ConvertConfigVariable(configVarsMaxUpdated()["flavor_cpu"]),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "options.retention_days", testutils.ConvertConfigVariable(configVarsMaxUpdated()["options_retention_days"])),
|
||||||
),
|
resource.TestCheckResourceAttr("stackit_sqlserverflex_instance.instance", "backup_schedule", testutils.ConvertConfigVariable(configVarsMaxUpdated()["backup_schedule"])),
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"flavor.ram",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMaxUpdated()["flavor_ram"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"replicas",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMaxUpdated()["replicas"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"storage.class",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMaxUpdated()["storage_class"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"storage.size",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMaxUpdated()["storage_size"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"version",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMaxUpdated()["server_version"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"options.retention_days",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMaxUpdated()["options_retention_days"]),
|
|
||||||
),
|
|
||||||
resource.TestCheckResourceAttr(
|
|
||||||
"stackit_sqlserverflex_instance.instance",
|
|
||||||
"backup_schedule",
|
|
||||||
testutil.ConvertConfigVariable(configVarsMaxUpdated()["backup_schedule"]),
|
|
||||||
),
|
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
// Deletion is done by the framework implicitly
|
// Deletion is done by the framework implicitly
|
||||||
},
|
},
|
||||||
},
|
})
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func testAccChecksqlserverflexDestroy(s *terraform.State) error {
|
func testAccChecksqlserverflexDestroy(s *terraform.State) error {
|
||||||
ctx := context.Background()
|
ctx := context.Background()
|
||||||
var client *sqlserverflex.APIClient
|
var client *sqlserverflex.APIClient
|
||||||
var err error
|
var err error
|
||||||
if testutil.SQLServerFlexCustomEndpoint == "" {
|
if testutils.SQLServerFlexCustomEndpoint == "" {
|
||||||
client, err = sqlserverflex.NewAPIClient()
|
client, err = sqlserverflex.NewAPIClient()
|
||||||
} else {
|
} else {
|
||||||
client, err = sqlserverflex.NewAPIClient(
|
client, err = sqlserverflex.NewAPIClient(
|
||||||
coreconfig.WithEndpoint(testutil.SQLServerFlexCustomEndpoint),
|
coreconfig.WithEndpoint(testutils.SQLServerFlexCustomEndpoint),
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
@ -788,7 +458,7 @@ func testAccChecksqlserverflexDestroy(s *terraform.State) error {
|
||||||
instancesToDestroy = append(instancesToDestroy, instanceId)
|
instancesToDestroy = append(instancesToDestroy, instanceId)
|
||||||
}
|
}
|
||||||
|
|
||||||
instancesResp, err := client.ListInstances(ctx, testutil.ProjectId, testutil.Region).Execute()
|
instancesResp, err := client.ListInstances(ctx, testutils.ProjectId, testutils.Region).Execute()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("getting instancesResp: %w", err)
|
return fmt.Errorf("getting instancesResp: %w", err)
|
||||||
}
|
}
|
||||||
|
|
@ -799,23 +469,13 @@ func testAccChecksqlserverflexDestroy(s *terraform.State) error {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if utils.Contains(instancesToDestroy, *items[i].Id) {
|
if utils.Contains(instancesToDestroy, *items[i].Id) {
|
||||||
err := client.DeleteInstanceExecute(ctx, testutil.ProjectId, *items[i].Id, testutil.Region)
|
err := client.DeleteInstanceExecute(ctx, testutils.ProjectId, *items[i].Id, testutils.Region)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("destroying instance %s during CheckDestroy: %w", *items[i].Id, err)
|
return fmt.Errorf("destroying instance %s during CheckDestroy: %w", *items[i].Id, err)
|
||||||
}
|
}
|
||||||
_, err = wait.DeleteInstanceWaitHandler(
|
_, err = wait.DeleteInstanceWaitHandler(ctx, client, testutils.ProjectId, *items[i].Id, testutils.Region).WaitWithContext(ctx)
|
||||||
ctx,
|
|
||||||
client,
|
|
||||||
testutil.ProjectId,
|
|
||||||
*items[i].Id,
|
|
||||||
testutil.Region,
|
|
||||||
).WaitWithContext(ctx)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf(
|
return fmt.Errorf("destroying instance %s during CheckDestroy: waiting for deletion %w", *items[i].Id, err)
|
||||||
"destroying instance %s during CheckDestroy: waiting for deletion %w",
|
|
||||||
*items[i].Id,
|
|
||||||
err,
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue