Merge pull request #144 from calcom/buildx

Update for buildx compatibility
This commit is contained in:
Colin Griffin
2022-08-08 10:58:06 -04:00
committed by GitHub
3 changed files with 41 additions and 39 deletions

View File

@@ -60,42 +60,42 @@ jobs:
run: |
grep -o '^[^#]*' .env.example > .env
cat .env >> $GITHUB_ENV
# - name: Set up Docker Buildx
# uses: docker/setup-buildx-action@v2
# with:
# driver-opts: |
# network=stack
echo "DATABASE_HOST=localhost:5432" >> $GITHUB_ENV
eval $(sed -e '/^#/d' -e 's/^/export /' -e 's/$/;/' .env) ;
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Start database
run: |
docker compose up -d database
# - name: Build and push image
# id: docker_build
# uses: docker/build-push-action@v2
# with:
# context: ./
# file: ./Dockerfile
# push: false
# # platforms: linux/amd64,linux/arm64
# # The test image is /docker and is private. final image will be /calendso and public
# tags: docker.io/${{ secrets.DOCKER_HUB_USERNAME }}/calendso:canary
# # network: stack
# build-args: |
# NEXT_PUBLIC_WEBAPP_URL=${{ env.NEXT_PUBLIC_WEBAPP_URL }}
# NEXT_PUBLIC_LICENSE_CONSENT=${{ env.NEXT_PUBLIC_LICENSE_CONSENT }}
# NEXT_PUBLIC_TELEMETRY_KEY=${{ env.NEXT_PUBLIC_TELEMETRY_KEY }}
# DATABASE_URL=postgresql://${{ env.POSTGRES_USER }}:${{ env.POSTGRES_PASSWORD }}@${{ env.DATABASE_HOST }}/${{ env.POSTGRES_DB }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
with:
driver-opts: |
network=container:database
buildkitd-flags: |
--allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host
- name: Build and push image
id: docker_build
uses: docker/build-push-action@v3
with:
context: ./
file: ./Dockerfile
push: true
platforms: linux/amd64,linux/arm64
tags: docker.io/${{ secrets.DOCKER_HUB_USERNAME }}/calendso:canary
build-args: |
NEXT_PUBLIC_WEBAPP_URL=${{ env.NEXT_PUBLIC_WEBAPP_URL }}
NEXT_PUBLIC_LICENSE_CONSENT=${{ env.NEXT_PUBLIC_LICENSE_CONSENT }}
NEXT_PUBLIC_TELEMETRY_KEY=${{ env.NEXT_PUBLIC_TELEMETRY_KEY }}
DATABASE_URL=postgresql://${{ env.POSTGRES_USER }}:${{ env.POSTGRES_PASSWORD }}@${{ env.DATABASE_HOST }}/${{ env.POSTGRES_DB }}
- name: Build with docker compose
run: |
DOCKER_BUILDKIT=0 docker compose build --build-arg DATABASE_URL=postgresql://${{ env.POSTGRES_USER }}:${{ env.POSTGRES_PASSWORD }}@${{ env.DATABASE_HOST }}/${{ env.POSTGRES_DB }} calcom
- name: Push docker image
run: |
docker tag docker_calcom:latest calendso/calendso:latest
docker push calendso/calendso:latest
# - name: Build with docker compose
# run: |
# DOCKER_BUILDKIT=0 docker compose build --build-arg DATABASE_URL=postgresql://${{ env.POSTGRES_USER }}:${{ env.POSTGRES_PASSWORD }}@${{ env.DATABASE_HOST }}/${{ env.POSTGRES_DB }} calcom
- name: Cleanup
run: |

View File

@@ -23,7 +23,8 @@ COPY calcom/package.json calcom/yarn.lock calcom/turbo.json ./
COPY calcom/apps/web ./apps/web
COPY calcom/packages ./packages
RUN yarn install --frozen-lockfile
RUN yarn config set network-timeout 1000000000 -g && \
yarn install --frozen-lockfile
RUN yarn build

View File

@@ -1,5 +1,5 @@
# Use postgres/example user/password credentials
version: '3.1'
version: '3.8'
volumes:
database-data:
@@ -11,6 +11,7 @@ networks:
services:
database:
container_name: database
image: postgres
restart: always
volumes:
@@ -24,12 +25,12 @@ services:
context: .
dockerfile: Dockerfile
args:
- NEXT_PUBLIC_WEBAPP_URL=${NEXT_PUBLIC_WEBAPP_URL}
- NEXT_PUBLIC_LICENSE_CONSENT=${NEXT_PUBLIC_LICENSE_CONSENT}
- CALCOM_TELEMETRY_DISABLED=${CALCOM_TELEMETRY_DISABLED}
- NEXTAUTH_SECRET=${NEXTAUTH_SECRET}
- CALENDSO_ENCRYPTION_KEY=${CALENDSO_ENCRYPTION_KEY}
- DATABASE_URL=${DATABASE_URL}
NEXT_PUBLIC_WEBAPP_URL: ${NEXT_PUBLIC_WEBAPP_URL}
NEXT_PUBLIC_LICENSE_CONSENT: ${NEXT_PUBLIC_LICENSE_CONSENT}
CALCOM_TELEMETRY_DISABLE: ${CALCOM_TELEMETRY_DISABLED}
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
CALENDSO_ENCRYPTION_KEY: ${CALENDSO_ENCRYPTION_KEY}
DATABASE_URL: ${DATABASE_URL}
network: stack
restart: always
networks: