forked from github/plane
wip
This commit is contained in:
parent
acc8cf5ac0
commit
8845ffe90a
408
.github/workflows/build-branch.yml
vendored
408
.github/workflows/build-branch.yml
vendored
@ -1,9 +1,6 @@
|
||||
name: Branch Build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- webhook-test
|
||||
pull_request:
|
||||
types:
|
||||
- closed
|
||||
@ -19,7 +16,7 @@ env:
|
||||
|
||||
jobs:
|
||||
branch_build_setup:
|
||||
if: ${{ (github.event_name == 'pull_request' && github.event.action =='closed' && github.event.pull_request.merged == true) || (github.event_name == 'push' ) }}
|
||||
if: ${{ (github.event_name == 'pull_request' && github.event.action =='closed' && github.event.pull_request.merged == true) }}
|
||||
name: Branch Build Setup
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
@ -32,215 +29,216 @@ jobs:
|
||||
with:
|
||||
name: proxy-src-code
|
||||
path: ./nginx
|
||||
# - name: Uploading Backend Source
|
||||
# uses: actions/upload-artifact@v3
|
||||
# with:
|
||||
# name: backend-src-code
|
||||
# path: ./apiserver
|
||||
# - name: Uploading Web Source
|
||||
# uses: actions/upload-artifact@v3
|
||||
# with:
|
||||
# name: web-src-code
|
||||
# path: |
|
||||
# ./
|
||||
# !./apiserver
|
||||
# !./nginx
|
||||
# !./deploy
|
||||
# !./space
|
||||
# - name: Uploading Space Source
|
||||
# uses: actions/upload-artifact@v3
|
||||
# with:
|
||||
# name: space-src-code
|
||||
# path: |
|
||||
# ./
|
||||
# !./apiserver
|
||||
# !./nginx
|
||||
# !./deploy
|
||||
# !./web
|
||||
- name: Uploading Backend Source
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: backend-src-code
|
||||
path: ./apiserver
|
||||
- name: Uploading Web Source
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: web-src-code
|
||||
path: |
|
||||
./
|
||||
!./apiserver
|
||||
!./nginx
|
||||
!./deploy
|
||||
!./space
|
||||
- name: Uploading Space Source
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: space-src-code
|
||||
path: |
|
||||
./
|
||||
!./apiserver
|
||||
!./nginx
|
||||
!./deploy
|
||||
!./web
|
||||
outputs:
|
||||
gh_branch_name: ${{ env.TARGET_BRANCH }}
|
||||
|
||||
# branch_build_push_frontend:
|
||||
# runs-on: ubuntu-20.04
|
||||
# needs: [branch_build_setup]
|
||||
# env:
|
||||
# FRONTEND_TAG: ${{ secrets.DOCKERHUB_USERNAME }}/plane-frontend-private:${{ needs.branch_build_setup.outputs.gh_branch_name }}
|
||||
# steps:
|
||||
# - name: Set Frontend Docker Tag
|
||||
# run: |
|
||||
# if [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "master" ]; then
|
||||
# TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-frontend-private:latest
|
||||
# elif [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "release" ] || [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "preview" ]; then
|
||||
# TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-frontend-private:preview,${{ secrets.DOCKERHUB_USERNAME }}/plane-frontend:preview
|
||||
# else
|
||||
# TAG=${{ env.FRONTEND_TAG }}
|
||||
# fi
|
||||
# echo "FRONTEND_TAG=${TAG}" >> $GITHUB_ENV
|
||||
# - name: Set up Docker Buildx
|
||||
# uses: docker/setup-buildx-action@v2.5.0
|
||||
|
||||
# - name: Login to Docker Hub
|
||||
# uses: docker/login-action@v2.1.0
|
||||
# with:
|
||||
# username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
# password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
# - name: Downloading Web Source Code
|
||||
# uses: actions/download-artifact@v3
|
||||
# with:
|
||||
# name: web-src-code
|
||||
|
||||
# - name: Build and Push Frontend to Docker Container Registry
|
||||
# uses: docker/build-push-action@v4.0.0
|
||||
# with:
|
||||
# context: .
|
||||
# file: ./web/Dockerfile.web
|
||||
# platforms: linux/amd64
|
||||
# tags: ${{ env.FRONTEND_TAG }}
|
||||
# push: true
|
||||
# env:
|
||||
# DOCKER_BUILDKIT: 1
|
||||
# DOCKER_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
# DOCKER_PASSWORD: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
# branch_build_push_space:
|
||||
# runs-on: ubuntu-20.04
|
||||
# needs: [branch_build_setup]
|
||||
# env:
|
||||
# SPACE_TAG: ${{ secrets.DOCKERHUB_USERNAME }}/plane-space-private:${{ needs.branch_build_setup.outputs.gh_branch_name }}
|
||||
# steps:
|
||||
# - name: Set Space Docker Tag
|
||||
# run: |
|
||||
# if [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "master" ]; then
|
||||
# TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-space:latest
|
||||
# elif [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "release" ] || [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "preview" ]; then
|
||||
# TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-space-private:preview,${{ secrets.DOCKERHUB_USERNAME }}/plane-space:preview
|
||||
# else
|
||||
# TAG=${{ env.SPACE_TAG }}
|
||||
# fi
|
||||
# echo "SPACE_TAG=${TAG}" >> $GITHUB_ENV
|
||||
# - name: Set up Docker Buildx
|
||||
# uses: docker/setup-buildx-action@v2.5.0
|
||||
|
||||
# - name: Login to Docker Hub
|
||||
# uses: docker/login-action@v2.1.0
|
||||
# with:
|
||||
# username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
# password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
# - name: Downloading Space Source Code
|
||||
# uses: actions/download-artifact@v3
|
||||
# with:
|
||||
# name: space-src-code
|
||||
|
||||
# - name: Build and Push Space to Docker Hub
|
||||
# uses: docker/build-push-action@v4.0.0
|
||||
# with:
|
||||
# context: .
|
||||
# file: ./space/Dockerfile.space
|
||||
# platforms: linux/amd64
|
||||
# tags: ${{ env.SPACE_TAG }}
|
||||
# push: true
|
||||
# env:
|
||||
# DOCKER_BUILDKIT: 1
|
||||
# DOCKER_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
# DOCKER_PASSWORD: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
# branch_build_push_backend:
|
||||
# runs-on: ubuntu-20.04
|
||||
# needs: [branch_build_setup]
|
||||
# env:
|
||||
# BACKEND_TAG: ${{ secrets.DOCKERHUB_USERNAME }}/plane-backend-private:${{ needs.branch_build_setup.outputs.gh_branch_name }}
|
||||
# steps:
|
||||
# - name: Set Backend Docker Tag
|
||||
# run: |
|
||||
# if [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "master" ]; then
|
||||
# TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-backend-private:latest
|
||||
# elif [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "release" ] || [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "preview" ]; then
|
||||
# TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-backend-private:preview,${{ secrets.DOCKERHUB_USERNAME }}/plane-backend:preview
|
||||
# else
|
||||
# TAG=${{ env.BACKEND_TAG }}
|
||||
# fi
|
||||
# echo "BACKEND_TAG=${TAG}" >> $GITHUB_ENV
|
||||
# - name: Set up Docker Buildx
|
||||
# uses: docker/setup-buildx-action@v2.5.0
|
||||
|
||||
# - name: Login to Docker Hub
|
||||
# uses: docker/login-action@v2.1.0
|
||||
# with:
|
||||
# username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
# password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
# - name: Downloading Backend Source Code
|
||||
# uses: actions/download-artifact@v3
|
||||
# with:
|
||||
# name: backend-src-code
|
||||
|
||||
# - name: Build and Push Backend to Docker Hub
|
||||
# uses: docker/build-push-action@v4.0.0
|
||||
# with:
|
||||
# context: .
|
||||
# file: ./Dockerfile.api
|
||||
# platforms: linux/amd64
|
||||
# push: true
|
||||
# tags: ${{ env.BACKEND_TAG }}
|
||||
# env:
|
||||
# DOCKER_BUILDKIT: 1
|
||||
# DOCKER_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
# DOCKER_PASSWORD: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
# branch_build_push_proxy:
|
||||
# runs-on: ubuntu-20.04
|
||||
# needs: [branch_build_setup]
|
||||
# env:
|
||||
# PROXY_TAG: ${{ secrets.DOCKERHUB_USERNAME }}/plane-proxy-private:${{ needs.branch_build_setup.outputs.gh_branch_name }}
|
||||
# steps:
|
||||
# - name: Set Proxy Docker Tag
|
||||
# run: |
|
||||
# if [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "master" ]; then
|
||||
# TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-proxy-private:latest
|
||||
# elif [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "release" ] || [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "preview" ]; then
|
||||
# TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-proxy-private:preview,${{ secrets.DOCKERHUB_USERNAME }}/plane-proxy:preview
|
||||
# else
|
||||
# TAG=${{ env.PROXY_TAG }}
|
||||
# fi
|
||||
# echo "PROXY_TAG=${TAG}" >> $GITHUB_ENV
|
||||
# - name: Set up Docker Buildx
|
||||
# uses: docker/setup-buildx-action@v2.5.0
|
||||
|
||||
# - name: Login to Docker Hub
|
||||
# uses: docker/login-action@v2.1.0
|
||||
# with:
|
||||
# username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
# password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
# - name: Downloading Proxy Source Code
|
||||
# uses: actions/download-artifact@v3
|
||||
# with:
|
||||
# name: proxy-src-code
|
||||
|
||||
# - name: Build and Push Plane-Proxy to Docker Hub
|
||||
# uses: docker/build-push-action@v4.0.0
|
||||
# with:
|
||||
# context: .
|
||||
# file: ./Dockerfile
|
||||
# platforms: linux/amd64
|
||||
# tags: ${{ env.PROXY_TAG }}
|
||||
# push: true
|
||||
# env:
|
||||
# DOCKER_BUILDKIT: 1
|
||||
# DOCKER_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
# DOCKER_PASSWORD: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
branch_build_success_webhook:
|
||||
branch_build_push_frontend:
|
||||
name: Branch Build Push Frontend
|
||||
runs-on: ubuntu-20.04
|
||||
needs: [branch_build_setup]
|
||||
# needs: [branch_build_setup, branch_build_push_frontend, branch_build_push_space, branch_build_push_backend, branch_build_push_proxy]
|
||||
if: ${{ (github.event_name == 'pull_request' && github.event.action =='closed' && github.event.pull_request.merged == true) || (github.event_name == 'push' ) }}
|
||||
env:
|
||||
FRONTEND_TAG: ${{ secrets.DOCKERHUB_USERNAME }}/plane-frontend-private:${{ needs.branch_build_setup.outputs.gh_branch_name }}
|
||||
steps:
|
||||
- name: Set Frontend Docker Tag
|
||||
run: |
|
||||
if [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "master" ]; then
|
||||
TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-frontend-private:latest
|
||||
elif [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "release" ] || [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "preview" ]; then
|
||||
TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-frontend-private:preview,${{ secrets.DOCKERHUB_USERNAME }}/plane-frontend:preview
|
||||
else
|
||||
TAG=${{ env.FRONTEND_TAG }}
|
||||
fi
|
||||
echo "FRONTEND_TAG=${TAG}" >> $GITHUB_ENV
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v2.5.0
|
||||
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v2.1.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Downloading Web Source Code
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: web-src-code
|
||||
|
||||
- name: Build and Push Frontend to Docker Container Registry
|
||||
uses: docker/build-push-action@v4.0.0
|
||||
with:
|
||||
context: .
|
||||
file: ./web/Dockerfile.web
|
||||
platforms: linux/amd64
|
||||
tags: ${{ env.FRONTEND_TAG }}
|
||||
push: true
|
||||
env:
|
||||
DOCKER_BUILDKIT: 1
|
||||
DOCKER_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
DOCKER_PASSWORD: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
branch_build_push_space:
|
||||
name: Branch Build Push Space
|
||||
runs-on: ubuntu-20.04
|
||||
needs: [branch_build_setup]
|
||||
env:
|
||||
SPACE_TAG: ${{ secrets.DOCKERHUB_USERNAME }}/plane-space-private:${{ needs.branch_build_setup.outputs.gh_branch_name }}
|
||||
steps:
|
||||
- name: Set Space Docker Tag
|
||||
run: |
|
||||
if [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "master" ]; then
|
||||
TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-space:latest
|
||||
elif [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "release" ] || [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "preview" ]; then
|
||||
TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-space-private:preview,${{ secrets.DOCKERHUB_USERNAME }}/plane-space:preview
|
||||
else
|
||||
TAG=${{ env.SPACE_TAG }}
|
||||
fi
|
||||
echo "SPACE_TAG=${TAG}" >> $GITHUB_ENV
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v2.5.0
|
||||
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v2.1.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Downloading Space Source Code
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: space-src-code
|
||||
|
||||
- name: Build and Push Space to Docker Hub
|
||||
uses: docker/build-push-action@v4.0.0
|
||||
with:
|
||||
context: .
|
||||
file: ./space/Dockerfile.space
|
||||
platforms: linux/amd64
|
||||
tags: ${{ env.SPACE_TAG }}
|
||||
push: true
|
||||
env:
|
||||
DOCKER_BUILDKIT: 1
|
||||
DOCKER_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
DOCKER_PASSWORD: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
branch_build_push_backend:
|
||||
name: Branch Build Push Backend
|
||||
runs-on: ubuntu-20.04
|
||||
needs: [branch_build_setup]
|
||||
env:
|
||||
BACKEND_TAG: ${{ secrets.DOCKERHUB_USERNAME }}/plane-backend-private:${{ needs.branch_build_setup.outputs.gh_branch_name }}
|
||||
steps:
|
||||
- name: Set Backend Docker Tag
|
||||
run: |
|
||||
if [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "master" ]; then
|
||||
TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-backend-private:latest
|
||||
elif [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "release" ] || [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "preview" ]; then
|
||||
TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-backend-private:preview,${{ secrets.DOCKERHUB_USERNAME }}/plane-backend:preview
|
||||
else
|
||||
TAG=${{ env.BACKEND_TAG }}
|
||||
fi
|
||||
echo "BACKEND_TAG=${TAG}" >> $GITHUB_ENV
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v2.5.0
|
||||
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v2.1.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Downloading Backend Source Code
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: backend-src-code
|
||||
|
||||
- name: Build and Push Backend to Docker Hub
|
||||
uses: docker/build-push-action@v4.0.0
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile.api
|
||||
platforms: linux/amd64
|
||||
push: true
|
||||
tags: ${{ env.BACKEND_TAG }}
|
||||
env:
|
||||
DOCKER_BUILDKIT: 1
|
||||
DOCKER_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
DOCKER_PASSWORD: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
branch_build_push_proxy:
|
||||
name: Branch Build Push Proxy
|
||||
runs-on: ubuntu-20.04
|
||||
needs: [branch_build_setup]
|
||||
env:
|
||||
PROXY_TAG: ${{ secrets.DOCKERHUB_USERNAME }}/plane-proxy-private:${{ needs.branch_build_setup.outputs.gh_branch_name }}
|
||||
steps:
|
||||
- name: Set Proxy Docker Tag
|
||||
run: |
|
||||
if [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "master" ]; then
|
||||
TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-proxy-private:latest
|
||||
elif [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "release" ] || [ "${{ needs.branch_build_setup.outputs.gh_branch_name }}" == "preview" ]; then
|
||||
TAG=${{ secrets.DOCKERHUB_USERNAME }}/plane-proxy-private:preview,${{ secrets.DOCKERHUB_USERNAME }}/plane-proxy:preview
|
||||
else
|
||||
TAG=${{ env.PROXY_TAG }}
|
||||
fi
|
||||
echo "PROXY_TAG=${TAG}" >> $GITHUB_ENV
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v2.5.0
|
||||
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v2.1.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
- name: Downloading Proxy Source Code
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: proxy-src-code
|
||||
|
||||
- name: Build and Push Plane-Proxy to Docker Hub
|
||||
uses: docker/build-push-action@v4.0.0
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile
|
||||
platforms: linux/amd64
|
||||
tags: ${{ env.PROXY_TAG }}
|
||||
push: true
|
||||
env:
|
||||
DOCKER_BUILDKIT: 1
|
||||
DOCKER_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
DOCKER_PASSWORD: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
branch_build_success_webhook:
|
||||
name: Branch Build Success Webhook
|
||||
runs-on: ubuntu-20.04
|
||||
needs: [branch_build_setup, branch_build_push_frontend, branch_build_push_space, branch_build_push_backend, branch_build_push_proxy]
|
||||
if: ${{ secrets.WEBHOOK_URL && (github.event_name == 'pull_request' && github.event.action =='closed' && github.event.pull_request.merged == true) }}
|
||||
steps:
|
||||
- name: Send Success Webhook
|
||||
uses: distributhor/workflow-webhook@v3
|
||||
with:
|
||||
webhook_url: https://webhook.site/bac8185e-cb2e-4d32-8ee9-a674542c0d89
|
||||
# webhook_url: ${{ secrets.WEBHOOK_URL }}
|
||||
webhook_url: ${{ secrets.WEBHOOK_URL }}
|
||||
data: '{"branch": "${{ needs.branch_build_setup.outputs.gh_branch_name }}", "status": "success" }'
|
||||
# webhook_secret: "123123"
|
||||
# webhook_secret: ${{ secrets.WEBHOOK_SECRET }}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user