summary refs log tree commit diff
diff options
context:
space:
mode:
authorFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-08-13 00:14:04 +0200
committerGitHub <noreply@github.com>2021-08-13 00:14:04 +0200
commit899012f05789c40fa2aeba56b3e92dabe532832d (patch)
tree936edb86fb0663ba1a80b3af8e2f0f924ba2b784
parentCreate README.md (diff)
parentMerge branch 'fosscord:master' into master (diff)
downloadserver-899012f05789c40fa2aeba56b3e92dabe532832d.tar.xz
Merge pull request #256 from luth31/master
[Docker] Publish cdn, gateway and api when file change
-rw-r--r--.github/workflows/docker-publish-api.yml47
-rw-r--r--.github/workflows/docker-publish-cdn.yml47
-rw-r--r--.github/workflows/docker-publish-gateway.yml47
3 files changed, 141 insertions, 0 deletions
diff --git a/.github/workflows/docker-publish-api.yml b/.github/workflows/docker-publish-api.yml
new file mode 100644
index 00000000..405faae4
--- /dev/null
+++ b/.github/workflows/docker-publish-api.yml
@@ -0,0 +1,47 @@
+name: docker-publish-api
+
+on:
+  push:
+    paths:
+      - 'api/**'
+
+jobs:
+  docker-api:
+    runs-on: ubuntu-latest
+    steps:
+      -
+        name: Checkout
+        uses: actions/checkout@v2
+      -
+        name: Set up Docker Buildx
+        uses: docker/setup-buildx-action@v1
+      -
+        name: Cache Docker layers
+        uses: actions/cache@v2
+        with:
+          path: /tmp/.buildx-cache/api
+          key: ${{ runner.os }}-buildx-api-${{ github.sha }}
+          restore-keys: |
+            ${{ runner.os }}-buildx-api-
+      -
+        name: Login to DockerHub
+        uses: docker/login-action@v1
+        with:
+          username: ${{ secrets.DOCKERHUB_USERNAME }}
+          password: ${{ secrets.DOCKERHUB_TOKEN }}
+      -
+        name: Build and push
+        uses: docker/build-push-action@v2
+        with:
+          context: ./api
+          push: true
+          tags: ${{ secrets.DOCKERHUB_TAGS_API }}
+          cache-from: type=local,src=/tmp/.buildx-cache/api
+          cache-to: type=local,dest=/tmp/.buildx-cache-new/api
+      -
+        # Hackfix to cleanup cache; replace after buildx 0.6 and BuildKit 0.9 are GA
+        # https://github.com/docker/build-push-action/pull/406#issuecomment-879184394
+        name: Move cache fix
+        run: |
+          rm -rf /tmp/.buildx-cache/api
+          mv /tmp/.buildx-cache-new/api /tmp/.buildx-cache/api
\ No newline at end of file
diff --git a/.github/workflows/docker-publish-cdn.yml b/.github/workflows/docker-publish-cdn.yml
new file mode 100644
index 00000000..9b3f6a64
--- /dev/null
+++ b/.github/workflows/docker-publish-cdn.yml
@@ -0,0 +1,47 @@
+name: docker-publish-cdn
+
+on:
+  push:
+    paths:
+      - 'cdn/**'
+
+jobs:
+  docker-cdn:
+    runs-on: ubuntu-latest
+    steps:
+      -
+        name: Checkout
+        uses: actions/checkout@v2
+      -
+        name: Set up Docker Buildx
+        uses: docker/setup-buildx-action@v1
+      -
+        name: Cache Docker layers
+        uses: actions/cache@v2
+        with:
+          path: /tmp/.buildx-cache/cdn
+          key: ${{ runner.os }}-buildx-cdn-${{ github.sha }}
+          restore-keys: |
+            ${{ runner.os }}-buildx-cdn-
+      -
+        name: Login to DockerHub
+        uses: docker/login-action@v1
+        with:
+          username: ${{ secrets.DOCKERHUB_USERNAME }}
+          password: ${{ secrets.DOCKERHUB_TOKEN }}
+      -
+        name: Build and push
+        uses: docker/build-push-action@v2
+        with:
+          context: ./cdn
+          push: true
+          tags: ${{ secrets.DOCKERHUB_TAGS_CDN }}
+          cache-from: type=local,src=/tmp/.buildx-cache/cdn
+          cache-to: type=local,dest=/tmp/.buildx-cache-new/cdn
+      -
+        # Hackfix to cleanup cache; replace after buildx 0.6 and BuildKit 0.9 are GA
+        # https://github.com/docker/build-push-action/pull/406#issuecomment-879184394
+        name: Move cache fix
+        run: |
+          rm -rf /tmp/.buildx-cache/cdn
+          mv /tmp/.buildx-cache-new/cdn /tmp/.buildx-cache/cdn
\ No newline at end of file
diff --git a/.github/workflows/docker-publish-gateway.yml b/.github/workflows/docker-publish-gateway.yml
new file mode 100644
index 00000000..eac1052b
--- /dev/null
+++ b/.github/workflows/docker-publish-gateway.yml
@@ -0,0 +1,47 @@
+name: docker-publish-gw
+
+on:
+  push:
+    paths:
+      - 'gateway/**'
+
+jobs:
+  docker-gw:
+    runs-on: ubuntu-latest
+    steps:
+      -
+        name: Checkout
+        uses: actions/checkout@v2
+      -
+        name: Set up Docker Buildx
+        uses: docker/setup-buildx-action@v1
+      -
+        name: Cache Docker layers
+        uses: actions/cache@v2
+        with:
+          path: /tmp/.buildx-cache/gw
+          key: ${{ runner.os }}-buildx-gw-${{ github.sha }}
+          restore-keys: |
+            ${{ runner.os }}-buildx-gw-
+      -
+        name: Login to DockerHub
+        uses: docker/login-action@v1
+        with:
+          username: ${{ secrets.DOCKERHUB_USERNAME }}
+          password: ${{ secrets.DOCKERHUB_TOKEN }}
+      -
+        name: Build and push
+        uses: docker/build-push-action@v2
+        with:
+          context: ./gateway
+          push: true
+          tags: ${{ secrets.DOCKERHUB_TAGS_GW }}
+          cache-from: type=local,src=/tmp/.buildx-cache/gw
+          cache-to: type=local,dest=/tmp/.buildx-cache-new/gw
+      -
+        # Hackfix to cleanup cache; replace after buildx 0.6 and BuildKit 0.9 are GA
+        # https://github.com/docker/build-push-action/pull/406#issuecomment-879184394
+        name: Move cache fix
+        run: |
+          rm -rf /tmp/.buildx-cache/gw
+          mv /tmp/.buildx-cache-new/gw /tmp/.buildx-cache/gw
\ No newline at end of file