Skip to content

Commit

Permalink
Merged automatically by CI pipeline
Browse files Browse the repository at this point in the history
SCALRCORE-22990 Fix unset default-provider-configurations for environment during update.
  • Loading branch information
emocharnik authored Aug 18, 2022
2 parents a81c0f3 + 8f7024b commit 14f0856
Show file tree
Hide file tree
Showing 3 changed files with 45 additions and 7 deletions.
3 changes: 2 additions & 1 deletion .github/workflows/default.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
with:
go-version: "1.17"
- name: golangci-lint
uses: golangci/golangci-lint-action@v2
uses: golangci/golangci-lint-action@v3
with:
version: v1.45.2
tests:
Expand All @@ -22,6 +22,7 @@ jobs:
REVIZOR_URL: ${{ secrets.REVIZOR_URL }}
REVIZOR_TOKEN: ${{ secrets.REVIZOR_TOKEN }}
SCALR_TOKEN: ${{ secrets.SCALR_TOKEN }}
UPSTREAM_ID: ${{ github.run_number }}
steps:
- uses: actions/checkout@v2
- uses: actions/setup-go@v2
Expand Down
2 changes: 1 addition & 1 deletion environment.go
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,7 @@ type EnvironmentUpdateOptions struct {
// Relations
CloudCredentials []*CloudCredential `jsonapi:"relation,cloud-credentials"`
PolicyGroups []*PolicyGroup `jsonapi:"relation,policy-groups"`
DefaultProviderConfigurations []*ProviderConfiguration `jsonapi:"relation,default-provider-configurations,omitempty"`
DefaultProviderConfigurations []*ProviderConfiguration `jsonapi:"relation,default-provider-configurations"`
}

// Update settings of an existing environment.
Expand Down
47 changes: 42 additions & 5 deletions environment_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -171,13 +171,10 @@ func TestEnvironmentsUpdate(t *testing.T) {
t.Run("with valid options", func(t *testing.T) {
envTest, envTestCleanup := createEnvironment(t, client)
defer envTestCleanup()
providerConfiguration, removeProviderConfiguration := createProviderConfiguration(t, client, "consul", "consul")
defer removeProviderConfiguration()

options := EnvironmentUpdateOptions{
Name: String("tst-" + randomString(t)),
CostEstimationEnabled: Bool(false),
DefaultProviderConfigurations: []*ProviderConfiguration{providerConfiguration},
Name: String("tst-" + randomString(t)),
CostEstimationEnabled: Bool(false),
}

env, err := client.Environments.Update(ctx, envTest.ID, options)
Expand All @@ -194,9 +191,49 @@ func TestEnvironmentsUpdate(t *testing.T) {
} {
assert.Equal(t, *options.Name, item.Name)
assert.Equal(t, *options.CostEstimationEnabled, item.CostEstimationEnabled)
}
})

t.Run("update default provider configuration", func(t *testing.T) {
envTest, envTestCleanup := createEnvironment(t, client)
defer envTestCleanup()
providerConfiguration, removeProviderConfiguration := createProviderConfiguration(t, client, "consul", "consul")
defer removeProviderConfiguration()

options := EnvironmentUpdateOptions{
DefaultProviderConfigurations: []*ProviderConfiguration{providerConfiguration},
}

env, err := client.Environments.Update(ctx, envTest.ID, options)
require.NoError(t, err)

refreshed, err := client.Environments.Read(ctx, env.ID)
require.NoError(t, err)

for _, item := range []*Environment{
env,
refreshed,
} {
assert.Len(t, item.DefaultProviderConfigurations, 1)
assert.Equal(t, providerConfiguration.ID, item.DefaultProviderConfigurations[0].ID)
}

options = EnvironmentUpdateOptions{
DefaultProviderConfigurations: make([]*ProviderConfiguration, 0),
}

env, err = client.Environments.Update(ctx, envTest.ID, options)
require.NoError(t, err)

refreshed, err = client.Environments.Read(ctx, env.ID)
require.NoError(t, err)

for _, item := range []*Environment{
env,
refreshed,
} {
assert.Len(t, item.DefaultProviderConfigurations, 0)
}
})

t.Run("when only updating a subset of fields", func(t *testing.T) {
Expand Down

0 comments on commit 14f0856

Please # to comment.