From f44a46aeca89b53e67c62dc2919831f7bea7f8ba Mon Sep 17 00:00:00 2001 From: phaleth <29838606+phaleth@users.noreply.github.com> Date: Tue, 6 Aug 2024 19:33:03 +0200 Subject: [PATCH] website-deployment: introduce koyeb deployment and keep previous fastly cache purge --- .github/workflows/deployment.yml | 34 ++++++++++++++++++++++++++++++++ packages/website/Dockerfile | 12 ++++++----- 2 files changed, 41 insertions(+), 5 deletions(-) create mode 100644 .github/workflows/deployment.yml diff --git a/.github/workflows/deployment.yml b/.github/workflows/deployment.yml new file mode 100644 index 00000000..09e33e21 --- /dev/null +++ b/.github/workflows/deployment.yml @@ -0,0 +1,34 @@ +name: koyeb.com deployment + +on: + push: + branches: ["master"] + +jobs: + deploy-website: + if: github.repository_owner == 'primatejs' + runs-on: ubuntu-latest + + steps: + - name: Install Koyeb CLI + uses: koyeb-community/install-koyeb-cli@v2 + with: + api_token: "${{ secrets.KOYEB_API_TOKEN }}" + - name: Build and deploy to Koyeb + uses: koyeb/action-git-deploy@v1 + with: + app-name: "website" + service-name: "primate" + service-instance-type: "free" + service-regions: "fra" + service-ports: "6161:http" + service-routes: "/:6161" + skip-cache: true + git-workdir: "./" + git-branch: "master" + git-builder: "docker" + git-docker-dockerfile: "./packages/website/Dockerfile" + - name: "Purge Fastly cache" + run: | + curl -X POST -H "Fastly-Key: ${{ secrets.FASTLY_API_KEY }}" \ + "https://api.fastly.com/service/${{ secrets.FASTLY_SERVICE_ID }}/purge_all" diff --git a/packages/website/Dockerfile b/packages/website/Dockerfile index a736bcd5..903baa24 100644 --- a/packages/website/Dockerfile +++ b/packages/website/Dockerfile @@ -1,8 +1,10 @@ -FROM denoland/deno:alpine +FROM node-alpine -COPY ./packages/website /app/website -COPY ./docs /app/website/components/content +WORKDIR /app -WORKDIR /app/website +COPY ./packages/website . +COPY ./docs ./components/content -CMD ["deno", "run", "--allow-all", "npm:primate", "serve"] +RUN npm i + +CMD ["npx", "primate", "serve"]