mirror of
https://github.com/umami-software/umami.git
synced 2026-02-06 21:57:16 +01:00
feat: add platformsh config
This commit is contained in:
parent
b006747a45
commit
f4025098e9
4 changed files with 102 additions and 0 deletions
30
.environment
Normal file
30
.environment
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
#!/bin/bash
|
||||
# This script can be a starting point to convert
|
||||
# PLATFORM_RELATIONSHIPS into another environment variable
|
||||
# Many CMS systems use a DATABASE_URL to connect to the database
|
||||
# Feel free to use this as inspiration
|
||||
|
||||
getRelationshipInfo() {
|
||||
RELATIONSHIP_NAME="$1"
|
||||
PROPERTY="$2"
|
||||
JQ_STR="to_entries[] | select(.key==\"$RELATIONSHIP_NAME\") | .value[].$PROPERTY"
|
||||
CMD="echo $PLATFORM_RELATIONSHIPS | base64 -d | jq -r '$JQ_STR'"
|
||||
eval $CMD
|
||||
}
|
||||
|
||||
# choose the name of the relationship to parse, feel free to alter this
|
||||
RELATIONSHIP="postgresdatabase"
|
||||
DB_DATABASE="main"
|
||||
|
||||
# Extract the information we need
|
||||
DB_TYPE=$(getRelationshipInfo "$RELATIONSHIP" 'scheme')
|
||||
DB_USERNAME=$(getRelationshipInfo "$RELATIONSHIP" 'username')
|
||||
DB_HOST=$(getRelationshipInfo "$RELATIONSHIP" 'host')
|
||||
DB_PASS=$(getRelationshipInfo "$RELATIONSHIP" 'password')
|
||||
DB_PORT=$(getRelationshipInfo "$RELATIONSHIP" 'port')
|
||||
|
||||
# Create your DATABASE_URL variable here
|
||||
export DATABASE_URL="postgresql://$DB_USERNAME:$DB_PASS@$DB_HOST:$DB_PORT/$DB_DATABASE"
|
||||
|
||||
# So now we have postgresql://user:@db_mysql.internal:3306/main
|
||||
# echo "$DATABASE_URL" #only echo to test since it will expose the credentials
|
||||
55
.platform.app.yaml
Normal file
55
.platform.app.yaml
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
# The name of this app. Must be unique within a project.
|
||||
name: app
|
||||
|
||||
# The runtime the application uses. The 'type' key defines the base container
|
||||
# image that will be used to run the application. There is a separate base
|
||||
# container image for each primary language for the application,
|
||||
# in multiple versions. Check the JavaScript/Node.js documentation
|
||||
# (https://docs.platform.sh/languages/nodejs.html#supported-versions)
|
||||
# to find the supported versions for the 'nodejs' type.
|
||||
type: 'nodejs:18'
|
||||
|
||||
dependencies:
|
||||
nodejs:
|
||||
yarn: '*'
|
||||
|
||||
build:
|
||||
flavor: none
|
||||
|
||||
hooks:
|
||||
build: |
|
||||
set -e
|
||||
yarn install
|
||||
yarn build
|
||||
deploy: |
|
||||
set -e
|
||||
yarn update-db
|
||||
|
||||
# The following block defines a single writable directory, 'web/uploads'
|
||||
# The 'source' specifies where the writable mount is. The 'local' source
|
||||
# indicates that the mount point will point to a local directory on the
|
||||
# application container. The 'source_path' specifies the subdirectory
|
||||
# from within the source that the mount should point at.
|
||||
mounts:
|
||||
'web/uploads':
|
||||
source: local
|
||||
source_path: uploads
|
||||
|
||||
# The size of the persistent disk of the application (in MB).
|
||||
disk: 2048
|
||||
|
||||
resources:
|
||||
base_memory: 256
|
||||
memory_ratio: 128
|
||||
|
||||
# The relationships of the application with services or other applications.
|
||||
#
|
||||
# The left-hand side is the name of the relationship as it will be exposed
|
||||
# to the application in the PLATFORM_RELATIONSHIPS variable. The right-hand
|
||||
# side is in the form '<service name>:<endpoint name>'.
|
||||
relationships:
|
||||
postgresdatabase: 'dbpostgres:postgresql'
|
||||
|
||||
web:
|
||||
commands:
|
||||
start: 'yarn start'
|
||||
7
.platform/routes.yaml
Normal file
7
.platform/routes.yaml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
"https://{default}/":
|
||||
type: upstream
|
||||
upstream: "app:http"
|
||||
|
||||
"https://www.{default}/":
|
||||
type: redirect
|
||||
to: "https://{default}/"
|
||||
10
.platform/services.yaml
Normal file
10
.platform/services.yaml
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
# The name given to the PostgreSQL service (lowercase alphanumeric only).
|
||||
dbpostgres:
|
||||
# The type of your service (postgresql), which uses the format
|
||||
# 'type:version'. Be sure to consult the PostgreSQL documentation
|
||||
# (https://docs.platform.sh/add-services/postgresql.html#supported-versions)
|
||||
# when choosing a version. If you specify a version number which is not available,
|
||||
# the CLI will return an error.
|
||||
type: postgresql:15
|
||||
# The disk attribute is the size of the persistent disk (in MB) allocated to the service.
|
||||
disk: 2048
|
||||
Loading…
Add table
Add a link
Reference in a new issue