Skip to content

Instantly share code, notes, and snippets.

@deinspanjer
Last active October 9, 2016 13:43
Show Gist options
  • Save deinspanjer/385a804f7228e692bb3134e5ca69cabd to your computer and use it in GitHub Desktop.
Save deinspanjer/385a804f7228e692bb3134e5ca69cabd to your computer and use it in GitHub Desktop.
Sqitch create schema templates for pg engine
-- Deploy [% project %]:[% change %] to [% engine %]
[% FOREACH item IN requires -%]
-- requires: [% item %]
[% END -%]
[% FOREACH item IN conflicts -%]
-- conflicts: [% item %]
[% END -%]
BEGIN;
CREATE SCHEMA [% IF name %][% name %][% ELSE %][% change %][% END %];
GRANT USAGE ON SCHEMA [% IF name %][% name %][% ELSE %][% change %][% END %] TO viewer;
COMMIT;
-- Revert [% project %]:[% change %] from [% engine %]
BEGIN;
DROP SCHEMA [% IF name %][% name %][% ELSE %][% change %][% END %];
COMMIT;
-- Verify [% project %]:[% change %] on [% engine %]
BEGIN;
SELECT pg_catalog.has_schema_privilege('[% IF name %][% name %][% ELSE %][% change %][% END %]', 'usage');
ROLLBACK;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment