Always have the default workspace in the pg backend

Closes https://github.com/hashicorp/terraform/issues/23121
This commit is contained in:
Rémi Lapeyre 2020-09-29 23:18:34 +02:00
parent a82b495683
commit 9acfe30ca6
3 changed files with 7 additions and 3 deletions

View File

@ -10,14 +10,16 @@ import (
)
func (b *Backend) Workspaces() ([]string, error) {
query := `SELECT name FROM %s.%s ORDER BY name`
query := `SELECT name FROM %s.%s WHERE name != 'default' ORDER BY name`
rows, err := b.db.Query(fmt.Sprintf(query, b.schemaName, statesTableName))
if err != nil {
return nil, err
}
defer rows.Close()
var result []string
result := []string{
backend.DefaultStateName,
}
for rows.Next() {
var name string

View File

@ -71,6 +71,8 @@ func TestBackendConfig(t *testing.T) {
if c.Name != backend.DefaultStateName {
t.Fatal("RemoteClient name is not configured")
}
backend.TestBackendStates(t, b)
}
func TestBackendConfigSkipSchema(t *testing.T) {

View File

@ -94,7 +94,7 @@ func TestBackendStates(t *testing.T, b Backend) {
// Test it starts with only the default
if !noDefault && (len(workspaces) != 1 || workspaces[0] != DefaultStateName) {
t.Fatalf("should only default to start: %#v", workspaces)
t.Fatalf("should only have the default workspace to start: %#v", workspaces)
}
// Create a couple states