@pgpm/verify 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/LICENSE +22 -0
  2. package/Makefile +6 -0
  3. package/README.md +5 -0
  4. package/__tests__/ext-verify.test.ts +490 -0
  5. package/deploy/procedures/get_entity_from_str.sql +21 -0
  6. package/deploy/procedures/get_schema_from_str.sql +21 -0
  7. package/deploy/procedures/list_indexes.sql +29 -0
  8. package/deploy/procedures/list_memberships.sql +31 -0
  9. package/deploy/procedures/verify_constraint.sql +27 -0
  10. package/deploy/procedures/verify_domain.sql +32 -0
  11. package/deploy/procedures/verify_extension.sql +24 -0
  12. package/deploy/procedures/verify_function.sql +37 -0
  13. package/deploy/procedures/verify_index.sql +23 -0
  14. package/deploy/procedures/verify_membership.sql +27 -0
  15. package/deploy/procedures/verify_policy.sql +35 -0
  16. package/deploy/procedures/verify_role.sql +24 -0
  17. package/deploy/procedures/verify_schema.sql +24 -0
  18. package/deploy/procedures/verify_security.sql +33 -0
  19. package/deploy/procedures/verify_table.sql +30 -0
  20. package/deploy/procedures/verify_table_grant.sql +32 -0
  21. package/deploy/procedures/verify_trigger.sql +32 -0
  22. package/deploy/procedures/verify_type.sql +32 -0
  23. package/deploy/procedures/verify_view.sql +30 -0
  24. package/jest.config.js +15 -0
  25. package/launchql-verify.control +8 -0
  26. package/launchql.plan +24 -0
  27. package/package.json +25 -0
  28. package/revert/procedures/get_entity_from_str.sql +7 -0
  29. package/revert/procedures/get_schema_from_str.sql +7 -0
  30. package/revert/procedures/list_indexes.sql +7 -0
  31. package/revert/procedures/list_memberships.sql +7 -0
  32. package/revert/procedures/verify_constraint.sql +7 -0
  33. package/revert/procedures/verify_domain.sql +7 -0
  34. package/revert/procedures/verify_extension.sql +7 -0
  35. package/revert/procedures/verify_function.sql +7 -0
  36. package/revert/procedures/verify_index.sql +7 -0
  37. package/revert/procedures/verify_membership.sql +7 -0
  38. package/revert/procedures/verify_policy.sql +7 -0
  39. package/revert/procedures/verify_role.sql +7 -0
  40. package/revert/procedures/verify_schema.sql +7 -0
  41. package/revert/procedures/verify_security.sql +7 -0
  42. package/revert/procedures/verify_table.sql +7 -0
  43. package/revert/procedures/verify_table_grant.sql +7 -0
  44. package/revert/procedures/verify_trigger.sql +7 -0
  45. package/revert/procedures/verify_type.sql +7 -0
  46. package/revert/procedures/verify_view.sql +7 -0
  47. package/sql/launchql-verify--0.4.6.sql +358 -0
  48. package/verify/procedures/get_entity_from_str.sql +7 -0
  49. package/verify/procedures/get_schema_from_str.sql +7 -0
  50. package/verify/procedures/list_indexes.sql +7 -0
  51. package/verify/procedures/list_memberships.sql +7 -0
  52. package/verify/procedures/verify_constraint.sql +7 -0
  53. package/verify/procedures/verify_domain.sql +7 -0
  54. package/verify/procedures/verify_extension.sql +7 -0
  55. package/verify/procedures/verify_function.sql +7 -0
  56. package/verify/procedures/verify_index.sql +7 -0
  57. package/verify/procedures/verify_membership.sql +7 -0
  58. package/verify/procedures/verify_policy.sql +7 -0
  59. package/verify/procedures/verify_role.sql +7 -0
  60. package/verify/procedures/verify_schema.sql +7 -0
  61. package/verify/procedures/verify_security.sql +7 -0
  62. package/verify/procedures/verify_table.sql +7 -0
  63. package/verify/procedures/verify_table_grant.sql +7 -0
  64. package/verify/procedures/verify_trigger.sql +7 -0
  65. package/verify/procedures/verify_type.sql +7 -0
  66. package/verify/procedures/verify_view.sql +7 -0
@@ -0,0 +1,24 @@
1
+ -- Deploy procedures/verify_extension to pg
2
+ BEGIN;
3
+ CREATE FUNCTION verify_extension (_extname text)
4
+ RETURNS boolean
5
+ AS $$
6
+ BEGIN
7
+ IF EXISTS (
8
+ SELECT
9
+ 1
10
+ FROM
11
+ pg_available_extensions
12
+ WHERE
13
+ name = _extname) THEN
14
+ RETURN TRUE;
15
+ ELSE
16
+ RAISE EXCEPTION 'Nonexistent extension --> %', _extname
17
+ USING HINT = 'Please check';
18
+ END IF;
19
+ END;
20
+ $$
21
+ LANGUAGE 'plpgsql'
22
+ IMMUTABLE;
23
+ COMMIT;
24
+
@@ -0,0 +1,37 @@
1
+ -- Deploy procedures/verify_function to pg
2
+
3
+ -- requires: procedures/get_entity_from_str
4
+ -- requires: procedures/get_schema_from_str
5
+
6
+ BEGIN;
7
+ CREATE FUNCTION verify_function (_name text, _user text DEFAULT NULL)
8
+ RETURNS boolean
9
+ AS $$
10
+ DECLARE
11
+ check_user text;
12
+ BEGIN
13
+ IF (_user IS NOT NULL) THEN
14
+ check_user = _user;
15
+ ELSE
16
+ check_user = CURRENT_USER;
17
+ END IF;
18
+ IF EXISTS (
19
+ SELECT
20
+ has_function_privilege(check_user, p.oid, 'execute')
21
+ FROM
22
+ pg_catalog.pg_proc p
23
+ JOIN pg_catalog.pg_namespace n ON n.oid = p.pronamespace
24
+ WHERE
25
+ n.nspname = get_schema_from_str (_name)
26
+ AND p.proname = get_entity_from_str (_name)) THEN
27
+ RETURN TRUE;
28
+ ELSE
29
+ RAISE EXCEPTION 'Nonexistent function --> %', _name
30
+ USING HINT = 'Please check';
31
+ END IF;
32
+ END;
33
+ $$
34
+ LANGUAGE 'plpgsql'
35
+ IMMUTABLE;
36
+ COMMIT;
37
+
@@ -0,0 +1,23 @@
1
+ -- Deploy procedures/verify_index to pg
2
+
3
+ -- requires: procedures/list_indexes
4
+
5
+ BEGIN;
6
+ CREATE FUNCTION verify_index (_table text, _index text)
7
+ RETURNS boolean
8
+ AS $$
9
+ BEGIN
10
+ IF EXISTS (
11
+ SELECT
12
+ list_indexes (_table, _index)) THEN
13
+ RETURN TRUE;
14
+ ELSE
15
+ RAISE EXCEPTION 'Nonexistent index --> %', _index
16
+ USING HINT = 'Please check';
17
+ END IF;
18
+ END;
19
+ $$
20
+ LANGUAGE 'plpgsql'
21
+ IMMUTABLE;
22
+ COMMIT;
23
+
@@ -0,0 +1,27 @@
1
+ -- Deploy procedures/verify_membership to pg
2
+
3
+ -- requires: procedures/list_memberships
4
+
5
+ BEGIN;
6
+ CREATE FUNCTION verify_membership (_user text, _role text)
7
+ RETURNS boolean
8
+ AS $$
9
+ BEGIN
10
+ IF EXISTS (
11
+ SELECT
12
+ 1
13
+ FROM
14
+ list_memberships (_user)
15
+ WHERE
16
+ rolname = _role) THEN
17
+ RETURN TRUE;
18
+ ELSE
19
+ RAISE EXCEPTION 'Nonexistent member --> %', _user
20
+ USING HINT = 'Please check';
21
+ END IF;
22
+ END;
23
+ $$
24
+ LANGUAGE 'plpgsql'
25
+ IMMUTABLE;
26
+ COMMIT;
27
+
@@ -0,0 +1,35 @@
1
+ -- Deploy procedures/verify_policy to pg
2
+
3
+ -- requires: procedures/get_entity_from_str
4
+ -- requires: procedures/get_schema_from_str
5
+
6
+
7
+ BEGIN;
8
+
9
+ CREATE FUNCTION verify_policy (_policy text, _table text)
10
+ RETURNS boolean
11
+ AS $$
12
+ BEGIN
13
+ IF EXISTS (
14
+ SELECT
15
+ 1
16
+ FROM
17
+ pg_class p
18
+ JOIN pg_catalog.pg_namespace n ON n.oid = p.relnamespace
19
+ JOIN pg_policy pol ON pol.polrelid = p.relfilenode
20
+ WHERE
21
+ pol.polname = _policy
22
+ AND relrowsecurity = 'true'
23
+ AND relname = get_entity_from_str (_table)
24
+ AND nspname = get_schema_from_str (_table)) THEN
25
+ RETURN TRUE;
26
+ ELSE
27
+ RAISE EXCEPTION 'Nonexistent policy or missing relrowsecurity --> %', _policy
28
+ USING HINT = 'Please check';
29
+ END IF;
30
+ END;
31
+ $$
32
+ LANGUAGE 'plpgsql'
33
+ IMMUTABLE;
34
+ COMMIT;
35
+
@@ -0,0 +1,24 @@
1
+ -- Deploy procedures/verify_role to pg
2
+ BEGIN;
3
+ CREATE FUNCTION verify_role (_user text)
4
+ RETURNS boolean
5
+ AS $$
6
+ BEGIN
7
+ IF EXISTS (
8
+ SELECT
9
+ 1
10
+ FROM
11
+ pg_roles
12
+ WHERE
13
+ rolname = _user) THEN
14
+ RETURN TRUE;
15
+ ELSE
16
+ RAISE EXCEPTION 'Nonexistent user --> %', _user
17
+ USING HINT = 'Please check';
18
+ END IF;
19
+ END;
20
+ $$
21
+ LANGUAGE 'plpgsql'
22
+ IMMUTABLE;
23
+ COMMIT;
24
+
@@ -0,0 +1,24 @@
1
+ -- Deploy procedures/verify_schema to pg
2
+ BEGIN;
3
+ CREATE FUNCTION verify_schema (_schema text)
4
+ RETURNS boolean
5
+ AS $$
6
+ BEGIN
7
+ IF EXISTS (
8
+ SELECT
9
+ *
10
+ FROM
11
+ pg_catalog.pg_namespace
12
+ WHERE
13
+ nspname = _schema) THEN
14
+ RETURN TRUE;
15
+ ELSE
16
+ RAISE EXCEPTION 'Nonexistent schema --> %', _schema
17
+ USING HINT = 'Please check';
18
+ END IF;
19
+ END;
20
+ $$
21
+ LANGUAGE 'plpgsql'
22
+ IMMUTABLE;
23
+ COMMIT;
24
+
@@ -0,0 +1,33 @@
1
+ -- Deploy procedures/verify_security to pg
2
+
3
+ -- requires: procedures/get_entity_from_str
4
+ -- requires: procedures/get_schema_from_str
5
+
6
+ BEGIN;
7
+ CREATE FUNCTION verify_security (_table text)
8
+ RETURNS boolean
9
+ AS $$
10
+ BEGIN
11
+ IF EXISTS (
12
+ SELECT
13
+ n.oid,
14
+ relname,
15
+ n.nspname
16
+ FROM
17
+ pg_class p
18
+ JOIN pg_catalog.pg_namespace n ON n.oid = p.relnamespace
19
+ WHERE
20
+ relrowsecurity = 'true'
21
+ AND relname = get_entity_from_str (_table)
22
+ AND nspname = get_schema_from_str (_table)) THEN
23
+ RETURN TRUE;
24
+ ELSE
25
+ RAISE EXCEPTION 'Nonexistent security --> %', _name
26
+ USING HINT = 'Please check';
27
+ END IF;
28
+ END;
29
+ $$
30
+ LANGUAGE 'plpgsql'
31
+ IMMUTABLE;
32
+ COMMIT;
33
+
@@ -0,0 +1,30 @@
1
+ -- Deploy procedures/verify_table to pg
2
+
3
+ -- requires: procedures/get_entity_from_str
4
+ -- requires: procedures/get_schema_from_str
5
+
6
+
7
+ BEGIN;
8
+ CREATE FUNCTION verify_table (_table text)
9
+ RETURNS boolean
10
+ AS $$
11
+ BEGIN
12
+ IF EXISTS (
13
+ SELECT
14
+ *
15
+ FROM
16
+ information_schema.tables
17
+ WHERE
18
+ table_schema = get_schema_from_str (_table)
19
+ AND table_name = get_entity_from_str (_table)) THEN
20
+ RETURN TRUE;
21
+ ELSE
22
+ RAISE EXCEPTION 'Nonexistent table --> %', _table
23
+ USING HINT = 'Please check';
24
+ END IF;
25
+ END;
26
+ $$
27
+ LANGUAGE 'plpgsql'
28
+ IMMUTABLE;
29
+ COMMIT;
30
+
@@ -0,0 +1,32 @@
1
+ -- Deploy procedures/verify_table_grant to pg
2
+
3
+ -- requires: procedures/get_entity_from_str
4
+ -- requires: procedures/get_schema_from_str
5
+
6
+ BEGIN;
7
+ CREATE FUNCTION verify_table_grant (_table text, _privilege text, _role text)
8
+ RETURNS boolean
9
+ AS $$
10
+ BEGIN
11
+ IF EXISTS (
12
+ SELECT
13
+ grantee,
14
+ privilege_type
15
+ FROM
16
+ information_schema.role_table_grants
17
+ WHERE
18
+ table_schema = get_schema_from_str (_table)
19
+ AND table_name = get_entity_from_str (_table)
20
+ AND privilege_type = _privilege
21
+ AND grantee = _role) THEN
22
+ RETURN TRUE;
23
+ ELSE
24
+ RAISE EXCEPTION 'Nonexistent table grant --> %', _privilege
25
+ USING HINT = 'Please check';
26
+ END IF;
27
+ END;
28
+ $$
29
+ LANGUAGE 'plpgsql'
30
+ IMMUTABLE;
31
+ COMMIT;
32
+
@@ -0,0 +1,32 @@
1
+ -- Deploy procedures/verify_trigger to pg
2
+
3
+ -- requires: procedures/get_entity_from_str
4
+ -- requires: procedures/get_schema_from_str
5
+
6
+
7
+ BEGIN;
8
+ CREATE FUNCTION verify_trigger (_trigger text)
9
+ RETURNS boolean
10
+ AS $$
11
+ BEGIN
12
+ IF EXISTS (
13
+ SELECT
14
+ pg_trigger.tgname,
15
+ n.nspname
16
+ FROM
17
+ pg_trigger,
18
+ pg_catalog.pg_namespace n
19
+ WHERE
20
+ tgname = get_entity_from_str (_trigger)
21
+ AND nspname = get_schema_from_str (_trigger)) THEN
22
+ RETURN TRUE;
23
+ ELSE
24
+ RAISE EXCEPTION 'Nonexistent trigger --> %', _trigger
25
+ USING HINT = 'Please check';
26
+ END IF;
27
+ END;
28
+ $$
29
+ LANGUAGE 'plpgsql'
30
+ IMMUTABLE;
31
+ COMMIT;
32
+
@@ -0,0 +1,32 @@
1
+ -- Deploy procedures/verify_type to pg
2
+
3
+ -- requires: procedures/get_entity_from_str
4
+ -- requires: procedures/get_schema_from_str
5
+
6
+
7
+ BEGIN;
8
+ CREATE FUNCTION verify_type (_type text)
9
+ RETURNS boolean
10
+ AS $$
11
+ BEGIN
12
+ IF EXISTS (
13
+ SELECT
14
+ pg_type.typname,
15
+ n.nspname
16
+ FROM
17
+ pg_type,
18
+ pg_catalog.pg_namespace n
19
+ WHERE
20
+ typname = get_entity_from_str (_type)
21
+ AND nspname = get_schema_from_str (_type)) THEN
22
+ RETURN TRUE;
23
+ ELSE
24
+ RAISE EXCEPTION 'Nonexistent type --> %', _type
25
+ USING HINT = 'Please check';
26
+ END IF;
27
+ END;
28
+ $$
29
+ LANGUAGE 'plpgsql'
30
+ IMMUTABLE;
31
+ COMMIT;
32
+
@@ -0,0 +1,30 @@
1
+ -- Deploy procedures/verify_view to pg
2
+
3
+ -- requires: procedures/get_entity_from_str
4
+ -- requires: procedures/get_schema_from_str
5
+
6
+
7
+ BEGIN;
8
+ CREATE FUNCTION verify_view (_view text)
9
+ RETURNS boolean
10
+ AS $$
11
+ BEGIN
12
+ IF EXISTS (
13
+ SELECT
14
+ *
15
+ FROM
16
+ information_schema.views
17
+ WHERE
18
+ table_schema = get_schema_from_str (_view)
19
+ AND table_name = get_entity_from_str (_view)) THEN
20
+ RETURN TRUE;
21
+ ELSE
22
+ RAISE EXCEPTION 'Nonexistent view --> %', _view
23
+ USING HINT = 'Please check';
24
+ END IF;
25
+ END;
26
+ $$
27
+ LANGUAGE 'plpgsql'
28
+ IMMUTABLE;
29
+ COMMIT;
30
+
package/jest.config.js ADDED
@@ -0,0 +1,15 @@
1
+ /** @type {import('ts-jest').JestConfigWithTsJest} */
2
+ module.exports = {
3
+ preset: 'ts-jest',
4
+ testEnvironment: 'node',
5
+
6
+ // Match both __tests__ and colocated test files
7
+ testMatch: ['**/?(*.)+(test|spec).{ts,tsx,js,jsx}'],
8
+
9
+ // Ignore build artifacts and type declarations
10
+ testPathIgnorePatterns: ['/dist/', '\\.d\\.ts$'],
11
+ modulePathIgnorePatterns: ['<rootDir>/dist/'],
12
+ watchPathIgnorePatterns: ['/dist/'],
13
+
14
+ moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'],
15
+ };
@@ -0,0 +1,8 @@
1
+ # launchql-verify extension
2
+ comment = 'launchql-verify extension'
3
+ default_version = '0.4.6'
4
+ module_pathname = '$libdir/launchql-verify'
5
+ requires = 'plpgsql'
6
+ relocatable = false
7
+ superuser = false
8
+
package/launchql.plan ADDED
@@ -0,0 +1,24 @@
1
+ %syntax-version=1.0.0
2
+ %project=launchql-verify
3
+ %uri=launchql-verify
4
+
5
+ procedures/get_entity_from_str 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/get_entity_from_str
6
+ procedures/get_schema_from_str 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/get_schema_from_str
7
+ procedures/list_indexes [procedures/get_entity_from_str procedures/get_schema_from_str] 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/list_indexes
8
+ procedures/list_memberships 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/list_memberships
9
+ procedures/verify_constraint 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_constraint
10
+ procedures/verify_domain [procedures/get_entity_from_str procedures/get_schema_from_str] 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_domain
11
+ procedures/verify_extension 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_extension
12
+ procedures/verify_function [procedures/get_entity_from_str procedures/get_schema_from_str] 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_function
13
+ procedures/verify_index [procedures/list_indexes] 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_index
14
+ procedures/verify_membership [procedures/list_memberships] 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_membership
15
+ procedures/verify_policy [procedures/get_entity_from_str procedures/get_schema_from_str] 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_policy
16
+ procedures/verify_role 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_role
17
+ procedures/verify_schema 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_schema
18
+ procedures/verify_security [procedures/get_entity_from_str procedures/get_schema_from_str] 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_security
19
+ procedures/verify_table_grant [procedures/get_entity_from_str procedures/get_schema_from_str] 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_table_grant
20
+ procedures/verify_table [procedures/get_entity_from_str procedures/get_schema_from_str] 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_table
21
+ procedures/verify_trigger [procedures/get_entity_from_str procedures/get_schema_from_str] 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_trigger
22
+ procedures/verify_type [procedures/get_entity_from_str procedures/get_schema_from_str] 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_type
23
+ procedures/verify_view [procedures/get_entity_from_str procedures/get_schema_from_str] 2017-08-11T08:11:51Z skitch <skitch@5b0c196eeb62> # add procedures/verify_view
24
+ @0.1.0 2025-08-26T23:56:48Z launchql <launchql@5b0c196eeb62> # verify
package/package.json ADDED
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "@pgpm/verify",
3
+ "version": "0.4.0",
4
+ "description": "Verification utilities for LaunchQL deploy/verify/revert workflow",
5
+ "publishConfig": {
6
+ "access": "public"
7
+ },
8
+ "scripts": {
9
+ "bundle": "lql package",
10
+ "test": "jest",
11
+ "test:watch": "jest --watch"
12
+ },
13
+ "devDependencies": {
14
+ "@launchql/cli": "^4.9.0"
15
+ },
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "https://github.com/launchql/extensions"
19
+ },
20
+ "homepage": "https://github.com/launchql/extensions",
21
+ "bugs": {
22
+ "url": "https://github.com/launchql/extensions/issues"
23
+ },
24
+ "gitHead": "cc9f52a335caa6e21ee7751b04b77c84ce6cb809"
25
+ }
@@ -0,0 +1,7 @@
1
+ -- Revert launchql-verify:procedures/get_entity_from_str from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION get_entity_from_str(text);
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert launchql-verify:procedures/get_schema_from_str from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION get_schema_from_str(text);
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert launchql-verify:procedures/list_indexes from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION list_indexes(text, text);
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert launchql-verify:procedures/list_memberships from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION list_memberships(text);
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_constraint from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION verify_constraint;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_domain from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION public.verify_domain;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_extension from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION public.verify_extension;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_function from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION verify_function;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_index from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION verify_index;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_membership from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION verify_membership;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_policy from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION verify_policy;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_role from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION verify_role;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_schema from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION verify_schema;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_security from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION verify_security;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_table from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION verify_table;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_table_grant from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION verify_table_grant;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_trigger from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION verify_trigger;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_type from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION verify_type;
6
+
7
+ COMMIT;
@@ -0,0 +1,7 @@
1
+ -- Revert procedures/verify_view from pg
2
+
3
+ BEGIN;
4
+
5
+ DROP FUNCTION public.verify_view;
6
+
7
+ COMMIT;