Skip to content

Commit 7fb5ada

Browse files
authored
Finish release/23.10
Release/23.10
2 parents 9ddda66 + cc84b60 commit 7fb5ada

File tree

9 files changed

+185
-50
lines changed

9 files changed

+185
-50
lines changed
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: Docker Build Check
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
- develop
8+
9+
jobs:
10+
build:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
- name: Checkout repository
15+
uses: actions/checkout@v2
16+
17+
- name: Build Docker image
18+
run: docker build .
19+
20+
- name: Check Docker image build status
21+
run: |
22+
exit_code=$?
23+
if [ $exit_code -ne 0 ]; then
24+
echo "Docker image build failed."
25+
exit 1
26+
else
27+
echo "Docker image build successful."
28+
exit 0
29+
fi

.github/workflows/docker-dev-cd.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: publish develop image
2+
on:
3+
push:
4+
branches:
5+
- develop
6+
7+
jobs:
8+
publish-docker-image:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@v2
12+
- name: Login to GitHub Container Registry
13+
uses: docker/login-action@v1
14+
with:
15+
registry: ghcr.io
16+
username: ${{ github.actor }}
17+
password: ${{ secrets.GITHUB_TOKEN }}
18+
- name: Build the pgsql EMPTY Docker image
19+
run: |
20+
docker build . --tag ghcr.io/openimis/openimis-pgsql:develop-base --target base
21+
docker push ghcr.io/openimis/openimis-pgsql:develop-base
22+
- name: Build the pgsql DEMO Docker image
23+
run: |
24+
docker build . --tag ghcr.io/openimis/openimis-pgsql:develop
25+
docker push ghcr.io/openimis/openimis-pgsql:develop

.github/workflows/docker.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,11 @@ jobs:
1717
registry: ghcr.io
1818
username: ${{ github.actor }}
1919
password: ${{ secrets.GITHUB_TOKEN }}
20-
- name: Build the pgsql Docker image
20+
- name: Build the pgsql EMPTY Docker image
21+
run: |
22+
docker build . --target base --tag ghcr.io/openimis/openimis-pgsql:${{ github.event.inputs.tag }}-base
23+
docker push ghcr.io/openimis/openimis-pgsql:${{ github.event.inputs.tag }}-base
24+
- name: Build the pgsql DEMO Docker image
2125
run: |
2226
docker build . --tag ghcr.io/openimis/openimis-pgsql:${{ github.event.inputs.tag }}
2327
docker push ghcr.io/openimis/openimis-pgsql:${{ github.event.inputs.tag }}

Dockerfile

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,14 @@
1-
FROM postgres:13-alpine
1+
FROM postgres:13-alpine AS base
22

33
# Script to detect whether the database has finished initializing
44
COPY ["true_isready.sh", "/usr/local/bin/"]
5-
COPY ["database scripts/00_dump.sql", "database scripts/0[2345]_*.sql", "database scripts/demo_db.sql", "/docker-entrypoint-initdb.d/"]
5+
COPY ["database scripts/00_dump.sql", "database scripts/0[2345]_*.sql", "database scripts/json_schema_extension.sql", "/docker-entrypoint-initdb.d/"]
6+
7+
# Install https://github.com/gavinwahl/postgres-json-schema/
8+
# extension that allows validation of jsonb fields against jsonschema
9+
COPY ["install_postgres_json_schema_extension.sh", "install_postgres_json_schema_extension.sh"]
10+
RUN chmod u+x install_postgres_json_schema_extension.sh
11+
RUN ./install_postgres_json_schema_extension.sh
12+
13+
FROM base AS demo
14+
COPY ["database scripts/demo_db.sql", "/docker-entrypoint-initdb.d/"]

database scripts/00_dump.sql

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3439,6 +3439,8 @@ CREATE TABLE "public"."tblLanguages" (
34393439
"CountryCode" character varying(10) NULL
34403440
);
34413441

3442+
INSERT INTO "public"."tblLanguages" ("LanguageCode", "LanguageName", "SortOrder") VALUES (N'en', N'English', NULL);
3443+
34423444

34433445
-- ALTER TABLE "public"."tblLanguages" OWNER TO "postgres";
34443446

@@ -3844,7 +3846,7 @@ ALTER SEQUENCE "public"."tblPayer_PayerID_seq" OWNED BY "public"."tblPayer"."Pay
38443846
--
38453847

38463848
CREATE TABLE "public"."tblPayment" (
3847-
"PaymentID" bigint NOT NULL,
3849+
"PaymentID" bigserial NOT NULL,
38483850
"PaymentUUID" "uuid" NOT NULL,
38493851
"ExpectedAmount" numeric(18,2),
38503852
"ReceivedAmount" numeric(18,2),
@@ -3883,7 +3885,7 @@ CREATE TABLE "public"."tblPayment" (
38833885
--
38843886

38853887
CREATE TABLE "public"."tblPaymentDetails" (
3886-
"PaymentDetailsID" bigint NOT NULL,
3888+
"PaymentDetailsID" bigserial NOT NULL,
38873889
"PaymentID" bigint NOT NULL,
38883890
"ProductCode" character varying(8),
38893891
"InsuranceNumber" character varying(12),
@@ -3987,7 +3989,7 @@ CREATE TABLE "public"."tblPolicy" (
39873989
--
39883990

39893991
CREATE TABLE "public"."tblPolicyRenewalDetails" (
3990-
"RenewalDetailID" integer NOT NULL,
3992+
"RenewalDetailID" SERIAL NOT NULL,
39913993
"RenewalID" integer NOT NULL,
39923994
"InsureeID" integer NOT NULL,
39933995
"ValidityFrom" timestamp with time zone NOT NULL,
@@ -4005,7 +4007,7 @@ CREATE TABLE "public"."tblPolicyRenewalDetails" (
40054007
--
40064008

40074009
CREATE TABLE "public"."tblPolicyRenewals" (
4008-
"RenewalID" integer NOT NULL,
4010+
"RenewalID" SERIAL NOT NULL,
40094011
"RenewalPromptDate" "date" NOT NULL,
40104012
"RenewalDate" "date" NOT NULL,
40114013
"NewOfficerID" integer,
@@ -4755,6 +4757,7 @@ CREATE TABLE "public"."tblUsers" (
47554757
"password" "bytea"
47564758
);
47574759

4760+
INSERT INTO "public"."tblUsers" ("UserID", "LanguageID", "LastName", "OtherNames", "Phone", "LoginName", "RoleID", "HFID", "ValidityFrom", "ValidityTo", "LegacyID", "AuditUserID", "password", "DummyPwd", "EmailId", "StoredPassword", "PrivateKey", "PasswordValidity", "IsAssociated", "UserUUID") VALUES (1, N'en', N'Admin', N'Admin', N'', N'Admin', 1023, NULL, CAST(N'2018-03-19T08:54:48.923' AS timestamptz), NULL, NULL, 2, 'x001699E55A06FA79F4CA0D06EF15096C02000000DF691E2CE66AA7ABDF65B3E6210C1C04CAAE1A3B1FEE5E266B5FAF4F7D4E95109C92E3205F0145CC'::bytea, NULL, N'[email protected]', N'59E66831C680C19E8736751D5480A7C3291BD8775DF47C19C4D0361FBC1C3438', N'C1C224B03CD9BC7B6A86D77F5DACE40191766C485CD55DC48CAF9AC873335D6F', NULL, NULL, N'281953c0-1c1a-4cf8-b93c-8e8b33c617c2');
47584761

47594762
-- ALTER TABLE "public"."tblUsers" OWNER TO "postgres";
47604763

database scripts/demo_db.sql

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11

22
set search_path to public;
33

4-
-- tblLanguages
5-
INSERT INTO "tblLanguages" ("LanguageCode", "LanguageName", "SortOrder") VALUES (N'en', N'English', NULL);
4+
-- tblLanguages (en added in empty db)
65
INSERT INTO "tblLanguages" ("LanguageCode", "LanguageName", "SortOrder") VALUES (N'fr', N'Français', NULL);
76

87
-- tblGender
@@ -1842,7 +1841,6 @@ INSERT INTO "tblExtracts" ("ExtractID", "ExtractDirection", "ExtractType", "Extr
18421841
INSERT INTO "tblExtracts" ("ExtractID", "ExtractDirection", "ExtractType", "ExtractSequence", "ExtractDate", "ExtractFileName", "ExtractFolder", "LocationId", "HFID", "AppVersionBackend", "ValidityFrom", "ValidityTo", "LegacyID", "AuditUserID", "RowID", "ExtractUUID") VALUES (7, 0, 1, 3, CAST(N'2019-01-28T08:36:39.410' AS timestamptz), N'ImisData.db3', N'', 17, 0, CAST(1.2 AS Decimal(3, 1)), CAST(N'2019-01-28T08:36:39.410' AS timestamptz), NULL, NULL, 1, 0, N'7ed9f259-c742-41e7-af22-b5d2bc2d4cf5'::uuid);
18431842

18441843
-- tblUsers
1845-
INSERT INTO "tblUsers" ("UserID", "LanguageID", "LastName", "OtherNames", "Phone", "LoginName", "RoleID", "HFID", "ValidityFrom", "ValidityTo", "LegacyID", "AuditUserID", "password", "DummyPwd", "EmailId", "StoredPassword", "PrivateKey", "PasswordValidity", "IsAssociated", "UserUUID") VALUES (1, N'en', N'Admin', N'Admin', N'', N'Admin', 1023, NULL, CAST(N'2018-03-19T08:54:48.923' AS timestamptz), NULL, NULL, 2, 'x001699E55A06FA79F4CA0D06EF15096C02000000DF691E2CE66AA7ABDF65B3E6210C1C04CAAE1A3B1FEE5E266B5FAF4F7D4E95109C92E3205F0145CC'::bytea, NULL, N'[email protected]', N'59E66831C680C19E8736751D5480A7C3291BD8775DF47C19C4D0361FBC1C3438', N'C1C224B03CD9BC7B6A86D77F5DACE40191766C485CD55DC48CAF9AC873335D6F', NULL, NULL, N'281953c0-1c1a-4cf8-b93c-8e8b33c617c2');
18461844
INSERT INTO "tblUsers" ("UserID", "LanguageID", "LastName", "OtherNames", "Phone", "LoginName", "RoleID", "HFID", "ValidityFrom", "ValidityTo", "LegacyID", "AuditUserID", "password", "DummyPwd", "EmailId", "StoredPassword", "PrivateKey", "PasswordValidity", "IsAssociated", "UserUUID") VALUES (2, N'en', N'Srivastava', N'Siddharth', N'', N'siddharth', 1023, 0, CAST(N'2019-05-10T05:13:34.897' AS timestamptz), CAST(N'2019-05-10T05:13:34.897' AS timestamptz), NULL, 1, 'x001699E55A06FA79F4CA0D06EF15096C020000002C9B22886522612FD8687D520E820178EC956FE690415250829FC35042E4C253EDB00622B818C321578B877F24B6BED5'::bytea, NULL, N'[email protected]', N'568BD443C04F9B2BB7EB8089213B868E2865623F140BC25A77239169B24C7C1B', N'7BF4FB3F97CD903A9AF16BA419A1A3947FFA293371E2BCB1B868EE6E4BAF3AEC', NULL, NULL, N'326b5d5c-5630-4b10-bda3-b7334034ad61');
18471845
INSERT INTO "tblUsers" ("UserID", "LanguageID", "LastName", "OtherNames", "Phone", "LoginName", "RoleID", "HFID", "ValidityFrom", "ValidityTo", "LegacyID", "AuditUserID", "password", "DummyPwd", "EmailId", "StoredPassword", "PrivateKey", "PasswordValidity", "IsAssociated", "UserUUID") VALUES (3, N'en', N'Admin', N'Admin', N'', N'Admin', 1023, 0, CAST(N'2017-12-16T14:26:37.710' AS timestamptz), CAST(N'2018-03-19T08:54:48.907' AS timestamptz), 1, 0, 'x001699E55A06FA79F4CA0D06EF15096C01000000AABB2D46EA963BEEBEC2B6A7C0195BEAD56D875BF16D75F92DD047EAE987E4CC'::bytea, NULL, NULL, NULL, NULL, NULL, NULL, N'5bcc1389-a47b-464c-a32a-7a60d9fd1cad');
18481846
INSERT INTO "tblUsers" ("UserID", "LanguageID", "LastName", "OtherNames", "Phone", "LoginName", "RoleID", "HFID", "ValidityFrom", "ValidityTo", "LegacyID", "AuditUserID", "password", "DummyPwd", "EmailId", "StoredPassword", "PrivateKey", "PasswordValidity", "IsAssociated", "UserUUID") VALUES (4, N'en', N'sri', N'sid', N'', N'sidsri', 1, 0, CAST(N'2019-05-10T05:13:38.223' AS timestamptz), CAST(N'2019-05-10T05:13:38.223' AS timestamptz), NULL, 1, 'x001699E55A06FA79F4CA0D06EF15096C02000000D7925623C394F680CF9A1BD06ED155960019C8567100E8A869147E30E6353296FACCD73063C0D08B'::bytea, NULL, N'[email protected]', N'6BA12D6E86F3B6FFBEBECD7E25D156B04B474F707B25B09A822F688B99426F5B', N'D9193C4A617CEE0AAEA870AAEC59FBE9B90A59A16319142CC55FF6FE2A0D6C57', NULL, NULL, N'e3d5ed51-fdf6-4755-a6a2-9d8012abac51');
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
CREATE EXTENSION "postgres-json-schema";
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/bin/bash
2+
apk add --update make
3+
apk add --update git
4+
5+
# Clone the repository
6+
git clone https://github.com/gavinwahl/postgres-json-schema/
7+
8+
apk add libpq-dev
9+
# Move into the directory
10+
cd postgres-json-schema
11+
12+
# Build the extension
13+
make & make install
14+
15+
16+
apk add postgresql-client
17+
18+
/bin/mkdir -p '/usr/local/share/postgresql/extension'
19+
20+
chmod 666 /usr/local/share/postgresql/extension/postgres-json-schema.control

0 commit comments

Comments
 (0)