mirror of
https://github.com/octoleo/syncthing.git
synced 2024-11-17 10:35:11 +00:00
fc8b353011
Also updated dependencies, and an adjustment to build tags for how those are handled and how irrelevant go1.15 is nowadays...
75 lines
1.9 KiB
YAML
75 lines
1.9 KiB
YAML
name: Build Infrastructure Images
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- infrastructure
|
|
- infra-*
|
|
|
|
env:
|
|
GO_VERSION: "~1.22.0"
|
|
CGO_ENABLED: "0"
|
|
BUILD_USER: docker
|
|
BUILD_HOST: github.syncthing.net
|
|
|
|
jobs:
|
|
docker-syncthing:
|
|
name: Build and push Docker images
|
|
if: github.repository == 'syncthing/syncthing'
|
|
runs-on: ubuntu-latest
|
|
environment: docker
|
|
strategy:
|
|
matrix:
|
|
pkg:
|
|
- stcrashreceiver
|
|
- strelaypoolsrv
|
|
- stupgrades
|
|
- ursrv
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- uses: actions/setup-go@v5
|
|
with:
|
|
go-version: ${{ env.GO_VERSION }}
|
|
check-latest: true
|
|
|
|
- name: Login to Docker Hub
|
|
uses: docker/login-action@v3
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
|
|
- name: Build binaries
|
|
run: |
|
|
for arch in arm64 amd64; do
|
|
go run build.go -goos linux -goarch "$arch" build ${{ matrix.pkg }}
|
|
mv ${{ matrix.pkg }} ${{ matrix.pkg }}-linux-"$arch"
|
|
done
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
|
|
- name: Set Docker tags (all branches)
|
|
run: |
|
|
tags=syncthing/${{ matrix.pkg }}:${{ github.sha }}
|
|
echo "TAGS=$tags" >> $GITHUB_ENV
|
|
|
|
- name: Set Docker tags (latest)
|
|
if: github.ref == 'refs/heads/infrastructure'
|
|
run: |
|
|
tags=syncthing/${{ matrix.pkg }}:latest,${{ env.TAGS }}
|
|
echo "TAGS=$tags" >> $GITHUB_ENV
|
|
|
|
- name: Build and push
|
|
uses: docker/build-push-action@v5
|
|
with:
|
|
context: .
|
|
file: ./Dockerfile.${{ matrix.pkg }}
|
|
platforms: linux/amd64,linux/arm64
|
|
push: true
|
|
tags: ${{ env.TAGS }}
|
|
labels: |
|
|
org.opencontainers.image.revision=${{ github.sha }}
|