Compare commits

...

3 Commits

Author SHA1 Message Date
66f2a8406e Remove workflow_dispatch 2023-11-01 18:11:10 +03:00
088f0260d0 Add a new line 2023-11-01 18:09:31 +03:00
63a13b3bba Add merge-build 2023-11-01 18:06:25 +03:00

61
.github/workflows/merge-build.yml vendored Normal file
View File

@ -0,0 +1,61 @@
name: 4testing multiarch-build
on:
pull_request:
types:
- closed
env:
DOCKER_PATH: "/install/docker"
REPO: "onlyoffice"
DOCKER_IMAGE_PREFIX: "4testing-docspace"
DOCKERFILE: "Dockerfile.app"
FILE: "build.yml"
PRODUCT_NAME: "4testing-docspace-api"
REGISTRY_URL: "https://hub.docker.com/v2/repositories"
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
platform: [linux/amd64]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Free Disk Space
run: |
sudo rm -rf /usr/local/lib/android /opt/ghc
sudo docker image prune --all --force
- name: Login to DockerHub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build 4testing
if: ${{startsWith(github.head_ref, 'hotfix/v') || startsWith(github.head_ref, 'release/v')}}
run: |
cd .${DOCKER_PATH}
DOCKER_TAG=$(curl -s -H -X ${REGISTRY_URL}/${REPO}/${PRODUCT_NAME}/tags/?page_size=100 | jq -r '.results|.[]|.name' | grep -E '^[0-9]+(\.[0-9]+){3}$' | head -n1)
DOCKER_IMAGES=$(grep -oP '(?<=image: ")[^"]+' $FILE | sed -e "s/\${REPO}/$REPO/g ; s/\${DOCKER_IMAGE_PREFIX}/$DOCKER_IMAGE_PREFIX/g ; s/\${DOCKER_TAG}/$DOCKER_TAG/g" | tr '\n' ' ' )
IFS=" " read -a IMAGES <<< "$DOCKER_IMAGES"
for IMAGE in ${IMAGES[@]}; do
NEW_IMAGE=$(echo $IMAGE | sed -Ee "s/4testing-//; s/\.[0-9]+$//")
NEW_IMAGE_LATEST=$(echo $IMAGE | sed -Ee "s/4testing-//; s/$DOCKER_TAG/latest/")
docker pull "$IMAGE"
docker tag "$IMAGE" "$NEW_IMAGE"
docker tag "$IMAGE" "$NEW_IMAGE_LATEST"
docker push "$NEW_IMAGE"
docker push "$NEW_IMAGE_LATEST"
done
shell: bash