mirror of
https://github.com/Dokploy/dokploy
synced 2025-06-26 18:27:59 +00:00
62 lines
1.4 KiB
YAML
62 lines
1.4 KiB
YAML
version: 2.1
|
|
|
|
orbs:
|
|
node: circleci/node@5.0.0
|
|
docker: circleci/docker@2.1.1
|
|
|
|
workflows:
|
|
version: 2
|
|
build-and-deploy:
|
|
jobs:
|
|
- build-app:
|
|
filters:
|
|
branches:
|
|
only:
|
|
- main
|
|
- canary
|
|
context:
|
|
- pnpm
|
|
- build-and-push-docker-on-push:
|
|
filters:
|
|
branches:
|
|
only:
|
|
- main
|
|
- canary
|
|
context:
|
|
- docker
|
|
|
|
jobs:
|
|
build-app:
|
|
docker:
|
|
- image: cimg/node:18.18.0
|
|
steps:
|
|
- checkout
|
|
- node/install:
|
|
install-yarn: false
|
|
install-npm: false
|
|
node-version: "18.18.0"
|
|
- run: npm install -g pnpm@8
|
|
- run: pnpm install
|
|
- run: pnpm build
|
|
|
|
build-and-push-docker-on-push:
|
|
docker:
|
|
- image: cimg/base:stable
|
|
steps:
|
|
- checkout
|
|
- setup_remote_docker:
|
|
docker_layer_caching: true
|
|
- docker/check:
|
|
- docker/login:
|
|
username: DOCKERHUB_USERNAME
|
|
password: DOCKERHUB_TOKEN
|
|
- run:
|
|
name: Prepare .env file
|
|
command: |
|
|
cp .env.production.example .env.production
|
|
- run:
|
|
name: Build and push Docker image using custom script
|
|
command: |
|
|
chmod +x ./docker/push.sh
|
|
./docker/push.sh ${CIRCLE_BRANCH == 'canary' && echo 'canary' || echo ''}
|