Skip to content

Commit d6dba90

Browse files
committed
Use function_schema instead of schema and fix tests
1 parent f772fb2 commit d6dba90

File tree

3 files changed

+18
-16
lines changed

3 files changed

+18
-16
lines changed

Diff for: postgresql/resource_postgresql_event_trigger.go

+6-7
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@ const (
1515
eventTriggerNameAttr = "name"
1616
eventTriggerOnAttr = "on"
1717
eventTriggerFunctionAttr = "function"
18+
eventTriggerFunctionSchemaAttr = "function_schema"
1819
eventTriggerFilterAttr = "filter"
1920
eventTriggerFilterVariableAttr = "variable"
2021
eventTriggerFilterValueAttr = "values"
2122
eventTriggerDatabaseAttr = "database"
22-
eventTriggerSchemaAttr = "schema"
2323
eventTriggerOwnerAttr = "owner"
2424
eventTriggerStatusAttr = "status"
2525
)
@@ -95,12 +95,11 @@ func resourcePostgreSQLEventTrigger() *schema.Resource {
9595
ForceNew: true,
9696
Description: "The database where the event trigger is located. If not specified, the provider default database is used.",
9797
},
98-
eventTriggerSchemaAttr: {
98+
eventTriggerFunctionSchemaAttr: {
9999
Type: schema.TypeString,
100-
Optional: true,
101-
Computed: true,
100+
Required: true,
102101
ForceNew: true,
103-
Description: "Schema where the function is located. If not specified, the provider default schema is used.",
102+
Description: "Schema where the function is located.",
104103
},
105104
eventTriggerStatusAttr: {
106105
Type: schema.TypeString,
@@ -165,7 +164,7 @@ func resourcePostgreSQLEventTriggerCreate(db *DBConnection, d *schema.ResourceDa
165164
}
166165

167166
eventTriggerFunction := d.Get(eventTriggerFunctionAttr).(string)
168-
eventTriggerSchema := d.Get(eventTriggerSchemaAttr).(string)
167+
eventTriggerSchema := d.Get(eventTriggerFunctionSchemaAttr).(string)
169168
fmt.Fprint(b, " EXECUTE FUNCTION ", pq.QuoteIdentifier(eventTriggerSchema), ".", eventTriggerFunction, "()")
170169

171170
createSql := b.String()
@@ -330,7 +329,7 @@ func resourcePostgreSQLEventTriggerRead(db *DBConnection, d *schema.ResourceData
330329
d.Set(eventTriggerFunctionAttr, function)
331330
d.Set(eventTriggerOwnerAttr, owner)
332331
d.Set(eventTriggerDatabaseAttr, database)
333-
d.Set(eventTriggerSchemaAttr, schema)
332+
d.Set(eventTriggerFunctionSchemaAttr, schema)
334333

335334
switch status {
336335
case "D":

Diff for: postgresql/resource_postgresql_event_trigger_test.go

+4-1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ import (
1010
)
1111

1212
func TestAccPostgresqlEventTrigger_Basic(t *testing.T) {
13+
skipIfNotAcc(t)
14+
testSuperuserPreCheck(t)
15+
1316
// Create the database outside of resource.Test
1417
// because we need to create test schemas.
1518
dbSuffix, teardown := setupTestDatabase(t, true, true)
@@ -135,8 +138,8 @@ resource "postgresql_function" "function" {
135138
resource "postgresql_event_trigger" "event_trigger" {
136139
name = "event_trigger_test"
137140
database = "%[1]s"
138-
schema = "%[2]s"
139141
function = postgresql_function.function.name
142+
function_schema = postgresql_function.function.schema
140143
on = "ddl_command_end"
141144
owner = "postgres"
142145
status = "enable"

Diff for: website/docs/r/postgresql_event_trigger.html.markdown

+8-8
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,11 @@ resource "postgresql_function" "function" {
2828
}
2929
3030
resource "postgresql_event_trigger" "event_trigger" {
31-
name = "event_trigger_test"
32-
function = postgresql_function.function.name
33-
on = "ddl_command_start"
34-
owner = "postgres"
31+
name = "event_trigger_test"
32+
function = postgresql_function.function.name
33+
function_schema = postgresql_function.function.schema
34+
on = "ddl_command_start"
35+
owner = "postgres"
3536
3637
filter {
3738
variable = "TAG"
@@ -50,16 +51,15 @@ resource "postgresql_event_trigger" "event_trigger" {
5051

5152
* `function` - (Required) A function that is declared as taking no argument and returning type event_trigger.
5253

54+
* `function_schema` - (Required) Schema where the function is located.
55+
5356
* `filter` - (Optional) Lists of filter variables to restrict the firing of the trigger. Currently the only supported filter_variable is TAG.
5457
* `variable` - (Required) The name of a variable used to filter events. Currently the only supported value is TAG.
5558
* `values` - (Required) The name of the filter variable name. For TAG, this means a list of command tags (e.g., 'DROP FUNCTION').
5659

5760
* `database` - (Optional) The database where the event trigger is located.
5861
If not specified, the function is created in the current database.
5962

60-
* `schema` - (Optional) Schema where the function is located.
61-
If not specified, the function is created in the current schema.
62-
6363
* `status` - (Optional) These configure the firing of event triggers. The allowed names are "disable", "enable", "enable_replica" or "enable_always". Default is "enable".
6464

6565
* `owner` - (Required) The user name of the owner of the event trigger. You can't use 'current_role', 'current_user' or 'session_user' in order to avoid drifts.
@@ -71,4 +71,4 @@ command:
7171

7272
```
7373
$ terraform import postgresql_event_trigger.event_trigger_test "database.event_trigger"
74-
```
74+
```

0 commit comments

Comments
 (0)