2025-01-04 14:00:01 +01:00
|
|
|
name: Build on push
|
|
|
|
run-name: Build on push
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- master
|
|
|
|
|
|
|
|
jobs:
|
2025-01-17 19:45:18 +01:00
|
|
|
prepare:
|
|
|
|
runs-on: [runner]
|
|
|
|
container: git.sh-edraft.de/sh-edraft.de/act-runner:latest
|
|
|
|
outputs:
|
|
|
|
build_version: ${{ steps.prepare.outputs.build_version }}
|
|
|
|
steps:
|
|
|
|
- name: Clone Repository
|
|
|
|
uses: https://github.com/actions/checkout@v3
|
|
|
|
with:
|
|
|
|
token: ${{ secrets.CI_ACCESS_TOKEN }}
|
|
|
|
|
|
|
|
- name: Get Date and Build Number
|
|
|
|
run: |
|
|
|
|
DATE=$(date +'%Y.%m.%d')
|
|
|
|
git fetch --tags
|
|
|
|
TAG_COUNT=$(git tag -l "${DATE}.*" | wc -l)
|
|
|
|
BUILD_NUMBER=$(($TAG_COUNT + 1))
|
|
|
|
BUILD_VERSION="${DATE}.${BUILD_NUMBER}"
|
|
|
|
echo "build_version=$BUILD_VERSION" >> $GITHUB_OUTPUT
|
|
|
|
echo "BUILD_VERSION=$BUILD_VERSION" >> $GITHUB_ENV
|
|
|
|
|
|
|
|
- name: Create Git Tag for Build
|
|
|
|
run: |
|
|
|
|
git config user.name "ci"
|
|
|
|
git config user.email "dev@sh-edratf.de"
|
|
|
|
git tag ${{ env.BUILD_VERSION }}
|
|
|
|
git push origin ${{ env.BUILD_VERSION }}
|
|
|
|
|
|
|
|
- name: Save Version Info
|
|
|
|
run: |
|
|
|
|
echo "VERSION = \"${{ env.BUILD_VERSION }}\"" > api/version.py
|
|
|
|
|
2025-01-04 14:00:01 +01:00
|
|
|
build-api:
|
|
|
|
runs-on: [runner]
|
2025-01-17 19:45:18 +01:00
|
|
|
needs: [prepare]
|
2025-01-04 14:04:56 +01:00
|
|
|
container: git.sh-edraft.de/sh-edraft.de/act-runner:latest
|
2025-01-04 14:00:01 +01:00
|
|
|
steps:
|
|
|
|
- name: Clone Repository
|
|
|
|
uses: https://github.com/actions/checkout@v3
|
|
|
|
with:
|
|
|
|
token: ${{ secrets.CI_ACCESS_TOKEN }}
|
|
|
|
|
|
|
|
- name: Build docker
|
|
|
|
run: |
|
2025-01-04 14:09:17 +01:00
|
|
|
cd api
|
2025-01-17 19:45:18 +01:00
|
|
|
docker build -t git.sh-edraft.de/sh-edraft.de/open-redirect-api:${{ needs.prepare.outputs.build_version }} .
|
2025-01-04 14:00:01 +01:00
|
|
|
|
|
|
|
- name: Login to registry git.sh-edraft.de
|
|
|
|
uses: https://github.com/docker/login-action@v1
|
|
|
|
with:
|
|
|
|
registry: git.sh-edraft.de
|
|
|
|
username: ${{ secrets.CI_USERNAME }}
|
|
|
|
password: ${{ secrets.CI_ACCESS_TOKEN }}
|
|
|
|
|
|
|
|
- name: Push image
|
|
|
|
run: |
|
2025-01-17 19:45:18 +01:00
|
|
|
docker push git.sh-edraft.de/sh-edraft.de/open-redirect-api:${{ needs.prepare.outputs.build_version }}
|
|
|
|
|
2025-01-10 12:27:12 +01:00
|
|
|
build-redirector:
|
|
|
|
runs-on: [runner]
|
2025-01-17 19:45:18 +01:00
|
|
|
needs: [prepare]
|
2025-01-10 12:27:12 +01:00
|
|
|
container: git.sh-edraft.de/sh-edraft.de/act-runner:latest
|
|
|
|
steps:
|
|
|
|
- name: Clone Repository
|
|
|
|
uses: https://github.com/actions/checkout@v3
|
|
|
|
with:
|
|
|
|
token: ${{ secrets.CI_ACCESS_TOKEN }}
|
|
|
|
|
|
|
|
- name: Build docker
|
|
|
|
run: |
|
|
|
|
cd api
|
2025-01-17 19:45:18 +01:00
|
|
|
docker build -f dockerfile_redirector -t git.sh-edraft.de/sh-edraft.de/open-redirect-redirector:${{ needs.prepare.outputs.build_version }} .
|
2025-01-10 12:27:12 +01:00
|
|
|
|
|
|
|
- name: Login to registry git.sh-edraft.de
|
|
|
|
uses: https://github.com/docker/login-action@v1
|
|
|
|
with:
|
|
|
|
registry: git.sh-edraft.de
|
|
|
|
username: ${{ secrets.CI_USERNAME }}
|
|
|
|
password: ${{ secrets.CI_ACCESS_TOKEN }}
|
|
|
|
|
|
|
|
- name: Push image
|
|
|
|
run: |
|
2025-01-17 19:45:18 +01:00
|
|
|
docker push git.sh-edraft.de/sh-edraft.de/open-redirect-redirector:${{ needs.prepare.outputs.build_version }}
|
2025-01-04 14:00:01 +01:00
|
|
|
|
|
|
|
build-web:
|
|
|
|
runs-on: [runner]
|
2025-01-17 19:45:18 +01:00
|
|
|
needs: [prepare]
|
2025-01-04 14:04:56 +01:00
|
|
|
container: git.sh-edraft.de/sh-edraft.de/act-runner:latest
|
2025-01-04 14:00:01 +01:00
|
|
|
steps:
|
|
|
|
- name: Clone Repository
|
|
|
|
uses: https://github.com/actions/checkout@v3
|
|
|
|
with:
|
|
|
|
token: ${{ secrets.CI_ACCESS_TOKEN }}
|
|
|
|
|
|
|
|
- name: Prepare web build
|
|
|
|
run: |
|
2025-01-04 14:09:17 +01:00
|
|
|
cd web
|
2025-01-04 14:00:01 +01:00
|
|
|
npm ci
|
|
|
|
|
|
|
|
- name: Build web
|
|
|
|
run: |
|
2025-01-04 14:09:17 +01:00
|
|
|
cd web
|
2025-01-04 14:00:01 +01:00
|
|
|
npm run build
|
|
|
|
|
|
|
|
- name: Build docker
|
|
|
|
run: |
|
2025-01-04 14:09:17 +01:00
|
|
|
cd web
|
2025-01-17 19:45:18 +01:00
|
|
|
docker build -t git.sh-edraft.de/sh-edraft.de/open-redirect-web:${{ needs.prepare.outputs.build_version }} .
|
2025-01-04 14:00:01 +01:00
|
|
|
|
|
|
|
- name: Login to registry git.sh-edraft.de
|
|
|
|
uses: https://github.com/docker/login-action@v1
|
|
|
|
with:
|
|
|
|
registry: git.sh-edraft.de
|
|
|
|
username: ${{ secrets.CI_USERNAME }}
|
|
|
|
password: ${{ secrets.CI_ACCESS_TOKEN }}
|
|
|
|
|
|
|
|
- name: Push image
|
|
|
|
run: |
|
2025-01-17 19:45:18 +01:00
|
|
|
docker push git.sh-edraft.de/sh-edraft.de/open-redirect-web:${{ needs.prepare.outputs.build_version }}
|