From fa513c13b7896d43e4b142b0d814092398d680ef Mon Sep 17 00:00:00 2001 From: superengine Date: Wed, 23 Apr 2025 19:30:57 +0000 Subject: [PATCH] Initial commit --- LICENSE.txt | 9 ++++++ NOTICE.txt | 4 +++ README.md | 19 +++++++++++++ compose.yaml.hbs | 17 ++++++++++++ manifest.json | 72 ++++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 121 insertions(+) create mode 100644 LICENSE.txt create mode 100644 NOTICE.txt create mode 100644 README.md create mode 100644 compose.yaml.hbs create mode 100644 manifest.json diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000..55a3556 --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,9 @@ +This software is licensed under the Software License Agreement for Ports available at the URI bellow: +https://www.superengine.tech/legal/software-license-agreement-for-ports +If, for any reason, the URI provided in this file to the Software License Agreement for Ports does not redirect to the website of the copyright owner of this software, and, to the correct page on this website, you may not use this software. + +This license does not apply to the files not under Superengine copyright as detailed in the NOTICE.txt file. + +This software uses the following third-party software: +- the postgresql image with the tag 17.4 from Docker Hub +Third-party software have a different copyright owner and license. \ No newline at end of file diff --git a/NOTICE.txt b/NOTICE.txt new file mode 100644 index 0000000..4398dae --- /dev/null +++ b/NOTICE.txt @@ -0,0 +1,4 @@ +Copyright 2025 Superengine, except for the following files: +- picture.png + +Postgres, PostgreSQL and the Slonik Logo are trademarks or registered trademarks of the PostgreSQL Community Association of Canada, and used with their permission. \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..971b398 --- /dev/null +++ b/README.md @@ -0,0 +1,19 @@ +# PostgreSQL Port for Superengine + +This port uses the `postgresql` image which is the ["official" PostgreSQL Docker image](https://hub.docker.com/_/postgres/) with the tag `17.4`. The port may be updated to use a newer tag in the future. + +## Installation + +Open Superengine, click `Install app` and enter the following app installation code: `04Pb1YE1w0MwXv6efxfCiuZmC6HuHzIlTdKQnCxIkYSsjKolcvm8fWkN0FoquGD9gXDGHod8AW42H7aXFZLu4` + +## Configuration + +The database name, user and password for Postgres are randomly generated by Superengine. The port number is static and provided by Superengine. The values for these configuration settings are displayed in the application page in Superengine. + +## Data + +Data is saved in the application data folder. + +## Copyright and License + +See the NOTICE.txt file for copyright information and the LICENSE.txt file for information about the license. \ No newline at end of file diff --git a/compose.yaml.hbs b/compose.yaml.hbs new file mode 100644 index 0000000..427eb43 --- /dev/null +++ b/compose.yaml.hbs @@ -0,0 +1,17 @@ +services: + {{app_id}}-postgresql: + image: postgres:17.4 + restart: always + environment: + POSTGRES_USER: {{entitlements.db-user}} + POSTGRES_PASSWORD: {{entitlements.db-password}} + POSTGRES_DB: {{entitlements.db-name}} + volumes: + - {{entitlements.folder-path}}:/var/lib/postgresql/data + ports: + - {{entitlements.port-number}}:5432 + {{#unless (eq entitlements.os "windows")}} + user: {{entitlements.uid}}:{{entitlements.gid}} + {{/unless}} + logging: + driver: local diff --git a/manifest.json b/manifest.json new file mode 100644 index 0000000..d24cbc7 --- /dev/null +++ b/manifest.json @@ -0,0 +1,72 @@ +{ + "app-spec-version": "1.1", + "subject": { + "name": { + "en": "PostgreSQL" + }, + "version": "17.4-5" + }, + "entitlements": [ + { + "type": "RandomAlphanumericString30Characters", + "name": "db-user", + "description": { + "en": "Name of the database user." + } + }, + { + "type": "RandomAlphanumericString30Characters", + "name": "db-password", + "description": { + "en": "Password of the database user." + } + }, + { + "type": "RandomAlphanumericString30Characters", + "name": "db-name", + "description": { + "en": "Database name." + } + }, + { + "type": "ApplicationDataDirectoryPath", + "name": "folder-path", + "description": { + "en": "Folder used by the database to store data." + } + }, + { + "type": "PortUnspecifiedStaticNumber", + "name": "port-number", + "description": { + "en": "Number of the port used by the database." + } + }, + { + "type": "OperatingSystem", + "name": "os", + "description": { + "en": "Operating system." + } + }, + { + "type": "IDUserNumber", + "name": "uid", + "description": { + "en": "User ID number." + } + }, + { + "type": "IDGroupNumber", + "name": "gid", + "description": { + "en": "Group ID number." + } + } + ], + "templates": [ + "compose.yaml.hbs", + "embedded_ui/overview.html.hbs" + ], + "actions": [] +}