mirror of https://github.com/schollz/croc.git
124 lines
8.7 KiB
YAML
124 lines
8.7 KiB
YAML
name: Make release
|
|
|
|
on:
|
|
release:
|
|
types: [created]
|
|
workflow_dispatch:
|
|
|
|
permissions:
|
|
contents: write
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout project
|
|
uses: actions/checkout@v4
|
|
- name: Setup Go
|
|
uses: actions/setup-go@v4
|
|
with:
|
|
go-version: '1.20'
|
|
- name: Build Windows 7
|
|
run: |
|
|
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -tags netgo -ldflags '-H=windowsgui -extldflags "-static"' -o croc.exe
|
|
zip croc_${{ github.event.release.name }}_Windows7-64bit.zip croc.exe
|
|
CGO_ENABLED=0 GOOS=windows GOARCH=386 go build -tags netgo -ldflags '-H=windowsgui -extldflags "-static"' -o croc.exe
|
|
zip croc_${{ github.event.release.name }}_Windows7-32bit.zip croc.exe
|
|
- name: Setup Go
|
|
uses: actions/setup-go@v4
|
|
with:
|
|
go-version: '1.21'
|
|
- name: Prepare source tarball
|
|
run: |
|
|
git clone -b ${{ github.event.release.name }} --depth 1 https://github.com/schollz/croc croc-${{ github.event.release.name }}
|
|
cd croc-${{ github.event.release.name }} && go mod tidy && go mod vendor
|
|
cd .. && tar -czvf croc_${{ github.event.release.name }}_src.tar.gz croc-${{ github.event.release.name }}
|
|
- name: Build files
|
|
run: |
|
|
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -tags netgo -ldflags '-H=windowsgui -extldflags "-static"' -o croc.exe
|
|
zip croc_${{ github.event.release.name }}_Windows-64bit.zip croc.exe
|
|
CGO_ENABLED=0 GOOS=windows GOARCH=386 go build -tags netgo -ldflags '-H=windowsgui -extldflags "-static"' -o croc.exe
|
|
zip croc_${{ github.event.release.name }}_Windows-32bit.zip croc.exe
|
|
CGO_ENABLED=0 GOOS=windows GOARCH=arm go build -tags netgo -ldflags '-H=windowsgui -extldflags "-static"' -o croc.exe
|
|
zip croc_${{ github.event.release.name }}_Windows-ARM.zip croc.exe
|
|
CGO_ENABLED=0 GOOS=windows GOARCH=arm64 go build -tags netgo -ldflags '-H=windowsgui -extldflags "-static"' -o croc.exe
|
|
zip croc_${{ github.event.release.name }}_Windows-ARM64.zip croc.exe
|
|
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -tags netgo -ldflags '-extldflags "-static"' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_Linux-64bit.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=linux GOARCH=386 go build -tags netgo -ldflags '-extldflags "-static"' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_Linux-32bit.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=linux GOARCH=arm go build -tags netgo -ldflags '-extldflags "-static"' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_Linux-ARM.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -tags netgo -ldflags '-extldflags "-static"' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_Linux-ARM64.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -ldflags '-s -extldflags "-sectcreate __TEXT __info_plist Info.plist"' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_macOS-64bit.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 go build -ldflags '-s -extldflags "-sectcreate __TEXT __info_plist Info.plist"' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_macOS-ARM64.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=dragonfly GOARCH=amd64 go build -ldflags '' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_DragonFlyBSD-64bit.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 go build -ldflags '' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_FreeBSD-64bit.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=freebsd GOARCH=arm64 go build -ldflags '' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_FreeBSD-ARM64.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=netbsd GOARCH=386 go build -ldflags '' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_NetBSD-32bit.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=netbsd GOARCH=amd64 go build -ldflags '' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_NetBSD-64bit.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=netbsd GOARCH=arm64 go build -ldflags '' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_NetBSD-ARM64.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 go build -ldflags '' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_OpenBSD-64bit.tar.gz croc
|
|
CGO_ENABLED=0 GOOS=openbsd GOARCH=arm64 go build -ldflags '' -o croc
|
|
tar -czvf croc_${{ github.event.release.name }}_OpenBSD-ARM64.tar.gz croc
|
|
- name: Create checksums.txt
|
|
run: |
|
|
touch croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_src.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_Windows-64bit.zip >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_Windows-32bit.zip >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_Windows-ARM.zip >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_Windows-ARM64.zip >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_Windows7-64bit.zip >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_Windows7-32bit.zip >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_Linux-64bit.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_Linux-32bit.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_Linux-ARM.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_Linux-ARM64.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_macOS-64bit.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_macOS-ARM64.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_DragonFlyBSD-64bit.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_FreeBSD-64bit.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_FreeBSD-ARM64.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_NetBSD-32bit.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_NetBSD-64bit.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_NetBSD-ARM64.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_OpenBSD-64bit.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
sha256sum croc_${{ github.event.release.name }}_OpenBSD-ARM64.tar.gz >> croc_${{ github.event.release.name }}_checksums.txt
|
|
- name: Release
|
|
uses: softprops/action-gh-release@v1
|
|
with:
|
|
files: |
|
|
croc_${{ github.event.release.name }}_checksums.txt
|
|
croc_${{ github.event.release.name }}_src.tar.gz
|
|
croc_${{ github.event.release.name }}_Windows-64bit.zip
|
|
croc_${{ github.event.release.name }}_Windows-32bit.zip
|
|
croc_${{ github.event.release.name }}_Windows-ARM.zip
|
|
croc_${{ github.event.release.name }}_Windows-ARM64.zip
|
|
croc_${{ github.event.release.name }}_Windows7-64bit.zip
|
|
croc_${{ github.event.release.name }}_Windows7-32bit.zip
|
|
croc_${{ github.event.release.name }}_Linux-64bit.tar.gz
|
|
croc_${{ github.event.release.name }}_Linux-32bit.tar.gz
|
|
croc_${{ github.event.release.name }}_Linux-ARM.tar.gz
|
|
croc_${{ github.event.release.name }}_Linux-ARM64.tar.gz
|
|
croc_${{ github.event.release.name }}_macOS-64bit.tar.gz
|
|
croc_${{ github.event.release.name }}_macOS-ARM64.tar.gz
|
|
croc_${{ github.event.release.name }}_DragonFlyBSD-64bit.tar.gz
|
|
croc_${{ github.event.release.name }}_FreeBSD-64bit.tar.gz
|
|
croc_${{ github.event.release.name }}_FreeBSD-ARM64.tar.gz
|
|
croc_${{ github.event.release.name }}_NetBSD-32bit.tar.gz
|
|
croc_${{ github.event.release.name }}_NetBSD-64bit.tar.gz
|
|
croc_${{ github.event.release.name }}_NetBSD-ARM64.tar.gz
|
|
croc_${{ github.event.release.name }}_OpenBSD-64bit.tar.gz
|
|
croc_${{ github.event.release.name }}_OpenBSD-ARM64.tar.gz
|