From 379fcad49d7f0ba86b546deca641c4dec50d684b Mon Sep 17 00:00:00 2001 From: Arran Ubels Date: Sat, 23 Apr 2022 14:29:34 +1000 Subject: [PATCH 1/3] goreleaser initial add --- .github/workflows/goreleaser.yml | 29 ++++++++++++++ .gitignore | 3 +- .goreleaser.yaml | 46 ++++++++++++++++++++++ build.sh | 66 -------------------------------- 4 files changed, 77 insertions(+), 67 deletions(-) create mode 100644 .github/workflows/goreleaser.yml create mode 100644 .goreleaser.yaml delete mode 100755 build.sh diff --git a/.github/workflows/goreleaser.yml b/.github/workflows/goreleaser.yml new file mode 100644 index 0000000..d02edb1 --- /dev/null +++ b/.github/workflows/goreleaser.yml @@ -0,0 +1,29 @@ +name: goreleaser + +on: + push: + tags: + - 'v*.*.*' + +jobs: + goreleaser: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: Set up Go + uses: actions/setup-go@v2 + with: + go-version: 1.18 + - name: Test + run: go test ./... + - name: Run GoReleaser + uses: goreleaser/goreleaser-action@v2 + with: + distribution: goreleaser + version: latest + args: release --rm-dist + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.gitignore b/.gitignore index fe5fa7b..9895af1 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,5 @@ *.jpg *.svg !output/* -packages/ \ No newline at end of file +packages/ +/dist \ No newline at end of file diff --git a/.goreleaser.yaml b/.goreleaser.yaml new file mode 100644 index 0000000..a731c9d --- /dev/null +++ b/.goreleaser.yaml @@ -0,0 +1,46 @@ +project_name: triangle +builds: + - + binary: "triangle" + env: + - CGO_ENABLED=0 + goos: + - linux + - windows + - darwin + goarch: + - amd64 + - arm + - arm64 + goarm: + - "6" + - "7" +archives: + - + format_overrides: + - goos: windows + format: zip +checksum: + name_template: 'checksums.txt' +snapshot: + name_template: "{{ .Tag }}-next" +changelog: + sort: asc + filters: + exclude: + - '^docs:' + - '^test:' +nfpms: + - + vendor: Endre Simo + homepage: https://github.com/esimov + maintainer: Endre Simo + description: NA + license: MIT + formats: + - apk + - deb + - rpm + release: 1 + section: default + priority: extra diff --git a/build.sh b/build.sh deleted file mode 100755 index 3071e01..0000000 --- a/build.sh +++ /dev/null @@ -1,66 +0,0 @@ -#!/bin/bash - -set -e - -VERSION="2.0.0" -PROTECTED_MODE="no" - -export GO15VENDOREXPERIMENT=1 - -cd $(dirname "${BASH_SOURCE[0]}") -OD="$(pwd)" -WD=$OD - -package() { - echo Packaging $1 Binary - bdir=triangle-${VERSION}-$2-$3 - rm -rf packages/$bdir && mkdir -p packages/$bdir - GOOS=$2 GOARCH=$3 ./build.sh - if [ "$2" == "windows" ]; then - mv triangle packages/$bdir/triangle.exe - else - mv triangle packages/$bdir - fi - cp README.md packages/$bdir - cd packages - if [ "$2" == "linux" ]; then - tar -zcf $bdir.tar.gz $bdir - else - zip -r -q $bdir.zip $bdir - fi - rm -rf $bdir - cd .. -} - -if [ "$1" == "package" ]; then - rm -rf packages/ - package "Windows" "windows" "amd64" - package "Mac" "darwin" "amd64" - package "Linux" "linux" "amd64" - package "FreeBSD" "freebsd" "amd64" - exit -fi - -# temp directory for storing isolated environment. -TMP="$(mktemp -d -t sdb.XXXX)" -rmtemp() { - rm -rf "$TMP" -} -trap rmtemp EXIT - -if [ "$NOCOPY" != "1" ]; then - # copy all files to an isloated directory. - WD="$TMP/src/github.com/esimov/triangle" - export GOPATH="$TMP" - for file in `find . -type f`; do - # TODO: use .gitignore to ignore, or possibly just use git to determine the file list. - if [[ "$file" != "." && "$file" != ./.git* && "$file" != ./triangle ]]; then - mkdir -p "$WD/$(dirname "${file}")" - cp -P "$file" "$WD/$(dirname "${file}")" - fi - done - cd $WD -fi - -# build and store objects into original directory. -go build -ldflags "-X main.version=$VERSION" -o "$OD/triangle" cmd/triangle/*.go \ No newline at end of file From c6ea05b53af40f095018ca5b2fcbf0b2340915b3 Mon Sep 17 00:00:00 2001 From: Arran Ubels Date: Sat, 23 Apr 2022 14:35:48 +1000 Subject: [PATCH 2/3] Dir. --- .goreleaser.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index a731c9d..901b095 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -2,6 +2,7 @@ project_name: triangle builds: - binary: "triangle" + dir: cmd/triangle env: - CGO_ENABLED=0 goos: From f6303123a8b9c09f505636782fbbc88eeda4d355 Mon Sep 17 00:00:00 2001 From: Arran Ubels Date: Mon, 25 Apr 2022 23:09:57 +1000 Subject: [PATCH 3/3] Make shouldn't be here. --- Makefile | 10 ---------- 1 file changed, 10 deletions(-) delete mode 100644 Makefile diff --git a/Makefile b/Makefile deleted file mode 100644 index 00d33b6..0000000 --- a/Makefile +++ /dev/null @@ -1,10 +0,0 @@ -all: - @./build.sh -clean: - @rm -f triangle -install: all - @cp triangle /usr/local/bin -uninstall: - @rm -f /usr/local/bin/triangle -package: - @NOCOPY=1 ./build.sh package \ No newline at end of file