mirror of
https://github.com/zyedidia/micro.git
synced 2024-09-11 20:17:31 +03:00
Merge pull request #3334 from JoeKar/feature/action-nightly
nightly: Use GitHub Actions for scheduled builds
This commit is contained in:
commit
ced6d9487a
42
.github/workflows/nightly.yaml
vendored
Normal file
42
.github/workflows/nightly.yaml
vendored
Normal file
@ -0,0 +1,42 @@
|
||||
name: Nightly builds
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
jobs:
|
||||
nightly:
|
||||
strategy:
|
||||
matrix:
|
||||
go-version: [1.19.x]
|
||||
os: [ubuntu-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Setup
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: ${{ matrix.go-version }}
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
ref: master
|
||||
|
||||
- name: Build
|
||||
run: tools/cross-compile.sh
|
||||
|
||||
- name: Tag
|
||||
uses: rickstaa/action-create-tag@v1
|
||||
with:
|
||||
tag: nightly
|
||||
force_push_tag: true
|
||||
message: "Pre-release nightly"
|
||||
|
||||
- name: Publish
|
||||
uses: softprops/action-gh-release@v2
|
||||
with:
|
||||
name: nightly
|
||||
tag_name: nightly
|
||||
files: binaries/*
|
||||
prerelease: true
|
||||
|
||||
- name: Cleanup
|
||||
run: rm -rf binaries
|
@ -1,120 +1,109 @@
|
||||
cd ..
|
||||
#!/bin/sh
|
||||
|
||||
mkdir -p binaries
|
||||
mkdir -p micro-$1
|
||||
|
||||
cp LICENSE micro-$1
|
||||
cp README.md micro-$1
|
||||
cp LICENSE-THIRD-PARTY micro-$1
|
||||
cp assets/packaging/micro.1 micro-$1
|
||||
cp assets/packaging/micro.desktop micro-$1
|
||||
cp assets/micro-logo-mark.svg micro-$1/micro.svg
|
||||
set -e
|
||||
|
||||
HASH="$(git rev-parse --short HEAD)"
|
||||
VERSION="$(go run tools/build-version.go)"
|
||||
DATE="$(go run tools/build-date.go)"
|
||||
ADDITIONAL_GO_LINKER_FLAGS="$(go run tools/info-plist.go $VERSION)"
|
||||
|
||||
mkdir -p binaries
|
||||
mkdir -p micro-$VERSION
|
||||
|
||||
cp LICENSE micro-$VERSION
|
||||
cp README.md micro-$VERSION
|
||||
cp LICENSE-THIRD-PARTY micro-$VERSION
|
||||
cp assets/packaging/micro.1 micro-$VERSION
|
||||
cp assets/packaging/micro.desktop micro-$VERSION
|
||||
cp assets/micro-logo-mark.svg micro-$VERSION/micro.svg
|
||||
|
||||
create_artefact_generic()
|
||||
{
|
||||
mv micro micro-$VERSION/
|
||||
tar -czf micro-$VERSION-$1.tgz micro-$VERSION
|
||||
sha256sum micro-$VERSION-$1.tgz > micro-$VERSION-$1.tgz.sha
|
||||
mv micro-$VERSION-$1.* binaries
|
||||
rm micro-$VERSION/micro
|
||||
}
|
||||
|
||||
create_artefact_windows()
|
||||
{
|
||||
mv micro.exe micro-$VERSION/
|
||||
zip -r -q -T micro-$VERSION-$1.zip micro-$VERSION
|
||||
sha256sum micro-$VERSION-$1.zip > micro-$VERSION-$1.zip.sha
|
||||
mv micro-$VERSION-$1.* binaries
|
||||
rm micro-$VERSION/micro.exe
|
||||
}
|
||||
|
||||
# Mac
|
||||
echo "OSX 64"
|
||||
GOOS=darwin GOARCH=amd64 make build
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-osx.tar.gz micro-$1
|
||||
mv micro-$1-osx.tar.gz binaries
|
||||
create_artefact_generic "osx"
|
||||
|
||||
# Mac ARM64
|
||||
echo "MacOS ARM64"
|
||||
GOOS=darwin GOARCH=arm64 make build
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-macos-arm64.tar.gz micro-$1
|
||||
mv micro-$1-macos-arm64.tar.gz binaries
|
||||
create_artefact_generic "macos-arm64"
|
||||
|
||||
# Linux
|
||||
echo "Linux 64"
|
||||
GOOS=linux GOARCH=amd64 make build
|
||||
./tools/package-deb.sh $1
|
||||
mv micro-$1-amd64.deb binaries
|
||||
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-linux64.tar.gz micro-$1
|
||||
mv micro-$1-linux64.tar.gz binaries
|
||||
if ./tools/package-deb.sh $VERSION; then
|
||||
sha256sum micro-$VERSION-amd64.deb > micro-$VERSION-amd64.deb.sha
|
||||
mv micro-$VERSION-amd64.* binaries
|
||||
fi
|
||||
create_artefact_generic "linux64"
|
||||
|
||||
echo "Linux 64 fully static"
|
||||
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 make build
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-linux64-static.tar.gz micro-$1
|
||||
mv micro-$1-linux64-static.tar.gz binaries
|
||||
create_artefact_generic "linux64-static"
|
||||
|
||||
echo "Linux 32"
|
||||
GOOS=linux GOARCH=386 make build
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-linux32.tar.gz micro-$1
|
||||
mv micro-$1-linux32.tar.gz binaries
|
||||
create_artefact_generic "linux32"
|
||||
|
||||
echo "Linux ARM 32"
|
||||
GOOS=linux GOARM=6 GOARCH=arm make build
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-linux-arm.tar.gz micro-$1
|
||||
mv micro-$1-linux-arm.tar.gz binaries
|
||||
create_artefact_generic "linux-arm"
|
||||
|
||||
echo "Linux ARM 64"
|
||||
GOOS=linux GOARCH=arm64 make build
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-linux-arm64.tar.gz micro-$1
|
||||
mv micro-$1-linux-arm64.tar.gz binaries
|
||||
create_artefact_generic "linux-arm64"
|
||||
|
||||
# NetBSD
|
||||
echo "NetBSD 64"
|
||||
GOOS=netbsd GOARCH=amd64 make build
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-netbsd64.tar.gz micro-$1
|
||||
mv micro-$1-netbsd64.tar.gz binaries
|
||||
create_artefact_generic "netbsd64"
|
||||
|
||||
echo "NetBSD 32"
|
||||
GOOS=netbsd GOARCH=386 make build
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-netbsd32.tar.gz micro-$1
|
||||
mv micro-$1-netbsd32.tar.gz binaries
|
||||
create_artefact_generic "netbsd32"
|
||||
|
||||
# OpenBSD
|
||||
echo "OpenBSD 64"
|
||||
GOOS=openbsd GOARCH=amd64 make build
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-openbsd64.tar.gz micro-$1
|
||||
mv micro-$1-openbsd64.tar.gz binaries
|
||||
create_artefact_generic "openbsd64"
|
||||
|
||||
echo "OpenBSD 32"
|
||||
GOOS=openbsd GOARCH=386 make build
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-openbsd32.tar.gz micro-$1
|
||||
mv micro-$1-openbsd32.tar.gz binaries
|
||||
create_artefact_generic "openbsd32"
|
||||
|
||||
# FreeBSD
|
||||
echo "FreeBSD 64"
|
||||
GOOS=freebsd GOARCH=amd64 make build
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-freebsd64.tar.gz micro-$1
|
||||
mv micro-$1-freebsd64.tar.gz binaries
|
||||
create_artefact_generic "freebsd64"
|
||||
|
||||
echo "FreeBSD 32"
|
||||
GOOS=freebsd GOARCH=386 make build
|
||||
mv micro micro-$1
|
||||
tar -czf micro-$1-freebsd32.tar.gz micro-$1
|
||||
mv micro-$1-freebsd32.tar.gz binaries
|
||||
|
||||
rm micro-$1/micro
|
||||
create_artefact_generic "freebsd32"
|
||||
|
||||
# Windows
|
||||
echo "Windows 64"
|
||||
GOOS=windows GOARCH=amd64 make build
|
||||
mv micro.exe micro-$1
|
||||
zip -r -q -T micro-$1-win64.zip micro-$1
|
||||
mv micro-$1-win64.zip binaries
|
||||
create_artefact_windows "win64"
|
||||
|
||||
echo "Windows 32"
|
||||
GOOS=windows GOARCH=386 make build
|
||||
mv micro.exe micro-$1
|
||||
zip -r -q -T micro-$1-win32.zip micro-$1
|
||||
mv micro-$1-win32.zip binaries
|
||||
create_artefact_windows "win32"
|
||||
|
||||
rm -rf micro-$1
|
||||
rm -rf micro-$VERSION
|
||||
|
@ -1 +1 @@
|
||||
fpm -s dir -t deb -p micro-$1-amd64.deb --name micro --license mit --version $1 --deb-recommends xclip --description "A modern and intuitive terminal-based text editor" --after-install ./assets/packaging/deb/micro.postinst --before-remove ./assets/packaging/deb/micro.prerm ./micro=/usr/bin/micro ./assets/packaging/micro.1=/usr/share/man/man1/micro.1
|
||||
command -v fpm > /dev/null && fpm -s dir -t deb -p micro-$1-amd64.deb --name micro --license mit --version $1 --deb-recommends xclip --description "A modern and intuitive terminal-based text editor" --after-install ./assets/packaging/deb/micro.postinst --before-remove ./assets/packaging/deb/micro.prerm ./micro=/usr/bin/micro ./assets/packaging/micro.1=/usr/share/man/man1/micro.1
|
||||
|
Loading…
Reference in New Issue
Block a user