Skip to content

Commit 69400c9

Browse files
tootsvitoyucepi
authored andcommitted
Allow docker build w/o docker push on forks.
1 parent 6b09538 commit 69400c9

File tree

3 files changed

+20
-3
lines changed

3 files changed

+20
-3
lines changed

.github/scripts/build-docker-alpine.sh

+4
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,10 @@ docker build \
2222
--push \
2323
.
2424

25+
if test -z "${PUBLISH_DOCKER_IMAGE}"; then
26+
exit 0
27+
fi
28+
2529
docker pull "savonet/liquidsoap-ci-build:${TAG}_alpine_${ARCHITECTURE}"
2630

2731
docker tag \

.github/scripts/build-docker.sh

+4
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@ docker build \
2626
--push \
2727
.
2828

29+
if test -z "${PUBLISH_DOCKER_IMAGE}"; then
30+
exit 0
31+
fi
32+
2933
docker pull "savonet/liquidsoap-ci-build:${TAG}_${ARCHITECTURE}"
3034

3135
docker tag \

.github/workflows/ci.yml

+12-3
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ jobs:
3131
is_release: ${{ steps.build_details.outputs.is_release }}
3232
is_rolling_release: ${{ steps.build_details.outputs.is_rolling_release }}
3333
is_fork: ${{ steps.build_details.outputs.is_fork }}
34+
publish_docker_image: ${{ steps.build_details.outputs.is_fork == 'true' && github.event_name != 'merge_group' }}
3435
build_os: ${{ steps.build_details.outputs.build_os }}
3536
build_platform: ${{ steps.build_details.outputs.build_platform }}
3637
build_include: ${{ steps.build_details.outputs.build_include }}
@@ -615,7 +616,6 @@ jobs:
615616
build_docker:
616617
runs-on: ${{ matrix.runs-on }}
617618
needs: [build_details, build_posix, fetch_s3_artifacts]
618-
if: needs.build_details.outputs.is_fork != 'true' && github.event_name != 'merge_group'
619619
strategy:
620620
fail-fast: false
621621
matrix:
@@ -641,12 +641,13 @@ jobs:
641641
- name: Log in to the github registry
642642
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
643643
- name: Build docker image
644+
env:
645+
PUBLISH_DOCKER_IMAGE: ${{ needs.build_details.outputs.publish_docker_image }}
644646
run: .github/scripts/build-docker.sh ${{ steps.debian_package.outputs.deb-file }} ${{ steps.debian_debug_package.outputs.deb-file }} ${{ needs.build_details.outputs.branch }} ${{ secrets.DOCKERHUB_USER }} ${{ secrets.DOCKERHUB_PASSWORD }} ${{ matrix.platform }}
645647

646648
build_docker_alpine:
647649
runs-on: ${{ matrix.runs-on }}
648650
needs: [build_details, run_tests, build_posix, fetch_s3_artifacts]
649-
if: needs.build_details.outputs.is_fork != 'true' && github.event_name != 'merge_group'
650651
strategy:
651652
fail-fast: false
652653
matrix:
@@ -666,8 +667,11 @@ jobs:
666667
echo "apk-file=$(find artifacts/${{ needs.build_details.outputs.sha }} -type f | grep -v minimal | grep 'apk$' | grep -v dbg | grep ${{ matrix.alpine-arch }})" >> "${GITHUB_OUTPUT}"
667668
id: alpine_package
668669
- name: Log in to the github registry
670+
if: needs.build_details.outputs.publish_docker_image == 'true'
669671
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
670672
- name: Build docker image
673+
env:
674+
PUBLISH_DOCKER_IMAGE: ${{ needs.build_details.outputs.publish_docker_image }}
671675
run: .github/scripts/build-docker-alpine.sh ${{ steps.alpine_package.outputs.apk-file }} ${{ needs.build_details.outputs.branch }} ${{ secrets.DOCKERHUB_USER }} ${{ secrets.DOCKERHUB_PASSWORD }} ${{ matrix.platform }}
672676

673677
build_docker_minimal:
@@ -697,14 +701,16 @@ jobs:
697701
echo "deb-file=$(find artifacts/${{ needs.build_details.outputs.sha }} -type f | grep ${{ matrix.docker-debian-os }} | grep minimal | grep '${{ matrix.platform }}\.deb$' | grep dbgsym | grep deb)" >> "${GITHUB_OUTPUT}"
698702
id: debian_debug_package
699703
- name: Log in to the github registry
704+
if: needs.build_details.outputs.publish_docker_image == 'true'
700705
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
701706
- name: Build docker image
707+
env:
708+
PUBLISH_DOCKER_IMAGE: ${{ needs.build_details.outputs.publish_docker_image }}
702709
run: .github/scripts/build-docker.sh ${{ steps.debian_package.outputs.deb-file }} ${{ steps.debian_debug_package.outputs.deb-file }} ${{ needs.build_details.outputs.branch }}-minimal ${{ secrets.DOCKERHUB_USER }} ${{ secrets.DOCKERHUB_PASSWORD }} ${{ matrix.platform }}
703710

704711
build_docker_alpine_minimal:
705712
runs-on: ${{ matrix.runs-on }}
706713
needs: [build_details, run_tests, build_posix, fetch_s3_artifacts]
707-
if: needs.build_details.outputs.is_fork != 'true' && github.event_name != 'merge_group'
708714
strategy:
709715
fail-fast: false
710716
matrix:
@@ -728,8 +734,11 @@ jobs:
728734
echo "apk-file=$(find artifacts/${{ needs.build_details.outputs.sha }} -type f | grep minimal | grep 'apk$' | grep dbg | grep ${{ matrix.alpine-arch }})" >> "${GITHUB_OUTPUT}"
729735
id: alpine_dbg_package
730736
- name: Log in to the github registry
737+
if: needs.build_details.outputs.publish_docker_image == 'true'
731738
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
732739
- name: Build docker image
740+
env:
741+
PUBLISH_DOCKER_IMAGE: ${{ needs.build_details.outputs.publish_docker_image }}
733742
run: .github/scripts/build-docker-alpine.sh ${{ steps.alpine_package.outputs.apk-file }} ${{ steps.alpine_dbg_package.outputs.apk-file }} ${{ needs.build_details.outputs.branch }}-minimal ${{ secrets.DOCKERHUB_USER }} ${{ secrets.DOCKERHUB_PASSWORD }} ${{ matrix.platform }}
734743

735744
build_docker_release:

0 commit comments

Comments
 (0)