2323 NET_PUBLISH_ARGS : " --verbosity normal --configuration Release -p:DebugType=embedded -p:PublishSingleFile=true --self-contained"
2424 DOCKER_REGISTRY : ghcr.io
2525 DOCKER_IMAGE_NAME : ${{ github.repository_owner }}/mullvad-proxy-gateway
26- DOCKER_PLATFORMS : linux/amd64,linux/arm/v7 ,linux/arm64/v8
26+ DOCKER_PLATFORMS : linux/amd64,linux/arm64/v8 ,linux/arm/v7
2727
2828jobs :
2929 build :
@@ -61,38 +61,43 @@ jobs:
6161 run : dotnet test ${{ env.NET_SOLUTION }} --verbosity normal --no-restore --no-build --configuration Release
6262
6363 - name : .NET Publish amd64
64- if : ${{ steps.tagver.outputs.is_valid == 'true' }}
65- run : dotnet publish ${{ env.NET_PROJECT }} -r linux-musl-x64 ${{ env.NET_PUBLISH_ARGS }} -p:Version=${{ steps.tagver.outputs.version }} -o ${{ env.NET_PUBLISH_DIR }}linux/amd64
64+ run : |
65+ if [ -n "${{ steps.tagver.outputs.version }}" ]; then
66+ dotnet publish ${{ env.NET_PROJECT }} -r linux-musl-x64 ${{ env.NET_PUBLISH_ARGS }} -p:Version=${{ steps.tagver.outputs.version }} -o ${{ env.NET_PUBLISH_DIR }}linux/amd64
67+ else
68+ dotnet publish ${{ env.NET_PROJECT }} -r linux-musl-x64 ${{ env.NET_PUBLISH_ARGS }} -o ${{ env.NET_PUBLISH_DIR }}linux/amd64
69+ fi
70+
71+ - name : .NET Publish arm64
72+ run : |
73+ if [ -n "${{ steps.tagver.outputs.version }}" ]; then
74+ dotnet publish ${{ env.NET_PROJECT }} -r linux-musl-arm64 ${{ env.NET_PUBLISH_ARGS }} -p:Version=${{ steps.tagver.outputs.version }} -o ${{ env.NET_PUBLISH_DIR }}linux/arm64
75+ else
76+ dotnet publish ${{ env.NET_PROJECT }} -r linux-musl-arm64 ${{ env.NET_PUBLISH_ARGS }} -o ${{ env.NET_PUBLISH_DIR }}linux/arm64
77+ fi
6678
6779 - name : .NET Publish armv7
68- if : ${{ steps.tagver.outputs.is_valid == 'true' }}
69- run : dotnet publish ${{ env.NET_PROJECT }} -r linux-musl-arm ${{ env.NET_PUBLISH_ARGS }} -p:Version=${{ steps.tagver.outputs.version }} -o ${{ env.NET_PUBLISH_DIR }}linux/arm/v7
70-
71- - name : .NET Publish armv8
72- if : ${{ steps.tagver.outputs.is_valid == 'true' }}
73- run : dotnet publish ${{ env.NET_PROJECT }} -r linux-musl-arm64 ${{ env.NET_PUBLISH_ARGS }} -p:Version=${{ steps.tagver.outputs.version }} -o ${{ env.NET_PUBLISH_DIR }}linux/arm64/v8
80+ run : |
81+ if [ -n " ${{ steps.tagver.outputs.version }}" ]; then
82+ dotnet publish ${{ env.NET_PROJECT }} -r linux-musl-arm ${{ env.NET_PUBLISH_ARGS }} -p:Version=${{ steps.tagver.outputs.version }} -o ${{ env.NET_PUBLISH_DIR }}linux/armv7
83+ else
84+ dotnet publish ${{ env.NET_PROJECT }} -r linux-musl-arm ${{ env.NET_PUBLISH_ARGS }} -o ${{ env.NET_PUBLISH_DIR }}linux/armv7
85+ fi
7486
7587 - name : Docker QEMU Setup
76- if : ${{ steps.tagver.outputs.is_valid == 'true' }}
7788 uses : docker/setup-qemu-action@v4
78- id : dockerqemu
7989
8090 - name : Docker Buildx Setup
81- if : ${{ steps.dockerqemu.outcome == 'success' }}
8291 uses : docker/setup-buildx-action@v4
83- id : dockersetup
8492
8593 - name : Docker Login
8694 uses : docker/login-action@v4
87- if : ${{ steps.dockersetup.outcome == 'success' }}
88- id : dockerlogin
8995 with :
9096 registry : ${{ env.DOCKER_REGISTRY }}
9197 username : ${{ github.repository_owner }}
9298 password : ${{ secrets.GITHUB_TOKEN }}
9399
94100 - name : Docker tags/labels
95- if : ${{ steps.dockerlogin.outcome == 'success' }}
96101 uses : docker/metadata-action@v6
97102 id : dockermeta
98103 with :
@@ -116,6 +121,8 @@ jobs:
116121 type=raw,value=${{ steps.tagver.outputs.version }}-preview,enable=${{ steps.tagver.outputs.is_prerelease == 'true' }}
117122 # Specific preview build (fully pinned)
118123 type=raw,value=${{ steps.tagver.outputs.version }}-${{ steps.tagver.outputs.suffix }},enable=${{ steps.tagver.outputs.is_prerelease == 'true' }}
124+ # Test build
125+ type=raw,value=ci,enable=${{ steps.tagver.outputs.is_valid != 'true' }}
119126
120127 - name : Docker build/push
121128 if : ${{ steps.dockermeta.outcome == 'success' }}
@@ -132,7 +139,7 @@ jobs:
132139
133140 - name : Create Release
134141 uses : softprops/action-gh-release@v2
135- if : ${{ steps.dockerbuild.outcome == 'success ' }}
142+ if : ${{ steps.tagver.outputs.is_valid == 'true ' }}
136143 with :
137144 tag_name : ${{ steps.tagver.outputs.version_tag }}
138145 prerelease : ${{ steps.tagver.outputs.is_prerelease == 'true' }}
0 commit comments