Skip to content

Commit 662da84

Browse files
authored
Add Admin General Settings attr default-remote-state-access (#200)
1 parent 4f141e7 commit 662da84

File tree

2 files changed

+15
-6
lines changed

2 files changed

+15
-6
lines changed

admin_setting_general.go

+2
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ type AdminGeneralSetting struct {
3636
DefaultWorkspacesPerOrgCeiling int `jsonapi:"attr,default-workspaces-per-organization-ceiling"`
3737
TerraformBuildWorkerApplyTimeout string `jsonapi:"attr,terraform-build-worker-apply-timeout"`
3838
TerraformBuildWorkerPlanTimeout string `jsonapi:"attr,terraform-build-worker-plan-timeout"`
39+
DefaultRemoteStateAccess bool `jsonapi:"attr,default-remote-state-access"`
3940
}
4041

4142
// Read returns the general settings.
@@ -63,6 +64,7 @@ type AdminGeneralSettingsUpdateOptions struct {
6364
APIRateLimit *int `jsonapi:"attr,api-rate-limit,omitempty"`
6465
SendPassingStatusUntriggeredPlans *bool `jsonapi:"attr,send-passing-statuses-for-untriggered-speculative-plans,omitempty"`
6566
AllowSpeculativePlansOnPR *bool `jsonapi:"attr,allow-speculative-plans-on-pull-requests-from-forks,omitempty"`
67+
DefaultRemoteStateAccess *bool `jsonapi:"attr,default-remote-state-access,omitempty"`
6668
}
6769

6870
// Update updates the general settings.

admin_setting_general_test.go

+13-6
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ func TestAdminSettings_General_Read(t *testing.T) {
3131
assert.NotNil(t, generalSettings.DefaultWorkspacesPerOrgCeiling)
3232
assert.NotNil(t, generalSettings.TerraformBuildWorkerApplyTimeout)
3333
assert.NotNil(t, generalSettings.TerraformBuildWorkerPlanTimeout)
34+
assert.NotNil(t, generalSettings.DefaultRemoteStateAccess)
3435
}
3536

3637
func TestAdminSettings_General_Update(t *testing.T) {
@@ -45,29 +46,35 @@ func TestAdminSettings_General_Update(t *testing.T) {
4546
origLimitOrgCreation := generalSettings.LimitUserOrganizationCreation
4647
origAPIRateLimitEnabled := generalSettings.APIRateLimitingEnabled
4748
origAPIRateLimit := generalSettings.APIRateLimit
49+
origDefaultRemoteState := generalSettings.DefaultRemoteStateAccess
4850

4951
limitOrgCreation := true
5052
apiRateLimitEnabled := true
5153
apiRateLimit := 50
54+
defaultRemoteStateAccess := false
5255

5356
generalSettings, err = client.Admin.Settings.General.Update(ctx, AdminGeneralSettingsUpdateOptions{
54-
LimitUserOrgCreation: Bool(limitOrgCreation),
55-
APIRateLimitingEnabled: Bool(apiRateLimitEnabled),
56-
APIRateLimit: Int(apiRateLimit),
57+
LimitUserOrgCreation: Bool(limitOrgCreation),
58+
APIRateLimitingEnabled: Bool(apiRateLimitEnabled),
59+
APIRateLimit: Int(apiRateLimit),
60+
DefaultRemoteStateAccess: Bool(defaultRemoteStateAccess),
5761
})
5862
require.NoError(t, err)
5963
assert.Equal(t, limitOrgCreation, generalSettings.LimitUserOrganizationCreation)
6064
assert.Equal(t, apiRateLimitEnabled, generalSettings.APIRateLimitingEnabled)
6165
assert.Equal(t, apiRateLimit, generalSettings.APIRateLimit)
66+
assert.Equal(t, defaultRemoteStateAccess, generalSettings.DefaultRemoteStateAccess)
6267

6368
// Undo Updates, revert back to original
6469
generalSettings, err = client.Admin.Settings.General.Update(ctx, AdminGeneralSettingsUpdateOptions{
65-
LimitUserOrgCreation: Bool(origLimitOrgCreation),
66-
APIRateLimitingEnabled: Bool(origAPIRateLimitEnabled),
67-
APIRateLimit: Int(origAPIRateLimit),
70+
LimitUserOrgCreation: Bool(origLimitOrgCreation),
71+
APIRateLimitingEnabled: Bool(origAPIRateLimitEnabled),
72+
APIRateLimit: Int(origAPIRateLimit),
73+
DefaultRemoteStateAccess: Bool(origDefaultRemoteState),
6874
})
6975
require.NoError(t, err)
7076
assert.Equal(t, origLimitOrgCreation, generalSettings.LimitUserOrganizationCreation)
7177
assert.Equal(t, origAPIRateLimitEnabled, generalSettings.APIRateLimitingEnabled)
7278
assert.Equal(t, origAPIRateLimit, generalSettings.APIRateLimit)
79+
assert.Equal(t, origDefaultRemoteState, generalSettings.DefaultRemoteStateAccess)
7380
}

0 commit comments

Comments
 (0)