diff --git a/schema/deploy/computed_columns/application_revision_certification_url.sql b/schema/deploy/computed_columns/application_revision_certification_url.sql index ab15aab11f..a099d9f18d 100644 --- a/schema/deploy/computed_columns/application_revision_certification_url.sql +++ b/schema/deploy/computed_columns/application_revision_certification_url.sql @@ -3,26 +3,6 @@ begin; - create or replace function ggircs_portal.application_revision_certification_url( - application_revision ggircs_portal.application_revision - ) - returns ggircs_portal.certification_url - as - $function$ - declare - result ggircs_portal.certification_url; - begin - select * from ggircs_portal.certification_url - where certification_url.application_id = application_revision.application_id - and certification_url.version_number = application_revision.version_number - order by certification_url.created_at desc limit 1 into result; - return result; - end; - $function$ - language 'plpgsql' stable; - - grant execute on function ggircs_portal.application_revision_certification_url to ciip_administrator, ciip_analyst, ciip_industry_user; - -comment on function ggircs_portal.application_revision_certification_url is 'Computed column for graphql to traverse to a certification_url row from application_revision'; +drop function ggircs_portal.application_revision_certification_url; commit; diff --git a/schema/deploy/computed_columns/application_revision_certification_url@v1.16.0.sql b/schema/deploy/computed_columns/application_revision_certification_url@v1.16.0.sql new file mode 100644 index 0000000000..ab15aab11f --- /dev/null +++ b/schema/deploy/computed_columns/application_revision_certification_url@v1.16.0.sql @@ -0,0 +1,28 @@ +-- Deploy ggircs-portal:computed_columns/application_revision_certification_url to pg +-- requires: tables/certification_url + +begin; + + create or replace function ggircs_portal.application_revision_certification_url( + application_revision ggircs_portal.application_revision + ) + returns ggircs_portal.certification_url + as + $function$ + declare + result ggircs_portal.certification_url; + begin + select * from ggircs_portal.certification_url + where certification_url.application_id = application_revision.application_id + and certification_url.version_number = application_revision.version_number + order by certification_url.created_at desc limit 1 into result; + return result; + end; + $function$ + language 'plpgsql' stable; + + grant execute on function ggircs_portal.application_revision_certification_url to ciip_administrator, ciip_analyst, ciip_industry_user; + +comment on function ggircs_portal.application_revision_certification_url is 'Computed column for graphql to traverse to a certification_url row from application_revision'; + +commit; diff --git a/schema/revert/computed_columns/application_revision_certification_url.sql b/schema/revert/computed_columns/application_revision_certification_url.sql index 4ba2d8a0f7..ab15aab11f 100644 --- a/schema/revert/computed_columns/application_revision_certification_url.sql +++ b/schema/revert/computed_columns/application_revision_certification_url.sql @@ -1,7 +1,28 @@ --- Revert ggircs-portal:computed_columns/application_revision_certification_url from pg +-- Deploy ggircs-portal:computed_columns/application_revision_certification_url to pg +-- requires: tables/certification_url begin; -drop function ggircs_portal.application_revision_certification_url; + create or replace function ggircs_portal.application_revision_certification_url( + application_revision ggircs_portal.application_revision + ) + returns ggircs_portal.certification_url + as + $function$ + declare + result ggircs_portal.certification_url; + begin + select * from ggircs_portal.certification_url + where certification_url.application_id = application_revision.application_id + and certification_url.version_number = application_revision.version_number + order by certification_url.created_at desc limit 1 into result; + return result; + end; + $function$ + language 'plpgsql' stable; + + grant execute on function ggircs_portal.application_revision_certification_url to ciip_administrator, ciip_analyst, ciip_industry_user; + +comment on function ggircs_portal.application_revision_certification_url is 'Computed column for graphql to traverse to a certification_url row from application_revision'; commit; diff --git a/schema/revert/computed_columns/application_revision_certification_url@v1.16.0.sql b/schema/revert/computed_columns/application_revision_certification_url@v1.16.0.sql new file mode 100644 index 0000000000..4ba2d8a0f7 --- /dev/null +++ b/schema/revert/computed_columns/application_revision_certification_url@v1.16.0.sql @@ -0,0 +1,7 @@ +-- Revert ggircs-portal:computed_columns/application_revision_certification_url from pg + +begin; + +drop function ggircs_portal.application_revision_certification_url; + +commit; diff --git a/schema/sqitch.plan b/schema/sqitch.plan index 4680837caf..60e9ef638f 100644 --- a/schema/sqitch.plan +++ b/schema/sqitch.plan @@ -271,3 +271,4 @@ mutations/create_naics_mutation [tables/naics] 2021-03-17T21:14:47Z Dylan Leard policies/certification_url_policies [policies/certification_url_policies@v1.16.0] 2021-03-11T22:31:10Z Pierre Bastianelli # Removing certification url policies as part of the certifier role deprecation database_functions/verify_function_not_present 2021-03-12T00:26:55Z Pierre Bastianelli # Helper that throws if a function already exists, meant to verify drop operations computed_columns/application_revision_certification_signature_is_valid [computed_columns/application_revision_certification_signature_is_valid@v1.16.0] 2021-03-11T23:59:49Z Pierre Bastianelli # Removing computed column as part of the certifier role deprecation +computed_columns/application_revision_certification_url [computed_columns/application_revision_certification_url@v1.16.0] 2021-03-12T00:43:24Z Pierre Bastianelli # dropping computed column as part of the certifier role deprecation diff --git a/schema/verify/computed_columns/application_revision_certification_url.sql b/schema/verify/computed_columns/application_revision_certification_url.sql index eac46fdb9b..23ad933286 100644 --- a/schema/verify/computed_columns/application_revision_certification_url.sql +++ b/schema/verify/computed_columns/application_revision_certification_url.sql @@ -2,6 +2,6 @@ begin; -select pg_get_functiondef('ggircs_portal.application_revision_certification_url(ggircs_portal.application_revision)'::regprocedure); +select ggircs_portal_private.verify_function_not_present('ggircs_portal.application_revision_certification_url'); rollback; diff --git a/schema/verify/computed_columns/application_revision_certification_url@v1.16.0.sql b/schema/verify/computed_columns/application_revision_certification_url@v1.16.0.sql new file mode 100644 index 0000000000..eac46fdb9b --- /dev/null +++ b/schema/verify/computed_columns/application_revision_certification_url@v1.16.0.sql @@ -0,0 +1,7 @@ +-- Verify ggircs-portal:computed_columns/application_revision_certification_url on pg + +begin; + +select pg_get_functiondef('ggircs_portal.application_revision_certification_url(ggircs_portal.application_revision)'::regprocedure); + +rollback;