effective: | ignore: - node_modules - /apps/docs - /apps/screenshot-service - /apps/server - /apps/web - /apps/dashboard - /apps/status-page - /packages/analytics - /packages/api - /packages/error - /packages/tracker builders: libsql: fromImage: path: oven/bun digest: sha256:00cccad6e9c66bbacc250851f689168606aaea551ac473e908bbcf00a5645025 label: org.opencontainers.image.base.name: docker.io/oven/bun:latest org.opencontainers.image.base.digest: sha256:00cccad6e9c66bbacc250851f689168606aaea551ac473e908bbcf00a5645025 workdir: /app/ copy: - fromBuilder: docker paths: - /app/apps/build-docker/package.json target: /app/package.json run: - bun install docker: fromImage: path: oven/bun digest: sha256:00cccad6e9c66bbacc250851f689168606aaea551ac473e908bbcf00a5645025 label: org.opencontainers.image.base.digest: sha256:00cccad6e9c66bbacc250851f689168606aaea551ac473e908bbcf00a5645025 org.opencontainers.image.base.name: docker.io/oven/bun:latest workdir: /app/apps/workflows copy: - paths: - . target: /app/ run: - bun run src/build-docker.ts build: fromImage: path: oven/bun digest: sha256:00cccad6e9c66bbacc250851f689168606aaea551ac473e908bbcf00a5645025 label: org.opencontainers.image.base.digest: sha256:00cccad6e9c66bbacc250851f689168606aaea551ac473e908bbcf00a5645025 org.opencontainers.image.base.name: docker.io/oven/bun:latest workdir: /app/apps/workflows env: NODE_ENV: production copy: - paths: - . target: /app/ - fromBuilder: install paths: - /app/node_modules target: /app/node_modules run: - bun build --compile --target bun --sourcemap --format=cjs src/index.ts --outfile=app --external '@libsql/*' --external libsql install: fromImage: path: oven/bun digest: sha256:00cccad6e9c66bbacc250851f689168606aaea551ac473e908bbcf00a5645025 label: org.opencontainers.image.base.name: docker.io/oven/bun:latest org.opencontainers.image.base.digest: sha256:00cccad6e9c66bbacc250851f689168606aaea551ac473e908bbcf00a5645025 workdir: /app/ run: - bun install --production --ignore-scripts --frozen-lockfile --verbose cache: - target: /root/.bun/install/cache bind: - target: bunfig.toml source: bunfig.toml - target: package.json source: package.json - target: apps/workflows/package.json source: apps/workflows/package.json - target: packages/assertions/package.json source: packages/assertions/package.json - target: packages/db/package.json source: packages/db/package.json - target: packages/emails/package.json source: packages/emails/package.json - target: packages/notifications/discord/package.json source: packages/notifications/discord/package.json - target: packages/notifications/email/package.json source: packages/notifications/email/package.json - target: packages/notifications/ntfy/package.json source: packages/notifications/ntfy/package.json - target: packages/notifications/opsgenie/package.json source: packages/notifications/opsgenie/package.json - target: packages/notifications/pagerduty/package.json source: packages/notifications/pagerduty/package.json - target: packages/notifications/slack/package.json source: packages/notifications/slack/package.json - target: packages/notifications/twillio-sms/package.json source: packages/notifications/twillio-sms/package.json - target: packages/notifications/webhook/package.json source: packages/notifications/webhook/package.json - target: packages/regions/package.json source: packages/regions/package.json - target: packages/utils/package.json source: packages/utils/package.json - target: packages/tsconfig/package.json source: packages/tsconfig/package.json - target: packages/tinybird/package.json source: packages/tinybird/package.json - target: packages/upstash/package.json source: packages/upstash/package.json ca-certs: fromImage: path: debian digest: sha256:f807f4b16002c623115b0247dca6a55711c6b1ae821dc64fb8a2339e4ce2115d label: org.opencontainers.image.base.name: docker.io/debian:bullseye-slim org.opencontainers.image.base.digest: sha256:f807f4b16002c623115b0247dca6a55711c6b1ae821dc64fb8a2339e4ce2115d run: - apk update && apk upgrade --available && apk add ca-certificates && update-ca-certificates fromImage: path: debian digest: sha256:f807f4b16002c623115b0247dca6a55711c6b1ae821dc64fb8a2339e4ce2115d label: org.opencontainers.image.base.name: docker.io/debian:bullseye-slim org.opencontainers.image.base.digest: sha256:f807f4b16002c623115b0247dca6a55711c6b1ae821dc64fb8a2339e4ce2115d io.dofigen.version: 2.5.0 workdir: /app/ copy: - fromBuilder: build paths: - /app/apps/workflows/app target: /app/apps/workflows/ chmod: '555' - fromBuilder: libsql paths: - /app/node_modules target: /app/packages/db/node_modules - fromBuilder: libsql paths: - /app/node_modules target: /app/node_modules - fromBuilder: ca-certs paths: - /etc/ssl/certs/ca-certificates.crt target: /etc/ssl/certs/ entrypoint: - /app/apps/workflows/app expose: - port: 3000 images: docker.io: library: debian: bullseye-slim: digest: sha256:f807f4b16002c623115b0247dca6a55711c6b1ae821dc64fb8a2339e4ce2115d oven: bun: latest: digest: sha256:00cccad6e9c66bbacc250851f689168606aaea551ac473e908bbcf00a5645025 resources: dofigen.yml: hash: 4c0cfc9f42824ef083d401f675c335053cd0458addbcdf987bd0cd2713a31d42 content: | ignore: - node_modules - /apps/docs - /apps/screenshot-service - /apps/server - /apps/web - /apps/dashboard - /apps/status-page - /packages/analytics - /packages/api - /packages/error - /packages/tracker builders: install: fromImage: oven/bun workdir: /app/ # Copy project bind: - bunfig.toml - package.json - apps/workflows/package.json - packages/assertions/package.json - packages/db/package.json - packages/emails/package.json - packages/notifications/discord/package.json - packages/notifications/email/package.json - packages/notifications/ntfy/package.json - packages/notifications/opsgenie/package.json - packages/notifications/pagerduty/package.json - packages/notifications/slack/package.json - packages/notifications/twillio-sms/package.json - packages/notifications/webhook/package.json - packages/regions/package.json - packages/utils/package.json - packages/tsconfig/package.json - packages/tinybird/package.json - packages/upstash/package.json # Install dependencies run: bun install --production --ignore-scripts --frozen-lockfile --verbose cache: - /root/.bun/install/cache build: fromImage: oven/bun workdir: /app/apps/workflows copy: - . /app/ - fromBuilder: install source: /app/node_modules target: /app/node_modules # Should set env to production here # Compile the TypeScript application env: NODE_ENV: production run: bun build --compile --target bun --sourcemap --format=cjs src/index.ts --outfile=app --external '@libsql/*' --external libsql docker: fromImage: oven/bun workdir: /app/apps/workflows copy: - . /app/ run: bun run src/build-docker.ts libsql: fromImage: oven/bun workdir: /app/ copy: - fromBuilder: docker source: /app/apps/build-docker/package.json target: /app/package.json run: bun install ca-certs: fromImage: debian:bullseye-slim run: apk update && apk upgrade --available && apk add ca-certificates && update-ca-certificates fromImage: debian:bullseye-slim workdir: /app/ copy: - fromBuilder: build source: /app/apps/workflows/app target: /app/apps/workflows/ chmod: "555" - fromBuilder: libsql source: /app/node_modules target: /app/packages/db/node_modules - fromBuilder: libsql source: /app/node_modules target: /app/node_modules - fromBuilder: ca-certs source: /etc/ssl/certs/ca-certificates.crt target: /etc/ssl/certs/ expose: 3000 entrypoint: /app/apps/workflows/app