Docker Compose refactoring
This commit is contained in:
parent
7a2a667aaf
commit
a53a26f4c0
36 changed files with 411 additions and 524 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -15,7 +15,6 @@ npm-debug.log*
|
|||
.idea/
|
||||
*.szpm
|
||||
.env*
|
||||
yarn-error.log
|
||||
docker-compose.yml
|
||||
coverage
|
||||
.pgpass
|
||||
|
|
|
|||
8
Makefile
8
Makefile
|
|
@ -63,19 +63,19 @@ create-admin-user:
|
|||
@test -f .env || echo "You must create .env please refer to the README" && exit 1
|
||||
|
||||
start: .env
|
||||
CURRENT_UID=$(CURRENT_UID) docker-compose up -d
|
||||
CURRENT_UID=$(CURRENT_UID) docker compose -f docker-compose.link.yml up -d
|
||||
|
||||
start-dev: .env
|
||||
CURRENT_UID=$(CURRENT_UID) docker-compose up --build -d
|
||||
CURRENT_UID=$(CURRENT_UID) docker compose up --build -d
|
||||
|
||||
restart: .env
|
||||
CURRENT_UID=$(CURRENT_UID) docker restart $(shell docker ps -a -q)
|
||||
|
||||
stop:
|
||||
CURRENT_UID=$(CURRENT_UID) docker-compose down
|
||||
CURRENT_UID=$(CURRENT_UID) docker compose down
|
||||
|
||||
destroy:
|
||||
docker-compose down
|
||||
docker compose down
|
||||
docker volume prune
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -9,6 +9,5 @@
|
|||
**/coverage
|
||||
**/.next
|
||||
**/amigo.*.json
|
||||
**/.yalc
|
||||
**/cypress/videos
|
||||
**/cypress/screenshots
|
||||
|
|
|
|||
2
apps/leafcutter/.gitignore
vendored
2
apps/leafcutter/.gitignore
vendored
|
|
@ -21,8 +21,6 @@
|
|||
|
||||
# debug
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
|
||||
# local env files
|
||||
.env.local
|
||||
|
|
|
|||
|
|
@ -6,8 +6,6 @@ First, run the development server:
|
|||
|
||||
```bash
|
||||
npm run dev
|
||||
# or
|
||||
yarn dev
|
||||
```
|
||||
|
||||
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
|
||||
|
|
|
|||
|
|
@ -6,8 +6,6 @@ First, run the development server:
|
|||
|
||||
```bash
|
||||
npm run dev
|
||||
# or
|
||||
yarn dev
|
||||
```
|
||||
|
||||
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
|
||||
|
|
|
|||
|
|
@ -35,7 +35,8 @@ const checkRewrites = async (request: NextRequestWithAuth) => {
|
|||
const metamigoURL = process.env.METAMIGO_URL ?? "http://metamigo:3000";
|
||||
|
||||
if (request.nextUrl.pathname.startsWith('/proxy/leafcutter')) {
|
||||
return rewriteURL(request, linkBaseURL, leafcutterURL);
|
||||
const headers = { 'X-Leafcutter-Embedded': "true" };
|
||||
return rewriteURL(request, linkBaseURL, leafcutterURL, headers);
|
||||
} else if (request.nextUrl.pathname.startsWith('/proxy/metamigo')) {
|
||||
return rewriteURL(request, linkBaseURL, metamigoURL);
|
||||
} else if (request.nextUrl.pathname.startsWith('/proxy/zammad')) {
|
||||
|
|
|
|||
|
|
@ -9,6 +9,5 @@
|
|||
**/coverage
|
||||
**/.next
|
||||
**/amigo.*.json
|
||||
**/.yalc
|
||||
**/cypress/videos
|
||||
**/cypress/screenshots
|
||||
|
|
|
|||
|
|
@ -9,6 +9,5 @@
|
|||
**/coverage
|
||||
**/.next
|
||||
**/amigo.*.json
|
||||
**/.yalc
|
||||
**/cypress/videos
|
||||
**/cypress/screenshots
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ module.exports = {
|
|||
"eslint-config-link/profile/node",
|
||||
"eslint-config-link/profile/typescript",
|
||||
"eslint-config-link/profile/jest",
|
||||
"eslint-config-next",
|
||||
"next",
|
||||
],
|
||||
parserOptions: { tsconfigRootDir: __dirname },
|
||||
};
|
||||
|
|
|
|||
|
|
@ -9,6 +9,5 @@
|
|||
**/coverage
|
||||
**/.next
|
||||
**/amigo.*.json
|
||||
**/.yalc
|
||||
**/cypress/videos
|
||||
**/cypress/screenshots
|
||||
|
|
|
|||
20
docker-compose.leafcutter.yml
Normal file
20
docker-compose.leafcutter.yml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
version: "3.4"
|
||||
|
||||
services:
|
||||
leafcutter:
|
||||
container_name: leafcutter
|
||||
restart: ${RESTART}
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./apps/leafcutter/Dockerfile
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/leafcutter:${LINK_STACK_VERSION}
|
||||
expose:
|
||||
- "3000"
|
||||
ports:
|
||||
- "8005:3000"
|
||||
environment:
|
||||
NEXTAUTH_URL: ${LINK_URL}
|
||||
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
|
||||
NEXTAUTH_AUDIENCE: ${NEXTAUTH_AUDIENCE}
|
||||
NEXTAUTH_SIGNING_KEY_B64: ${NEXTAUTH_SIGNING_KEY_B64}
|
||||
NEXTAUTH_ENCRYPTION_KEY_B64: ${NEXTAUTH_ENCRYPTION_KEY_B64}
|
||||
29
docker-compose.link.yml
Normal file
29
docker-compose.link.yml
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
version: "3.4"
|
||||
|
||||
services:
|
||||
link:
|
||||
container_name: link
|
||||
restart: ${RESTART}
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./apps/link/Dockerfile
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/link:${LINK_STACK_VERSION}
|
||||
expose:
|
||||
- "3000"
|
||||
ports:
|
||||
- "8004:3000"
|
||||
environment:
|
||||
ZAMMAD_PROXY_URL: ${ZAMMAD_PROXY_URL}
|
||||
ZAMMAD_API_TOKEN: ${ZAMMAD_API_TOKEN}
|
||||
ZAMMAD_VIRUAL_HOST: ${ZAMMAD_VIRTUAL_HOST}
|
||||
LINK_URL: ${LINK_URL}
|
||||
LEAFCUTTER_URL: http://leafcutter:3000
|
||||
METAMIGO_URL: http://metamigo-frontend:3000
|
||||
ZAMMAD_URL: http://localhost:8001
|
||||
NEXTAUTH_URL: ${LINK_URL}
|
||||
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
|
||||
NEXTAUTH_AUDIENCE: ${NEXTAUTH_AUDIENCE}
|
||||
NEXTAUTH_SIGNING_KEY_B64: ${NEXTAUTH_SIGNING_KEY_B64}
|
||||
NEXTAUTH_ENCRYPTION_KEY_B64: ${NEXTAUTH_ENCRYPTION_KEY_B64}
|
||||
GOOGLE_CLIENT_ID: ${GOOGLE_CLIENT_ID}
|
||||
GOOGLE_CLIENT_SECRET: ${GOOGLE_CLIENT_SECRET}
|
||||
53
docker-compose.metamigo-postgresql.yml
Normal file
53
docker-compose.metamigo-postgresql.yml
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
version: "3.4"
|
||||
|
||||
x-metamigo-vars:
|
||||
&common-metamigo-variables
|
||||
DATABASE_HOST: "metamigo-postgresql"
|
||||
DATABASE_NAME: "metamigo"
|
||||
DATABASE_ROOT_OWNER: "root"
|
||||
DATABASE_ROOT_PASSWORD: ${METAMIGO_DATABASE_ROOT_PASSWORD}
|
||||
DATABASE_OWNER: "metamigo"
|
||||
DATABASE_PASSWORD: ${METAMIGO_DATABASE_PASSWORD}
|
||||
DATABASE_VISITOR: "app_visitor"
|
||||
DATABASE_AUTHENTICATOR: "app_graphile_auth"
|
||||
DATABASE_AUTHENTICATOR_PASSWORD: ${METAMIGO_DATABASE_AUTHENTICATOR_PASSWORD}
|
||||
DATABASE_URL: "postgresql://metamigo:${METAMIGO_DATABASE_PASSWORD}@metamigo-postgresql/metamigo"
|
||||
WORKER_DATABASE_URL: "postgresql://metamigo:${METAMIGO_DATABASE_PASSWORD}@metamigo-postgresql/metamigo"
|
||||
SHADOW_DATABASE_URL: "postgresql://metamigo:${METAMIGO_DATABASE_PASSWORD}@metamigo-postgresql/metamigo_shadow"
|
||||
ROOT_DATABASE_URL: "postgresql://metamigo:${METAMIGO_DATABASE_PASSWORD}@metamigo-postgresql/template1"
|
||||
APP_ROOT_DATABASE_URL: "postgresql://root:${METAMIGO_DATABASE_ROOT_PASSWORD}@metamigo-postgresql/metamigo"
|
||||
DATABASE_AUTH_URL: "postgresql://app_graphile_auth:${METAMIGO_DATABASE_AUTHENTICATOR_PASSWORD}@metamigo-postgresql/metamigo"
|
||||
CORS_ALLOWED_ORIGINS: "https://metamigo-api,${METAMIGO_DOMAIN},http://localhost:3000,http://127.0.0.1:3000"
|
||||
FRONTEND_URL: ${METAMIGO_DOMAIN}
|
||||
API_URL: "http://metamigo-api:3001"
|
||||
NEXTAUTH_URL: ${METAMIGO_DOMAIN}
|
||||
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
|
||||
NEXTAUTH_AUDIENCE: ${NEXTAUTH_AUDIENCE}
|
||||
NEXTAUTH_SIGNING_KEY_B64: ${NEXTAUTH_SIGNING_KEY_B64}
|
||||
NEXTAUTH_ENCRYPTION_KEY_B64: ${NEXTAUTH_ENCRYPTION_KEY_B64}
|
||||
GITLAB_EMAIL_ADDRESS: ${GITLAB_EMAIL_ADDRESS}
|
||||
GITLAB_ID: ${GITLAB_ID}
|
||||
GITLAB_SECRET: ${GITLAB_SECRET}
|
||||
SIGNALD_ENABLED: "true"
|
||||
SIGNALD_SOCKET: /signald/signald.sock
|
||||
|
||||
services:
|
||||
metamigo-postgresql:
|
||||
build: ./docker/postgresql
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/postgresql:${LINK_STACK_VERSION}
|
||||
container_name: metamigo-postgresql
|
||||
restart: ${RESTART}
|
||||
volumes:
|
||||
- metamigo-data:/var/lib/postgresql/data
|
||||
- ./scripts/bootstrap-metamigo.sh:/docker-entrypoint-initdb.d/bootstrap-metamigo.sh
|
||||
environment:
|
||||
<<: *common-metamigo-variables
|
||||
POSTGRES_PASSWORD: ${METAMIGO_DATABASE_ROOT_PASSWORD}
|
||||
POSTGRES_USER: "root"
|
||||
POSTGRES_DB: "metamigo"
|
||||
ports:
|
||||
- 127.0.0.1:5433:5432
|
||||
|
||||
volumes:
|
||||
metamigo-data:
|
||||
driver: local
|
||||
96
docker-compose.metamigo.yml
Normal file
96
docker-compose.metamigo.yml
Normal file
|
|
@ -0,0 +1,96 @@
|
|||
version: "3.4"
|
||||
|
||||
x-global-vars:
|
||||
&common-global-variables
|
||||
TZ: Etc/UTC
|
||||
|
||||
x-metamigo-vars:
|
||||
&common-metamigo-variables
|
||||
DATABASE_HOST: "metamigo-postgresql"
|
||||
DATABASE_NAME: "metamigo"
|
||||
DATABASE_ROOT_OWNER: "root"
|
||||
DATABASE_ROOT_PASSWORD: ${METAMIGO_DATABASE_ROOT_PASSWORD}
|
||||
DATABASE_OWNER: "metamigo"
|
||||
DATABASE_PASSWORD: ${METAMIGO_DATABASE_PASSWORD}
|
||||
DATABASE_VISITOR: "app_visitor"
|
||||
DATABASE_AUTHENTICATOR: "app_graphile_auth"
|
||||
DATABASE_AUTHENTICATOR_PASSWORD: ${METAMIGO_DATABASE_AUTHENTICATOR_PASSWORD}
|
||||
DATABASE_URL: "postgresql://metamigo:${METAMIGO_DATABASE_PASSWORD}@metamigo-postgresql/metamigo"
|
||||
WORKER_DATABASE_URL: "postgresql://metamigo:${METAMIGO_DATABASE_PASSWORD}@metamigo-postgresql/metamigo"
|
||||
SHADOW_DATABASE_URL: "postgresql://metamigo:${METAMIGO_DATABASE_PASSWORD}@metamigo-postgresql/metamigo_shadow"
|
||||
ROOT_DATABASE_URL: "postgresql://metamigo:${METAMIGO_DATABASE_PASSWORD}@metamigo-postgresql/template1"
|
||||
APP_ROOT_DATABASE_URL: "postgresql://root:${METAMIGO_DATABASE_ROOT_PASSWORD}@metamigo-postgresql/metamigo"
|
||||
DATABASE_AUTH_URL: "postgresql://app_graphile_auth:${METAMIGO_DATABASE_AUTHENTICATOR_PASSWORD}@metamigo-postgresql/metamigo"
|
||||
CORS_ALLOWED_ORIGINS: "https://metamigo-api,${METAMIGO_DOMAIN},http://localhost:3000,http://127.0.0.1:3000"
|
||||
FRONTEND_URL: ${METAMIGO_DOMAIN}
|
||||
API_URL: "http://metamigo-api:3001"
|
||||
NEXTAUTH_URL: ${METAMIGO_DOMAIN}
|
||||
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
|
||||
NEXTAUTH_AUDIENCE: ${NEXTAUTH_AUDIENCE}
|
||||
NEXTAUTH_SIGNING_KEY_B64: ${NEXTAUTH_SIGNING_KEY_B64}
|
||||
NEXTAUTH_ENCRYPTION_KEY_B64: ${NEXTAUTH_ENCRYPTION_KEY_B64}
|
||||
GITLAB_EMAIL_ADDRESS: ${GITLAB_EMAIL_ADDRESS}
|
||||
GITLAB_ID: ${GITLAB_ID}
|
||||
GITLAB_SECRET: ${GITLAB_SECRET}
|
||||
SIGNALD_ENABLED: "true"
|
||||
SIGNALD_SOCKET: /signald/signald.sock
|
||||
|
||||
services:
|
||||
metamigo-api:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./apps/metamigo-cli/Dockerfile
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/metamigo:${LINK_STACK_VERSION}
|
||||
container_name: metamigo-api
|
||||
restart: ${RESTART}
|
||||
command: [ "api" ]
|
||||
ports:
|
||||
- 127.0.0.1:8003:3001
|
||||
environment: *common-metamigo-variables
|
||||
volumes:
|
||||
- ./signald-state:/signald
|
||||
depends_on:
|
||||
- metamigo-postgresql
|
||||
- signald
|
||||
|
||||
metamigo-frontend:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./apps/metamigo-frontend/Dockerfile
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/metamigo-frontend:${LINK_STACK_VERSION}
|
||||
container_name: metamigo-frontend
|
||||
restart: ${RESTART}
|
||||
expose:
|
||||
- "3000"
|
||||
ports:
|
||||
- 127.0.0.1:8002:3000
|
||||
depends_on:
|
||||
- metamigo-api
|
||||
environment:
|
||||
<<: *common-metamigo-variables
|
||||
VIRTUAL_HOST: ${METAMIGO_VIRTUAL_HOST}
|
||||
VIRTUAL_PORT: 3000
|
||||
|
||||
metamigo-worker:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./apps/metamigo-cli/Dockerfile
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/metamigo:${LINK_STACK_VERSION}
|
||||
container_name: metamigo-worker
|
||||
restart: ${RESTART}
|
||||
command: [ "worker" ]
|
||||
environment: *common-metamigo-variables
|
||||
depends_on:
|
||||
- metamigo-api
|
||||
|
||||
signald:
|
||||
container_name: signald
|
||||
build: ./docker/signald
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/signald:${LINK_STACK_VERSION}
|
||||
restart: ${RESTART}
|
||||
user: ${CURRENT_UID}
|
||||
volumes:
|
||||
- ./signald-state:/signald
|
||||
environment:
|
||||
<<: *common-global-variables
|
||||
|
||||
11
docker-compose.nginx-proxy.yml
Normal file
11
docker-compose.nginx-proxy.yml
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
version: "3.4"
|
||||
|
||||
services:
|
||||
nginx-proxy:
|
||||
container_name: nginx-proxy
|
||||
build: ./docker/nginx-proxy
|
||||
restart: ${RESTART}
|
||||
ports:
|
||||
- "8080:80"
|
||||
volumes:
|
||||
- /var/run/docker.sock:/tmp/docker.sock:ro
|
||||
18
docker-compose.opensearch.yml
Normal file
18
docker-compose.opensearch.yml
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
version: "3.4"
|
||||
|
||||
services:
|
||||
opensearch:
|
||||
container_name: opensearch
|
||||
build: ./docker/opensearch
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/opensearch:${LINK_STACK_VERSION}
|
||||
restart: ${RESTART}
|
||||
|
||||
opensearch-dashboards:
|
||||
container_name: opensearch-dashboards
|
||||
build: ./docker/opensearch-dashboards
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/opensearch-dashboards:${LINK_STACK_VERSION}
|
||||
restart: ${RESTART}
|
||||
|
||||
volumes:
|
||||
opensearch-data:
|
||||
driver: local
|
||||
|
|
@ -1,323 +0,0 @@
|
|||
version: "3.4"
|
||||
|
||||
x-global-vars:
|
||||
&common-global-variables
|
||||
TZ: Etc/UTC
|
||||
|
||||
x-zammad-vars:
|
||||
&common-zammad-variables
|
||||
MEMCACHE_SERVERS: "zammad-memcached:11211"
|
||||
REDIS_URL: "redis://zammad-redis:6379"
|
||||
ENABLE_EXPERIMENTAL_MOBILE_FRONTEND: "true"
|
||||
|
||||
x-metamigo-vars:
|
||||
&common-metamigo-variables
|
||||
DATABASE_HOST: "metamigo-postgresql"
|
||||
DATABASE_NAME: "metamigo"
|
||||
DATABASE_ROOT_OWNER: "root"
|
||||
DATABASE_ROOT_PASSWORD: ${METAMIGO_DATABASE_ROOT_PASSWORD}
|
||||
DATABASE_OWNER: "metamigo"
|
||||
DATABASE_PASSWORD: ${METAMIGO_DATABASE_PASSWORD}
|
||||
DATABASE_VISITOR: "app_visitor"
|
||||
DATABASE_AUTHENTICATOR: "app_graphile_auth"
|
||||
DATABASE_AUTHENTICATOR_PASSWORD: ${METAMIGO_DATABASE_AUTHENTICATOR_PASSWORD}
|
||||
DATABASE_URL: "postgresql://metamigo:${METAMIGO_DATABASE_PASSWORD}@metamigo-postgresql/metamigo"
|
||||
WORKER_DATABASE_URL: "postgresql://metamigo:${METAMIGO_DATABASE_PASSWORD}@metamigo-postgresql/metamigo"
|
||||
SHADOW_DATABASE_URL: "postgresql://metamigo:${METAMIGO_DATABASE_PASSWORD}@metamigo-postgresql/metamigo_shadow"
|
||||
ROOT_DATABASE_URL: "postgresql://metamigo:${METAMIGO_DATABASE_PASSWORD}@metamigo-postgresql/template1"
|
||||
APP_ROOT_DATABASE_URL: "postgresql://root:${METAMIGO_DATABASE_ROOT_PASSWORD}@metamigo-postgresql/metamigo"
|
||||
DATABASE_AUTH_URL: "postgresql://app_graphile_auth:${METAMIGO_DATABASE_AUTHENTICATOR_PASSWORD}@metamigo-postgresql/metamigo"
|
||||
CORS_ALLOWED_ORIGINS: "https://metamigo-api,${METAMIGO_DOMAIN},http://localhost:3000,http://127.0.0.1:3000"
|
||||
FRONTEND_URL: ${METAMIGO_DOMAIN}
|
||||
API_URL: "http://metamigo-api:3001"
|
||||
NEXTAUTH_URL: ${METAMIGO_DOMAIN}
|
||||
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
|
||||
NEXTAUTH_AUDIENCE: ${NEXTAUTH_AUDIENCE}
|
||||
NEXTAUTH_SIGNING_KEY_B64: ${NEXTAUTH_SIGNING_KEY_B64}
|
||||
NEXTAUTH_ENCRYPTION_KEY_B64: ${NEXTAUTH_ENCRYPTION_KEY_B64}
|
||||
GITLAB_EMAIL_ADDRESS: ${GITLAB_EMAIL_ADDRESS}
|
||||
GITLAB_ID: ${GITLAB_ID}
|
||||
GITLAB_SECRET: ${GITLAB_SECRET}
|
||||
SIGNALD_ENABLED: "true"
|
||||
SIGNALD_SOCKET: /signald/signald.sock
|
||||
|
||||
services:
|
||||
zammad-elasticsearch:
|
||||
container_name: zammad-elasticsearch
|
||||
environment:
|
||||
discovery.type: single-node
|
||||
ES_JAVA_OPTS: -Xms750m -Xmx750m
|
||||
xpack.security.enabled: false
|
||||
<<: *common-global-variables
|
||||
build: ./docker/elasticsearch
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad-elasticsearch
|
||||
restart: ${RESTART}
|
||||
volumes:
|
||||
- elasticsearch-data:/usr/share/elasticsearch/data
|
||||
|
||||
zammad-init:
|
||||
platform: linux/x86_64
|
||||
container_name: zammad-init
|
||||
command: [ "zammad-init" ]
|
||||
depends_on:
|
||||
- zammad-postgresql
|
||||
environment:
|
||||
<<: [ *common-zammad-variables, *common-global-variables ]
|
||||
POSTGRESQL_USER: zammad
|
||||
POSTGRESQL_PASS: ${ZAMMAD_DATABASE_PASSWORD}
|
||||
build: ./docker/zammad
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad
|
||||
restart: on-failure
|
||||
volumes:
|
||||
- zammad-data:/opt/zammad
|
||||
|
||||
zammad-memcached:
|
||||
container_name: zammad-memcached
|
||||
command: memcached -m 256M
|
||||
build: ./docker/memcached
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad-memcached
|
||||
restart: ${RESTART}
|
||||
environment:
|
||||
<<: *common-global-variables
|
||||
|
||||
zammad-nginx:
|
||||
platform: linux/x86_64
|
||||
container_name: zammad-nginx
|
||||
command: [ "zammad-nginx" ]
|
||||
expose:
|
||||
- "8080"
|
||||
ports:
|
||||
- 127.0.0.1:8001:8080
|
||||
depends_on:
|
||||
- zammad-railsserver
|
||||
build: ./docker/zammad
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad
|
||||
restart: ${RESTART}
|
||||
environment:
|
||||
<<: *common-global-variables
|
||||
NGINX_SERVER_SCHEME: https
|
||||
VIRTUAL_HOST: ${ZAMMAD_VIRTUAL_HOST}
|
||||
VIRTUAL_PORT: 8080
|
||||
volumes:
|
||||
- zammad-data:/opt/zammad
|
||||
|
||||
zammad-postgresql:
|
||||
container_name: zammad-postgresql
|
||||
environment:
|
||||
<<: *common-global-variables
|
||||
POSTGRES_USER: zammad
|
||||
POSTGRES_PASSWORD: ${ZAMMAD_DATABASE_PASSWORD}
|
||||
build: ./docker/postgresql
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/postgresql
|
||||
restart: ${RESTART}
|
||||
ports:
|
||||
- 127.0.0.1:5432:5432
|
||||
volumes:
|
||||
- postgresql-data:/var/lib/postgresql/data
|
||||
|
||||
zammad-railsserver:
|
||||
platform: linux/x86_64
|
||||
container_name: zammad-railsserver
|
||||
command: [ "zammad-railsserver" ]
|
||||
depends_on:
|
||||
- zammad-memcached
|
||||
- zammad-postgresql
|
||||
- zammad-redis
|
||||
environment:
|
||||
<<: [ *common-global-variables, *common-zammad-variables ]
|
||||
build: ./docker/zammad
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad
|
||||
restart: ${RESTART}
|
||||
volumes:
|
||||
- zammad-data:/opt/zammad
|
||||
|
||||
zammad-redis:
|
||||
container_name: zammad-redis
|
||||
build: ./docker/redis
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad-redis
|
||||
restart: ${RESTART}
|
||||
environment:
|
||||
<<: *common-global-variables
|
||||
|
||||
zammad-scheduler:
|
||||
platform: linux/x86_64
|
||||
container_name: zammad-scheduler
|
||||
command: [ "zammad-scheduler" ]
|
||||
depends_on:
|
||||
- zammad-memcached
|
||||
- zammad-railsserver
|
||||
- zammad-redis
|
||||
environment:
|
||||
<<: [ *common-global-variables, *common-zammad-variables ]
|
||||
build: ./docker/zammad
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad
|
||||
restart: ${RESTART}
|
||||
volumes:
|
||||
- zammad-data:/opt/zammad
|
||||
|
||||
zammad-websocket:
|
||||
platform: linux/x86_64
|
||||
container_name: zammad-websocket
|
||||
command: [ "zammad-websocket" ]
|
||||
depends_on:
|
||||
- zammad-memcached
|
||||
- zammad-railsserver
|
||||
- zammad-redis
|
||||
environment:
|
||||
<<: [ *common-global-variables, *common-zammad-variables ]
|
||||
build: ./docker/zammad
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad
|
||||
restart: ${RESTART}
|
||||
volumes:
|
||||
- zammad-data:/opt/zammad
|
||||
|
||||
opensearch:
|
||||
container_name: opensearch
|
||||
build: ./docker/opensearch
|
||||
restart: ${RESTART}
|
||||
volumes:
|
||||
- opensearch-data:/usr/share/opensearch/data
|
||||
|
||||
opensearch-dashboards:
|
||||
container_name: opensearch-dashboards
|
||||
build: ./docker/opensearch-dashboards
|
||||
restart: ${RESTART}
|
||||
|
||||
metamigo-postgresql:
|
||||
build: ./docker/postgresql
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/postgresql
|
||||
container_name: metamigo-postgresql
|
||||
restart: ${RESTART}
|
||||
volumes:
|
||||
- metamigo-data:/var/lib/postgresql/data
|
||||
- ./scripts/bootstrap-metamigo.sh:/docker-entrypoint-initdb.d/bootstrap-metamigo.sh
|
||||
environment:
|
||||
<<: *common-metamigo-variables
|
||||
POSTGRES_PASSWORD: ${METAMIGO_DATABASE_ROOT_PASSWORD}
|
||||
POSTGRES_USER: "root"
|
||||
POSTGRES_DB: "metamigo"
|
||||
ports:
|
||||
- 127.0.0.1:5435:5432
|
||||
|
||||
metamigo-api:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./apps/metamigo-cli/Dockerfile
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/metamigo
|
||||
container_name: metamigo-api
|
||||
restart: ${RESTART}
|
||||
command: [ "api" ]
|
||||
ports:
|
||||
- 127.0.0.1:8003:3001
|
||||
environment: *common-metamigo-variables
|
||||
volumes:
|
||||
- ./signald-state:/signald
|
||||
depends_on:
|
||||
- metamigo-postgresql
|
||||
- signald
|
||||
|
||||
metamigo-frontend:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./apps/metamigo-frontend/Dockerfile
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/metamigo-frontend
|
||||
container_name: metamigo-frontend
|
||||
restart: ${RESTART}
|
||||
expose:
|
||||
- "3000"
|
||||
ports:
|
||||
- 127.0.0.1:8002:3000
|
||||
# depends_on:
|
||||
# - metamigo-api
|
||||
environment:
|
||||
<<: *common-metamigo-variables
|
||||
VIRTUAL_HOST: ${METAMIGO_VIRTUAL_HOST}
|
||||
VIRTUAL_PORT: 3000
|
||||
|
||||
metamigo-worker:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./apps/metamigo-cli/Dockerfile
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/metamigo
|
||||
container_name: metamigo-worker
|
||||
restart: ${RESTART}
|
||||
command: [ "worker" ]
|
||||
environment: *common-metamigo-variables
|
||||
depends_on:
|
||||
- metamigo-api
|
||||
|
||||
signald:
|
||||
container_name: signald
|
||||
build: ./docker/signald
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/signald
|
||||
restart: ${RESTART}
|
||||
user: ${CURRENT_UID}
|
||||
volumes:
|
||||
- ./signald-state:/signald
|
||||
environment:
|
||||
<<: *common-global-variables
|
||||
|
||||
# nginx-proxy:
|
||||
# container_name: nginx-proxy
|
||||
# build: ./docker/nginx-proxy
|
||||
# restart: ${RESTART}
|
||||
# ports:
|
||||
# - "80:80"
|
||||
# volumes:
|
||||
# - /var/run/docker.sock:/tmp/docker.sock:ro
|
||||
|
||||
link:
|
||||
container_name: link
|
||||
restart: ${RESTART}
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./apps/link/Dockerfile
|
||||
expose:
|
||||
- "3000"
|
||||
ports:
|
||||
- "8004:3000"
|
||||
environment:
|
||||
ZAMMAD_PROXY_URL: ${ZAMMAD_PROXY_URL}
|
||||
ZAMMAD_API_TOKEN: ${ZAMMAD_API_TOKEN}
|
||||
ZAMMAD_VIRUAL_HOST: ${ZAMMAD_VIRTUAL_HOST}
|
||||
LINK_URL: ${LINK_URL}
|
||||
LEAFCUTTER_URL: http://leafcutter:3000
|
||||
METAMIGO_URL: http://metamigo-frontend:3000
|
||||
ZAMMAD_URL: http://localhost:8001
|
||||
NEXTAUTH_URL: ${LINK_URL}
|
||||
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
|
||||
NEXTAUTH_AUDIENCE: ${NEXTAUTH_AUDIENCE}
|
||||
NEXTAUTH_SIGNING_KEY_B64: ${NEXTAUTH_SIGNING_KEY_B64}
|
||||
NEXTAUTH_ENCRYPTION_KEY_B64: ${NEXTAUTH_ENCRYPTION_KEY_B64}
|
||||
GOOGLE_CLIENT_ID: ${GOOGLE_CLIENT_ID}
|
||||
GOOGLE_CLIENT_SECRET: ${GOOGLE_CLIENT_SECRET}
|
||||
|
||||
leafcutter:
|
||||
container_name: leafcutter
|
||||
restart: ${RESTART}
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./apps/leafcutter/Dockerfile
|
||||
expose:
|
||||
- "3000"
|
||||
ports:
|
||||
- "8005:3000"
|
||||
environment:
|
||||
LINK_EMBEDDED: "true"
|
||||
NEXTAUTH_URL: ${LINK_URL}
|
||||
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
|
||||
NEXTAUTH_AUDIENCE: ${NEXTAUTH_AUDIENCE}
|
||||
NEXTAUTH_SIGNING_KEY_B64: ${NEXTAUTH_SIGNING_KEY_B64}
|
||||
NEXTAUTH_ENCRYPTION_KEY_B64: ${NEXTAUTH_ENCRYPTION_KEY_B64}
|
||||
|
||||
volumes:
|
||||
elasticsearch-data:
|
||||
driver: local
|
||||
postgresql-data:
|
||||
driver: local
|
||||
zammad-data:
|
||||
driver: local
|
||||
metamigo-data:
|
||||
driver: local
|
||||
opensearch-data:
|
||||
driver: local
|
||||
147
docker-compose.zammad.yml
Normal file
147
docker-compose.zammad.yml
Normal file
|
|
@ -0,0 +1,147 @@
|
|||
version: "3.4"
|
||||
|
||||
x-global-vars: &common-global-variables
|
||||
TZ: Etc/UTC
|
||||
|
||||
x-zammad-vars: &common-zammad-variables
|
||||
MEMCACHE_SERVERS: "zammad-memcached:11211"
|
||||
REDIS_URL: "redis://zammad-redis:6379"
|
||||
ENABLE_EXPERIMENTAL_MOBILE_FRONTEND: "true"
|
||||
|
||||
services:
|
||||
zammad-elasticsearch:
|
||||
container_name: zammad-elasticsearch
|
||||
environment:
|
||||
discovery.type: single-node
|
||||
ES_JAVA_OPTS: -Xms750m -Xmx750m
|
||||
xpack.security.enabled: false
|
||||
<<: *common-global-variables
|
||||
build: ./docker/elasticsearch
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/elasticsearch:${LINK_STACK_VERSION}
|
||||
restart: ${RESTART}
|
||||
volumes:
|
||||
- elasticsearch-data:/usr/share/elasticsearch/data
|
||||
|
||||
zammad-init:
|
||||
platform: linux/x86_64
|
||||
container_name: zammad-init
|
||||
command: ["zammad-init"]
|
||||
depends_on:
|
||||
- zammad-postgresql
|
||||
environment:
|
||||
<<: [*common-zammad-variables, *common-global-variables]
|
||||
POSTGRESQL_USER: zammad
|
||||
POSTGRESQL_PASS: ${ZAMMAD_DATABASE_PASSWORD}
|
||||
build: ./docker/zammad
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad:${LINK_STACK_VERSION}
|
||||
restart: on-failure
|
||||
volumes:
|
||||
- zammad-data:/opt/zammad
|
||||
|
||||
zammad-memcached:
|
||||
container_name: zammad-memcached
|
||||
command: memcached -m 256M
|
||||
build: ./docker/memcached
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/memcached:${LINK_STACK_VERSION}
|
||||
restart: ${RESTART}
|
||||
environment:
|
||||
<<: *common-global-variables
|
||||
|
||||
zammad-nginx:
|
||||
platform: linux/x86_64
|
||||
container_name: zammad-nginx
|
||||
command: ["zammad-nginx"]
|
||||
expose:
|
||||
- "8080"
|
||||
ports:
|
||||
- 127.0.0.1:8001:8080
|
||||
depends_on:
|
||||
- zammad-railsserver
|
||||
build: ./docker/zammad
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad:${LINK_STACK_VERSION}
|
||||
restart: ${RESTART}
|
||||
environment:
|
||||
<<: *common-global-variables
|
||||
NGINX_SERVER_SCHEME: https
|
||||
VIRTUAL_HOST: ${ZAMMAD_VIRTUAL_HOST}
|
||||
VIRTUAL_PORT: 8080
|
||||
volumes:
|
||||
- zammad-data:/opt/zammad
|
||||
|
||||
zammad-postgresql:
|
||||
container_name: zammad-postgresql
|
||||
environment:
|
||||
<<: *common-global-variables
|
||||
POSTGRES_USER: zammad
|
||||
POSTGRES_PASSWORD: ${ZAMMAD_DATABASE_PASSWORD}
|
||||
build: ./docker/postgresql
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/postgresql:${LINK_STACK_VERSION}
|
||||
restart: ${RESTART}
|
||||
ports:
|
||||
- 127.0.0.1:5432:5432
|
||||
volumes:
|
||||
- postgresql-data:/var/lib/postgresql/data
|
||||
|
||||
zammad-railsserver:
|
||||
platform: linux/x86_64
|
||||
container_name: zammad-railsserver
|
||||
command: ["zammad-railsserver"]
|
||||
depends_on:
|
||||
- zammad-memcached
|
||||
- zammad-postgresql
|
||||
- zammad-redis
|
||||
environment:
|
||||
<<: [*common-global-variables, *common-zammad-variables]
|
||||
build: ./docker/zammad
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad:${LINK_STACK_VERSION}
|
||||
restart: ${RESTART}
|
||||
volumes:
|
||||
- zammad-data:/opt/zammad
|
||||
|
||||
zammad-redis:
|
||||
container_name: zammad-redis
|
||||
build: ./docker/redis
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/redis:${LINK_STACK_VERSION}
|
||||
restart: ${RESTART}
|
||||
environment:
|
||||
<<: *common-global-variables
|
||||
|
||||
zammad-scheduler:
|
||||
platform: linux/x86_64
|
||||
container_name: zammad-scheduler
|
||||
command: ["zammad-scheduler"]
|
||||
depends_on:
|
||||
- zammad-memcached
|
||||
- zammad-railsserver
|
||||
- zammad-redis
|
||||
environment:
|
||||
<<: [*common-global-variables, *common-zammad-variables]
|
||||
build: ./docker/zammad
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad:${LINK_STACK_VERSION}
|
||||
restart: ${RESTART}
|
||||
volumes:
|
||||
- zammad-data:/opt/zammad
|
||||
|
||||
zammad-websocket:
|
||||
platform: linux/x86_64
|
||||
container_name: zammad-websocket
|
||||
command: ["zammad-websocket"]
|
||||
depends_on:
|
||||
- zammad-memcached
|
||||
- zammad-railsserver
|
||||
- zammad-redis
|
||||
environment:
|
||||
<<: [*common-global-variables, *common-zammad-variables]
|
||||
build: ./docker/zammad
|
||||
image: registry.gitlab.com/digiresilience/link/link-stack/zammad:${LINK_STACK_VERSION}
|
||||
restart: ${RESTART}
|
||||
volumes:
|
||||
- zammad-data:/opt/zammad
|
||||
|
||||
volumes:
|
||||
elasticsearch-data:
|
||||
driver: local
|
||||
postgresql-data:
|
||||
driver: local
|
||||
zammad-data:
|
||||
driver: local
|
||||
15
package.json
15
package.json
|
|
@ -9,6 +9,21 @@
|
|||
"dev:metamigo": "make dev-metamigo && dotenv -- turbo run dev --concurrency 30 --filter=!link --filter=!leafcutter",
|
||||
"migrate": "dotenv -- npm run migrate --workspace=@digiresilience/metamigo-cli",
|
||||
"fmt": "turbo run fmt",
|
||||
"docker:all:up": "docker compose -f docker-compose.zammad.yml -f docker-compose.metamigo-postgresql.yml -f docker-compose.metamigo.yml -f docker-compose.opensearch.yml -f docker-compose.leafcutter.yml -f docker-compose.link.yml up -d",
|
||||
"docker:all:down": "docker compose -f docker-compose.zammad.yml -f docker-compose.metamigo-postgresql.yml -f docker-compose.metamigo.yml -f docker-compose.opensearch.yml -f docker-compose.leafcutter.yml -f docker-compose.link.yml down",
|
||||
"docker:all:build": "docker compose -f docker-compose.zammad.yml -f docker-compose.metamigo-postgresql.yml -f docker-compose.metamigo.yml -f docker-compose.opensearch.yml -f docker-compose.leafcutter.yml -f docker-compose.link.yml up --build -d",
|
||||
"docker:link:dev:up": "docker compose -f docker-compose.metamigo-postgresql.yml -f docker-compose.metamigo.yml -f docker-compose.zammad.yml up -d",
|
||||
"docker:link:dev:down": "docker compose -f docker-compose.metamigo-postgresql.yml -f docker-compose.metamigo.yml -f docker-compose.zammad.yml down",
|
||||
"docker:link:up": "docker compose -f docker-compose.metamigo-postgresql.yml -f docker-compose.metamigo.yml -f docker-compose.zammad.yml -f docker-compose.link.yml up -d",
|
||||
"docker:link:down": "docker compose -f docker-compose.metamigo-postgresql.yml -f docker-compose.metamigo.yml -f docker-compose.zammad.yml -f docker-compose.link.yml down",
|
||||
"docker:leafcutter:dev:up": "docker compose -f docker-compose.opensearch.yml up -d",
|
||||
"docker:leafcutter:dev:down": "docker compose -f docker-compose.opensearch.yml down",
|
||||
"docker:leafcutter:up": "docker compose -f docker-compose.opensearch.yml -f docker-compose.leafcutter.yml up -d",
|
||||
"docker:leafcutter:down": "docker compose -f docker-compose.opensearch.yml -f docker-compose.leafcutter.yml down",
|
||||
"docker:metamigo:dev:up": "docker compose -f docker-compose.metamigo-postgresql.yml -f docker-compose.zammad.yml up -d",
|
||||
"docker:metamigo:dev:down": "docker compose -f docker-compose.metamigo-postgresql.yml -f docker-compose.zammad.yml down",
|
||||
"docker:metamigo:up": "docker compose -f docker-compose.zammad.yml -f docker-compose.metamigo-postgresql.yml -f docker-compose.metamigo.yml up -d",
|
||||
"docker:metamigo:down": "docker compose -f docker-compose.zammad.yml -f docker-compose.metamigo-postgresql.yml -f docker-compose.metamigo.yml down",
|
||||
"upgrade:setup": "npm i -g npm-check-updates",
|
||||
"upgrade:check": "ncu -ws -x graphql",
|
||||
"upgrade:all": "ncu -ws -u -x graphql"
|
||||
|
|
|
|||
|
|
@ -1,18 +0,0 @@
|
|||
.PHONY: fmt test yarn
|
||||
.npmrc:
|
||||
echo '@guardianproject-ops:registry=https://gitlab.com/api/v4/packages/npm/' > .npmrc
|
||||
echo '//gitlab.com/api/v4/packages/npm/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
echo '//gitlab.com/api/v4/projects/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
echo '//gitlab.com/api/v4/projects/${CI_PROJECT_ID}/packages/npm/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
|
||||
yarn:
|
||||
yarn
|
||||
|
||||
test: yarn
|
||||
mkdir -p coverage
|
||||
yarn lint
|
||||
yarn test
|
||||
|
||||
publish: test .npmrc
|
||||
npm publish
|
||||
|
||||
|
|
@ -11,7 +11,7 @@ We recommend using [@digiresilience/amigo-dev][amigo-dev] to manage your dev dep
|
|||
But if you want to do it manually, then:
|
||||
|
||||
```console
|
||||
$ yarn add -D @digiresilience/babel-preset-amigo
|
||||
$ npm install --save-dev @digiresilience/babel-preset-amigo
|
||||
```
|
||||
|
||||
# Usage
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ We recommend using [@digiresilience/amigo-dev][amigo-dev] to manage your dev dep
|
|||
But if you want to do it manually, then:
|
||||
|
||||
```console
|
||||
$ yarn add -D @digiresilience/eslint-config-amigo
|
||||
$ npm install --save-dev @digiresilience/eslint-config-amigo
|
||||
```
|
||||
|
||||
# Usage
|
||||
|
|
|
|||
2
packages/hapi-nextauth/.gitignore
vendored
2
packages/hapi-nextauth/.gitignore
vendored
|
|
@ -8,6 +8,4 @@ coverage
|
|||
*.log
|
||||
package-lock.json
|
||||
.npmrc
|
||||
.yalc
|
||||
yalc.lock
|
||||
junit.xml
|
||||
|
|
|
|||
|
|
@ -5,10 +5,7 @@
|
|||
Makefile
|
||||
.gitlab-ci.yml
|
||||
coverage
|
||||
.yarnrc*
|
||||
jest*
|
||||
tsconfig*
|
||||
*.log
|
||||
test*
|
||||
.yalc
|
||||
yalc.lock
|
||||
|
|
|
|||
|
|
@ -1,39 +0,0 @@
|
|||
test: build
|
||||
mkdir -p coverage
|
||||
yarn test
|
||||
|
||||
.PHONY: build
|
||||
build: node_modules/
|
||||
yarn build
|
||||
|
||||
lint:
|
||||
yarn test:lint
|
||||
|
||||
fmt:
|
||||
yarn fix:prettier
|
||||
yarn fix:lint
|
||||
|
||||
doc:
|
||||
yarn doc
|
||||
|
||||
publish: test
|
||||
npm publish
|
||||
|
||||
# always run yarn when we are in the CI
|
||||
node_modules/: .npmrc
|
||||
@(test -d node_modules && test -z "${CI_JOB_TOKEN}") || yarn
|
||||
|
||||
.npmrc:
|
||||
ifdef CI_JOB_TOKEN
|
||||
echo '@guardianproject-ops:registry=https://gitlab.com/api/v4/packages/npm/' > .npmrc
|
||||
echo '@digiresilience:registry=https://gitlab.com/api/v4/packages/npm/' > .npmrc
|
||||
echo '//gitlab.com/api/v4/packages/npm/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
echo '//gitlab.com/api/v4/projects/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
echo '//gitlab.com/api/v4/projects/${CI_PROJECT_ID}/packages/npm/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
endif
|
||||
|
||||
clean:
|
||||
rm -rf build tmp coverage yarn-error.log
|
||||
|
||||
distclean: clean
|
||||
rm -rf node_modules
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
version: "3.1"
|
||||
services:
|
||||
db_test:
|
||||
image: postgres:13
|
||||
environment:
|
||||
POSTGRES_PASSWORD: amigo
|
||||
POSTGRES_USER: postgres
|
||||
ports:
|
||||
- "127.0.0.1:5436:5432"
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
test: build
|
||||
mkdir -p coverage
|
||||
yarn test
|
||||
|
||||
.PHONY: build
|
||||
build: node_modules/
|
||||
yarn build
|
||||
|
||||
lint:
|
||||
yarn test:lint
|
||||
|
||||
fmt:
|
||||
yarn fix:prettier
|
||||
yarn fix:lint
|
||||
|
||||
doc:
|
||||
yarn doc
|
||||
|
||||
publish: test
|
||||
npm publish
|
||||
|
||||
node_modules/: .npmrc
|
||||
test -d node_modules || yarn
|
||||
|
||||
.npmrc:
|
||||
ifdef CI_JOB_TOKEN
|
||||
echo '@guardianproject-ops:registry=https://gitlab.com/api/v4/packages/npm/' > .npmrc
|
||||
echo '@digiresilience:registry=https://gitlab.com/api/v4/packages/npm/' >> .npmrc
|
||||
echo '//gitlab.com/api/v4/packages/npm/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
echo '//gitlab.com/api/v4/projects/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
echo '//gitlab.com/api/v4/projects/${CI_PROJECT_ID}/packages/npm/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
endif
|
||||
|
||||
clean:
|
||||
rm -rf build tmp coverage yarn-error.log
|
||||
|
||||
distclean: clean
|
||||
rm -rf node_modules
|
||||
2
packages/metamigo-common/.gitignore
vendored
2
packages/metamigo-common/.gitignore
vendored
|
|
@ -8,6 +8,4 @@ coverage
|
|||
*.log
|
||||
package-lock.json
|
||||
.npmrc
|
||||
.yalc
|
||||
yalc.lock
|
||||
junit.xml
|
||||
|
|
|
|||
|
|
@ -9,5 +9,3 @@ jest*
|
|||
tsconfig*
|
||||
*.log
|
||||
test*
|
||||
.yalc
|
||||
yalc.lock
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ export const configSchema = {
|
|||
connection: {
|
||||
doc: "The postgres connection url.",
|
||||
format: "uri",
|
||||
default: "postgresql://metamigo:metamigo@127.0.0.1:5435/metamigo_dev",
|
||||
default: "postgresql://metamigo:metamigo@127.0.0.1:5433/metamigo_dev",
|
||||
env: "METAMIGO_DATABASE_URL",
|
||||
sensitive: true,
|
||||
},
|
||||
|
|
@ -29,7 +29,7 @@ export const configSchema = {
|
|||
connection: {
|
||||
doc: "The postgres connection url for the worker database.",
|
||||
format: "uri",
|
||||
default: "postgresql://metamigo:metamigo@127.0.0.1:5435/metamigo_dev",
|
||||
default: "postgresql://metamigo:metamigo@127.0.0.1:5433/metamigo_dev",
|
||||
env: "METAMIGO_WORKER_DATABASE_URL",
|
||||
},
|
||||
concurrency: {
|
||||
|
|
@ -55,14 +55,14 @@ export const configSchema = {
|
|||
appRootConnection: {
|
||||
doc: "The postgres root/superuser connection url for development mode so PG can watch the schema changes, this is strangely named in the postgraphile API 'ownerConnectionString'",
|
||||
format: String,
|
||||
default: "postgresql://postgres:metamigo@127.0.0.1:5435/metamigo_dev",
|
||||
default: "postgresql://postgres:metamigo@127.0.0.1:5433/metamigo_dev",
|
||||
env: "METAMIGO_APP_ROOT_DATABASE_URL",
|
||||
},
|
||||
authConnection: {
|
||||
doc: "The postgres connection URL for postgraphile, must not be superuser and must have limited privs.",
|
||||
format: String,
|
||||
default:
|
||||
"postgresql://metamigo_graphile_auth:metamigo@127.0.0.1:5435/metamigo_dev",
|
||||
"postgresql://metamigo_graphile_auth:metamigo@127.0.0.1:5433/metamigo_dev",
|
||||
env: "METAMIGO_DATABASE_AUTH_URL",
|
||||
},
|
||||
visitor: {
|
||||
|
|
@ -88,14 +88,14 @@ export const configSchema = {
|
|||
shadowConnection: {
|
||||
doc: "The shadow databse connection url used by postgraphile-migrate. Not needed in production.",
|
||||
format: "uri",
|
||||
default: "postgresql://metamigo:metamigo@127.0.0.1:5435/metamigo_shadow",
|
||||
default: "postgresql://metamigo:metamigo@127.0.0.1:5433/metamigo_shadow",
|
||||
env: "METAMIGO_SHADOW_DATABASE_URL",
|
||||
sensitive: true,
|
||||
},
|
||||
rootConnection: {
|
||||
doc: "The postgres root/superuser connection url for testing only, database must NOT be the app database. Not needed in production.",
|
||||
format: "uri",
|
||||
default: "postgresql://postgres:metamigo@127.0.0.1:5435/template1",
|
||||
default: "postgresql://postgres:metamigo@127.0.0.1:5433/template1",
|
||||
env: "METAMIGO_ROOT_DATABASE_URL",
|
||||
sensitive: true,
|
||||
},
|
||||
|
|
@ -363,10 +363,10 @@ export interface INextAuthConfig {
|
|||
encryptionKey: string;
|
||||
signingKeyB64: string;
|
||||
encryptionKeyB64: string;
|
||||
google?: { id: string; secret: string };
|
||||
github?: { id: string; secret: string };
|
||||
gitlab?: { id: string; secret: string };
|
||||
cognito?: { id: string; secret: string; domain: string };
|
||||
google?: { id: string; secret: string; };
|
||||
github?: { id: string; secret: string; };
|
||||
gitlab?: { id: string; secret: string; };
|
||||
cognito?: { id: string; secret: string; domain: string; };
|
||||
}
|
||||
|
||||
export interface ICFAccessConfig {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
const { spawn } = require("child_process");
|
||||
const findWorkspaceRoot = require("find-yarn-workspace-root");
|
||||
|
||||
if (process.env.CI) {
|
||||
process.exit(0);
|
||||
|
|
@ -21,7 +20,7 @@ spawn(
|
|||
"--no-owner",
|
||||
"--exclude-schema=graphile_migrate",
|
||||
"--exclude-schema=graphile_worker",
|
||||
`--file=${findWorkspaceRoot()}/data/schema.sql`,
|
||||
`--file=../../data/schema.sql`,
|
||||
connectionString,
|
||||
],
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,37 +0,0 @@
|
|||
test: build
|
||||
mkdir -p coverage
|
||||
yarn test
|
||||
|
||||
.PHONY: build
|
||||
build: node_modules/
|
||||
yarn build
|
||||
|
||||
lint:
|
||||
yarn test:lint
|
||||
|
||||
fmt:
|
||||
yarn fix:prettier
|
||||
yarn fix:lint
|
||||
|
||||
doc:
|
||||
yarn doc
|
||||
|
||||
publish: test
|
||||
npm publish
|
||||
|
||||
node_modules/: .npmrc
|
||||
test -d node_modules || yarn
|
||||
|
||||
.npmrc:
|
||||
ifdef CI_JOB_TOKEN
|
||||
echo '@guardianproject-ops:registry=https://gitlab.com/api/v4/packages/npm/' > .npmrc
|
||||
echo '//gitlab.com/api/v4/packages/npm/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
echo '//gitlab.com/api/v4/projects/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
echo '//gitlab.com/api/v4/projects/${CI_PROJECT_ID}/packages/npm/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
endif
|
||||
|
||||
clean:
|
||||
rm -rf build tmp coverage yarn-error.log
|
||||
|
||||
distclean: clean
|
||||
rm -rf node_modules
|
||||
|
|
@ -7,7 +7,7 @@ What's this all about? Watch this [video from Stuart Sierra](https://www.youtube
|
|||
## Install
|
||||
|
||||
```console
|
||||
$ yarn add -D @digiresilience/montar
|
||||
$ npm install --save-dev @digiresilience/montar
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
|
|
|||
|
|
@ -1,18 +0,0 @@
|
|||
.PHONY: test yarn publish
|
||||
.npmrc:
|
||||
echo '@guardianproject-ops:registry=https://gitlab.com/api/v4/packages/npm/' > .npmrc
|
||||
echo '//gitlab.com/api/v4/packages/npm/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
echo '//gitlab.com/api/v4/projects/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
echo '//gitlab.com/api/v4/projects/${CI_PROJECT_ID}/packages/npm/:_authToken=${CI_JOB_TOKEN}' >> .npmrc
|
||||
|
||||
yarn:
|
||||
yarn
|
||||
|
||||
test: yarn
|
||||
mkdir -p coverage
|
||||
yarn lint
|
||||
yarn test
|
||||
|
||||
publish: test .npmrc
|
||||
npm publish
|
||||
|
||||
|
|
@ -11,7 +11,7 @@ We recommend using [@digiresilience/amigo-dev][amigo-dev] to manage your dev dep
|
|||
But if you want to do it manually, then:
|
||||
|
||||
```console
|
||||
$ yarn add -D @digiresilience/tsconfig-amigo
|
||||
$ npm install --save-dev @digiresilience/tsconfig-amigo
|
||||
```
|
||||
|
||||
# Usage
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue