Some checks failed
App Prod-Parity E2E Dispatch / dispatch (push) Failing after 10s
CD Storybook UI / build (push) Failing after 3m25s
CD Storybook UI / dispatch (push) Has been skipped
CD deploy main / website-changed-files (push) Successful in 18m8s
CI Agent Skills / changed-files-check (push) Successful in 18m9s
CI Create App E2E minimal / changed-files-check (push) Successful in 24s
CI Create App / changed-files-check (push) Successful in 26s
CI Docs / changed-files-check (push) Successful in 26s
CI Emails / changed-files-check (push) Successful in 28s
CI Example App Hello World / changed-files-check (push) Successful in 23s
CI Front / changed-files-check (push) Has been skipped
CI Example App Postcard / changed-files-check (push) Successful in 27s
CI UI / changed-files-check (push) Has been skipped
CI Utils Test / changed-files-check (push) Successful in 45s
CI Twenty Apps / discover (push) Successful in 1m3s
CD deploy main / deploy-main (push) Failing after 3s
CI Agent Skills / agent-skills-validate (push) Has been skipped
CI Create App / create-app-test (lint) (push) Has been skipped
CI Emails / emails-test (push) Has been skipped
CI Front / front-task (lingui:compile) (push) Has been skipped
CI Front / front-task (lint) (push) Has been skipped
CI Example App Postcard / example-app-postcard (push) Has been skipped
CI UI / ui-task (lint) (push) Has been skipped
CI UI / ui-task (pack-size) (push) Has been skipped
CI UI / ui-task (size) (push) Has been skipped
CI UI / ui-task (test) (push) Has been skipped
CI UI / ui-task (typecheck) (push) Has been skipped
CI Utils Test / utils-test (push) Has been skipped
CI Twenty Apps / ${{ matrix.app.name }} (push) Has been skipped
CI Emails / ci-emails-status-check (push) Successful in 2s
CI Example App Hello World / ci-example-app-hello-world-status-check (push) Successful in 2s
CI Example App Postcard / ci-example-app-postcard-status-check (push) Successful in 3s
CI UI / ui-sb-test (push) Has been skipped
CI Utils Test / ci-utils-test-status-check (push) Successful in 2s
CI Twenty Apps / ci-twenty-apps-status-check (push) Successful in 2s
CI UI / ci-ui-status-check (push) Successful in 2s
CI Desktop / desktop (push) Failing after 1m8s
Push docs to Crowdin / Push documentation to Crowdin (push) Failing after 55s
Push translations to Crowdin / Extract and upload translations (push) Failing after 5s
Push website translations to Crowdin / Extract and upload website translations (push) Failing after 5s
CI Create App / create-app-test (test) (push) Has been skipped
CI Create App / create-app-test (typecheck) (push) Has been skipped
CI Docs / docs-lint (push) Has been skipped
CI Example App Hello World / example-app-hello-world (push) Has been skipped
CI Front / front-task (lingui:extract) (push) Has been skipped
CI Front / front-task (test) (push) Has been skipped
CI Front / front-task (typecheck) (push) Has been skipped
CI UI / ui-sb-build (push) Failing after 1m32s
CI Twenty Apps / ${{ matrix.app.name }} (${{ matrix.server-source }}) (push) Has been skipped
CI Agent Skills / agent-skills-publish (push) Has been skipped
CI Create App / ci-create-app-status-check (push) Successful in 2s
CI Agent Skills / agent-skills-remote-source (push) Has been skipped
CI Create App E2E minimal / create-app-e2e-minimal (push) Has been cancelled
CI E2E Main / e2e-test (push) Has been cancelled
CI Front / front-sb-build (push) Has been cancelled
CI Front / front-build (push) Has been cancelled
CI Create App E2E minimal / ci-create-app-e2e-minimal-status-check (push) Has been cancelled
CI E2E Main / ci-e2e-main-status-check (push) Has been cancelled
CI E2E Main / notify-main-ci-failure (push) Has been cancelled
CI E2E Main / qa-scout-comment (push) Has been cancelled
CI Front / front-sb-test (push) Has been cancelled
CI Front / front-sb-screenshots (push) Has been cancelled
CI Front / ci-front-status-check (push) Has been cancelled
DPA Sub-Processor Sync / sync-subprocessors (push) Failing after 3s
AI Catalog Sync / sync-catalog (push) Failing after 3s
72 lines
2.1 KiB
Bash
72 lines
2.1 KiB
Bash
#!/bin/bash
|
|
set -e
|
|
if [ ! -f "$(dirname "$0")/.env" ]; then
|
|
echo "Error: .env file not found"
|
|
exit 1
|
|
fi
|
|
source "$(dirname "$0")/.env"
|
|
|
|
## steps to cleanup and start over from scratch - useful when testing
|
|
#podman pod stop twenty-pod
|
|
#podman pod rm twenty-pod
|
|
#podman volume rm twenty-db-data twenty-server-data twenty-redis-data
|
|
# end of cleanup
|
|
|
|
podman volume create twenty-db-data
|
|
podman volume create twenty-server-data
|
|
podman volume create twenty-redis-data
|
|
|
|
podman pod create --name twenty-pod -p 127.0.0.1:8080:3000
|
|
|
|
podman run -d --pod twenty-pod --name twenty-db \
|
|
-e POSTGRES_DB=twenty \
|
|
-e POSTGRES_USER=twenty \
|
|
-e POSTGRES_PASSWORD="$POSTGRES_PASSWORD" \
|
|
-v twenty-db-data:/var/lib/postgresql/data:Z \
|
|
docker.io/library/postgres:16
|
|
|
|
podman run -d --pod twenty-pod --name twenty-redis \
|
|
-v twenty-redis-data:/data:Z \
|
|
docker.io/library/redis:latest
|
|
|
|
podman run -d --pod twenty-pod --name twenty-server \
|
|
-e NODE_PORT=3000 \
|
|
-e SERVER_URL="$SERVER_URL" \
|
|
-e PG_DATABASE_URL="postgresql://twenty:$POSTGRES_PASSWORD@twenty-db:5432/twenty" \
|
|
-e REDIS_URL="redis://twenty-redis:6379" \
|
|
-e APP_SECRET="$APP_SECRET" \
|
|
-e NODE_ENV=production \
|
|
-e LOG_LEVEL=info \
|
|
-v twenty-server-data:/app/docker-data:Z \
|
|
docker.io/twentycrm/twenty:latest
|
|
|
|
podman run -d --pod twenty-pod --name twenty-worker \
|
|
--init \
|
|
-e SERVER_URL="$SERVER_URL" \
|
|
-e PG_DATABASE_URL="postgresql://twenty:$POSTGRES_PASSWORD@twenty-db:5432/twenty" \
|
|
-e REDIS_URL="redis://twenty-redis:6379" \
|
|
-e APP_SECRET="$APP_SECRET" \
|
|
-e DISABLE_DB_MIGRATIONS=true \
|
|
-e NODE_ENV=production \
|
|
-e LOG_LEVEL=info \
|
|
-v twenty-server-data:/app/docker-data:Z \
|
|
docker.io/twentycrm/twenty:latest \
|
|
yarn worker:prod
|
|
|
|
# wait some time, check status
|
|
sleep 30
|
|
podman ps --pod -f name=twenty-pod
|
|
|
|
|
|
mkdir -p ~/.config/systemd/user
|
|
if [ ! -f "twentycrm.service" ]; then
|
|
echo "Error: twentycrm.service file not found"
|
|
exit 1
|
|
fi
|
|
cp twentycrm.service ~/.config/systemd/user
|
|
|
|
systemctl --user daemon-reload
|
|
systemctl --user enable twentycrm.service
|
|
systemctl --user start twentycrm.service
|
|
|