From 504015621e69545822c59407a4b7cff899385b65 Mon Sep 17 00:00:00 2001 From: Patrick Delcroix Date: Tue, 16 May 2023 11:17:01 +0200 Subject: [PATCH 1/3] Create docker.yml --- .github/workflows/docker.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/workflows/docker.yml diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml new file mode 100644 index 0000000..5bbcc17 --- /dev/null +++ b/.github/workflows/docker.yml @@ -0,0 +1,25 @@ +name: publish +on: + pull_request: + workflow_dispatch: + inputs: + tag: + default: latest + description: build tag + required: false +jobs: + publish-docker-image: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Login to GitHub Container Registry + uses: docker/login-action@v1 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + - name: Build the pgsql Docker image + run: | + TAG_INPUT=${{ github.event.inputs.name }} + docker build . --tag ghcr.io/openimis/openimis-pgsql:${TAG_INPUT:-"latest"} + docker push ghcr.io/openimis/openimis-pgsql:${TAG_INPUT:-"latest"} From 37f294ecdfa93b95335a3bd3763d4281d40e29e7 Mon Sep 17 00:00:00 2001 From: Patrick Delcroix Date: Tue, 16 May 2023 16:51:27 +0200 Subject: [PATCH 2/3] Update concatenate_files.sh --- concatenate_files.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/concatenate_files.sh b/concatenate_files.sh index 7aaa9c5..671a944 100644 --- a/concatenate_files.sh +++ b/concatenate_files.sh @@ -1,4 +1,5 @@ #!/bin/bash mkdir output -cat database\ scripts/*.sql > output/fullDemoDatabase.sql +cd database\ scripts +cat 00_dump.sql 0[2345]_*.sql demo_db.sql > ../output/fullDemoDatabase.sql From 30cdf95bbfc71eca12598a0b606fb3bdc15354e1 Mon Sep 17 00:00:00 2001 From: Patrick Delcroix Date: Wed, 17 May 2023 00:45:47 +0200 Subject: [PATCH 3/3] add "public" --- database scripts/02_aux_functions.sql | 60 +++++++++++++-------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/database scripts/02_aux_functions.sql b/database scripts/02_aux_functions.sql index 20ea0a1..34c65f1 100644 --- a/database scripts/02_aux_functions.sql +++ b/database scripts/02_aux_functions.sql @@ -1,42 +1,42 @@ /* Functions for Year, Quarter, and Month */ --Year -CREATE OR REPLACE FUNCTION YEAR(TIMESTAMP without TIME ZONE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".YEAR(TIMESTAMP without TIME ZONE) RETURNS INTEGER AS $$ SELECT EXTRACT(YEAR FROM $1)::INTEGER; $$ LANGUAGE SQL IMMUTABLE; -CREATE OR REPLACE FUNCTION YEAR(TIMESTAMP WITH TIME ZONE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".YEAR(TIMESTAMP WITH TIME ZONE) RETURNS INTEGER AS $$ SELECT EXTRACT(YEAR FROM $1)::INTEGER; $$ LANGUAGE SQL STABLE; -CREATE OR REPLACE FUNCTION YEAR(DATE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".YEAR(DATE) RETURNS INTEGER AS $$ SELECT EXTRACT(YEAR FROM $1)::INTEGER; $$ LANGUAGE SQL IMMUTABLE; --Quarter -CREATE OR REPLACE FUNCTION QUARTER(TIMESTAMP without TIME ZONE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".QUARTER(TIMESTAMP without TIME ZONE) RETURNS INTEGER AS $$ SELECT EXTRACT(QUARTER FROM $1)::INTEGER; $$ LANGUAGE SQL IMMUTABLE; -CREATE OR REPLACE FUNCTION QUARTER(TIMESTAMP WITH TIME ZONE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".QUARTER(TIMESTAMP WITH TIME ZONE) RETURNS INTEGER AS $$ SELECT EXTRACT(QUARTER FROM $1)::INTEGER; $$ LANGUAGE SQL STABLE; -CREATE OR REPLACE FUNCTION QUARTER(DATE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".QUARTER(DATE) RETURNS INTEGER AS $$ SELECT EXTRACT(QUARTER FROM $1)::INTEGER; $$ LANGUAGE SQL IMMUTABLE; --Month -CREATE OR REPLACE FUNCTION MONTH(TIMESTAMP without TIME ZONE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".MONTH(TIMESTAMP without TIME ZONE) RETURNS INTEGER AS $$ SELECT EXTRACT(MONTH FROM $1)::INTEGER; $$ LANGUAGE SQL IMMUTABLE; -CREATE OR REPLACE FUNCTION MONTH(TIMESTAMP WITH TIME ZONE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".MONTH(TIMESTAMP WITH TIME ZONE) RETURNS INTEGER AS $$ SELECT EXTRACT(MONTH FROM $1)::INTEGER; $$ LANGUAGE SQL STABLE; -CREATE OR REPLACE FUNCTION MONTH(DATE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".MONTH(DATE) RETURNS INTEGER AS $$ SELECT EXTRACT(MONTH FROM $1)::INTEGER; $$ LANGUAGE SQL IMMUTABLE; @@ -44,101 +44,101 @@ $$ LANGUAGE SQL IMMUTABLE; /* DATEDIFF Functions for Year and Day */ --Year -CREATE OR REPLACE FUNCTION DATEDIFF_YEAR(TIMESTAMP without TIME ZONE, TIMESTAMP without TIME ZONE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".DATEDIFF_YEAR(TIMESTAMP without TIME ZONE, TIMESTAMP without TIME ZONE) RETURNS INTEGER AS $$ SELECT (DATE_PART('year', $2) - DATE_PART('year', $1))::INTEGER; $$ LANGUAGE SQL IMMUTABLE; -CREATE OR REPLACE FUNCTION DATEDIFF_YEAR(TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH TIME ZONE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".DATEDIFF_YEAR(TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH TIME ZONE) RETURNS INTEGER AS $$ SELECT (DATE_PART('year', $2) - DATE_PART('year', $1))::INTEGER; $$ LANGUAGE SQL STABLE; -CREATE OR REPLACE FUNCTION DATEDIFF_YEAR(DATE, DATE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".DATEDIFF_YEAR(DATE, DATE) RETURNS INTEGER AS $$ SELECT (DATE_PART('year', $2) - DATE_PART('year', $1))::INTEGER; $$ LANGUAGE SQL IMMUTABLE; --Day -CREATE OR REPLACE FUNCTION DATEDIFF_DAY(TIMESTAMP without TIME ZONE, TIMESTAMP without TIME ZONE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".DATEDIFF_DAY(TIMESTAMP without TIME ZONE, TIMESTAMP without TIME ZONE) RETURNS INTEGER AS $$ SELECT DATE_PART('day', $2 - $1)::INTEGER; $$ LANGUAGE SQL IMMUTABLE; -CREATE OR REPLACE FUNCTION DATEDIFF_DAY(TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH TIME ZONE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".DATEDIFF_DAY(TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH TIME ZONE) RETURNS INTEGER AS $$ SELECT DATE_PART('day', $2 - $1)::INTEGER; $$ LANGUAGE SQL STABLE; -CREATE OR REPLACE FUNCTION DATEDIFF_DAY(DATE, DATE) RETURNS INTEGER +CREATE OR REPLACE FUNCTION "public".DATEDIFF_DAY(DATE, DATE) RETURNS INTEGER AS $$ SELECT ($2::DATE - $1::DATE)::INTEGER; $$ LANGUAGE SQL IMMUTABLE; /* Datename functions for Quarter*/ --Quarter -CREATE OR REPLACE FUNCTION DATENAME_Q(TIMESTAMP without TIME ZONE) RETURNS TEXT +CREATE OR REPLACE FUNCTION "public".DATENAME_Q(TIMESTAMP without TIME ZONE) RETURNS TEXT AS $$ SELECT to_char($1, 'Q'); $$ LANGUAGE SQL IMMUTABLE; -CREATE OR REPLACE FUNCTION DATENAME_Q(TIMESTAMP WITH TIME ZONE) RETURNS TEXT +CREATE OR REPLACE FUNCTION "public".DATENAME_Q(TIMESTAMP WITH TIME ZONE) RETURNS TEXT AS $$ SELECT to_char($1, 'Q'); $$ LANGUAGE SQL STABLE; -CREATE OR REPLACE FUNCTION DATENAME_Q(DATE) RETURNS TEXT +CREATE OR REPLACE FUNCTION "public".DATENAME_Q(DATE) RETURNS TEXT AS $$ SELECT to_char($1, 'Q'); $$ LANGUAGE SQL IMMUTABLE; /* End of Month */ -CREATE OR REPLACE FUNCTION EOMONTH(TIMESTAMP without TIME ZONE) RETURNS TIMESTAMP without TIME ZONE +CREATE OR REPLACE FUNCTION "public".EOMONTH(TIMESTAMP without TIME ZONE) RETURNS TIMESTAMP without TIME ZONE AS $$ SELECT date_trunc('month', $1) + interval '1 month' - interval '1 day'; $$ LANGUAGE SQL IMMUTABLE; -CREATE OR REPLACE FUNCTION EOMONTH(TIMESTAMP WITH TIME ZONE) RETURNS TIMESTAMP with TIME ZONE +CREATE OR REPLACE FUNCTION "public".EOMONTH(TIMESTAMP WITH TIME ZONE) RETURNS TIMESTAMP with TIME ZONE AS $$ SELECT date_trunc('month', $1) + interval '1 month' - interval '1 day'; $$ LANGUAGE SQL STABLE; -CREATE OR REPLACE FUNCTION EOMONTH(DATE) RETURNS TIMESTAMP with TIME ZONE +CREATE OR REPLACE FUNCTION "public".EOMONTH(DATE) RETURNS TIMESTAMP with TIME ZONE AS $$ SELECT date_trunc('month', $1) + interval '1 month' - interval '1 day'; $$ LANGUAGE SQL IMMUTABLE; /* Dateadd functions for the other OpenIMIS functions*/ --Year -CREATE OR REPLACE FUNCTION DATEADD_YEAR(INTEGER, TIMESTAMP without TIME ZONE) RETURNS TIMESTAMP without TIME ZONE +CREATE OR REPLACE FUNCTION "public".DATEADD_YEAR(INTEGER, TIMESTAMP without TIME ZONE) RETURNS TIMESTAMP without TIME ZONE AS $$ SELECT $2 + ($1 * INTERVAL '1 year'); $$ LANGUAGE SQL IMMUTABLE; -CREATE OR REPLACE FUNCTION DATEADD_YEAR(INTEGER, TIMESTAMP WITH TIME ZONE) RETURNS TIMESTAMP with TIME ZONE +CREATE OR REPLACE FUNCTION "public".DATEADD_YEAR(INTEGER, TIMESTAMP WITH TIME ZONE) RETURNS TIMESTAMP with TIME ZONE AS $$ SELECT $2 + ($1 * INTERVAL '1 year'); $$ LANGUAGE SQL STABLE; -CREATE OR REPLACE FUNCTION DATEADD_YEAR(INTEGER, DATE) RETURNS TIMESTAMP without TIME ZONE +CREATE OR REPLACE FUNCTION "public".DATEADD_YEAR(INTEGER, DATE) RETURNS TIMESTAMP without TIME ZONE AS $$ SELECT $2 + ($1 * INTERVAL '1 year'); $$ LANGUAGE SQL IMMUTABLE; --Month -CREATE OR REPLACE FUNCTION DATEADD_MONTH(INTEGER, TIMESTAMP without TIME ZONE) RETURNS TIMESTAMP without TIME ZONE +CREATE OR REPLACE FUNCTION "public".DATEADD_MONTH(INTEGER, TIMESTAMP without TIME ZONE) RETURNS TIMESTAMP without TIME ZONE AS $$ SELECT $2 + ($1 * INTERVAL '1 month'); $$ LANGUAGE SQL IMMUTABLE; -CREATE OR REPLACE FUNCTION DATEADD_MONTH(INTEGER, TIMESTAMP WITH TIME ZONE) RETURNS TIMESTAMP with TIME ZONE +CREATE OR REPLACE FUNCTION "public".DATEADD_MONTH(INTEGER, TIMESTAMP WITH TIME ZONE) RETURNS TIMESTAMP with TIME ZONE AS $$ SELECT $2 + ($1 * INTERVAL '1 month'); $$ LANGUAGE SQL STABLE; -CREATE OR REPLACE FUNCTION DATEADD_MONTH(INTEGER, DATE) RETURNS TIMESTAMP without TIME ZONE +CREATE OR REPLACE FUNCTION "public".DATEADD_MONTH(INTEGER, DATE) RETURNS TIMESTAMP without TIME ZONE AS $$ SELECT $2 + ($1 * INTERVAL '1 month'); $$ LANGUAGE SQL IMMUTABLE; --DAY -CREATE OR REPLACE FUNCTION DATEADD_DAY(INTEGER, TIMESTAMP without TIME ZONE) RETURNS TIMESTAMP without TIME ZONE +CREATE OR REPLACE FUNCTION "public".DATEADD_DAY(INTEGER, TIMESTAMP without TIME ZONE) RETURNS TIMESTAMP without TIME ZONE AS $$ SELECT $2 + $1 * INTERVAL '1 day'; $$ LANGUAGE SQL IMMUTABLE; -CREATE OR REPLACE FUNCTION DATEADD_DAY(INTEGER, TIMESTAMP WITH TIME ZONE) RETURNS TIMESTAMP with TIME ZONE +CREATE OR REPLACE FUNCTION "public".DATEADD_DAY(INTEGER, TIMESTAMP WITH TIME ZONE) RETURNS TIMESTAMP with TIME ZONE AS $$ SELECT $2 + $1 * INTERVAL '1 day'; $$ LANGUAGE SQL STABLE; -CREATE OR REPLACE FUNCTION DATEADD_DAY(INTEGER, DATE) RETURNS TIMESTAMP without TIME ZONE +CREATE OR REPLACE FUNCTION "public".DATEADD_DAY(INTEGER, DATE) RETURNS TIMESTAMP without TIME ZONE AS $$ SELECT $2 + $1 * INTERVAL '1 day'; $$ LANGUAGE SQL IMMUTABLE;