Skip to content

Commit

Permalink
Merge branch 'release/1.0.4' into 'main'
Browse files Browse the repository at this point in the history
Release/1.0.4

See merge request opensource/answer!437
  • Loading branch information
linkinstar committed Feb 6, 2023
2 parents ca137f1 + b5509a8 commit f93fb6b
Show file tree
Hide file tree
Showing 68 changed files with 2,262 additions and 665 deletions.
41 changes: 41 additions & 0 deletions .github/workflows/build.yml
@@ -0,0 +1,41 @@
name: "Goreleaser"

on:
push:
tags:
- "v*"
permissions:
contents: write

jobs:
build-and-push:
runs-on: [self-hosted, linux]

steps:
- name: Checkout
uses: actions/checkout@v3

- name: Set up Node
uses: actions/setup-node@v3
with:
node-version: 16

- name: Node Build
run: make install-ui-packages ui

- name: Setup Go
uses: actions/setup-go@v3
with:
go-version: 1.19
- name: Run GoReleaser
uses: goreleaser/goreleaser-action@v4
with:
distribution: goreleaser
version: latest
args: release --rm-dist
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/upload-artifact@v3
with:
name: answer
path: ./dist/*
2 changes: 1 addition & 1 deletion .github/workflows/build_dockerhub_img.yml
Expand Up @@ -12,7 +12,7 @@ on:

jobs:
build:
runs-on: ubuntu-latest
runs-on: [self-hosted, linux]
steps:
- name: Checkout
uses: actions/checkout@v3
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build_github_img.yml
Expand Up @@ -17,7 +17,7 @@ env:

jobs:
build-and-push:
runs-on: ubuntu-latest
runs-on: [self-hosted, linux]

permissions:
packages: write
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/go_build_test.yml
Expand Up @@ -9,7 +9,7 @@ on:

jobs:
build-and-push:
runs-on: ubuntu-latest
runs-on: [self-hosted, linux]

steps:
- name: Checkout
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/node_build_test.yml
Expand Up @@ -8,8 +8,7 @@ on:

jobs:
build-and-push:
runs-on: ubuntu-latest

runs-on: [self-hosted, linux]
steps:
- name: Checkout
uses: actions/checkout@v3
Expand Down
5 changes: 4 additions & 1 deletion .gitignore
Expand Up @@ -15,8 +15,11 @@
/configs/config-dev.yaml
/go.work*
/logs
/ui/build
/ui/node_modules
/ui/build/*/*/*
/ui/build/*.json
/ui/build/*.html
/ui/build/*.txt
/vendor
Thumbs*.db
tmp
Expand Down
48 changes: 8 additions & 40 deletions .goreleaser.yaml
Expand Up @@ -2,7 +2,7 @@ env:
- GO11MODULE=on
- GO111MODULE=on
- GOPROXY=https://goproxy.io
- CGO_ENABLED=1
- CGO_ENABLED=0

before:
hooks:
Expand All @@ -16,74 +16,48 @@ builds:
- linux
goarch:
- amd64
# linux windows need cgomingw64-gcc
- id: build-windows
main: ./cmd/answer/.
binary: answer
ldflags: -s -w -X main.Version={{.Version}} -X main.Revision={{.ShortCommit}} -X main.Time={{.Date}} -X main.BuildUser=goreleaser
env:
- CC=x86_64-w64-mingw32-gcc
- CXX=x86_64-w64-mingw32-g++
goos:
- windows
goarch:
- amd64
# linux arm64 need cgo arm64
- id: build-arm64
main: ./cmd/answer/.
binary: answer
ldflags: -s -w -X main.Version={{.Version}} -X main.Revision={{.ShortCommit}} -X main.Time={{.Date}} -X main.BuildUser=goreleaser
env:
- CC=aarch64-linux-gnu-gcc
- CXX=aarch64-linux-gnu-g++
goos:
- linux
goarch:
- arm64
- id: build-arm7
main: ./cmd/answer/.
binary: answer
ldflags: -s -w -X main.Version={{.Version}} -X main.Revision={{.ShortCommit}} -X main.Time={{.Date}} -X main.BuildUser=goreleaser
env:
- CC=arm-linux-gnueabihf-gcc
- CXX=arm-linux-gnueabihf-g++
- AR=arm-linux-gnueabihf-ar
goos:
- linux
goarch:
- arm
goarm:
- 7
- arm64
- id: build-darwin-arm64
main: ./cmd/answer/.
binary: answer
env:
- CC=oa64-clang
- CXX=oa64-clang++
goos:
- darwin
goarch:
- arm64
ldflags: -s -w -X main.Version={{.Version}} -X main.Revision={{.ShortCommit}} -X main.Time={{.Date}} -X main.BuildUser=goreleaser
ldflags: -s -w -X main.Version={{.Version}} -X main.Revision={{.ShortCommit}} -X main.Time={{.Date}} -X main.BuildUser=goreleaser
flags: -v
- id: build-darwin-amd64
main: ./cmd/answer/.
binary: answer
env:
- CC=o64-clang
- CXX=o64-clang++
goos:
- darwin
goarch:
- amd64
ldflags: -s -w -X main.Version={{.Version}} -X main.Revision={{.ShortCommit}} -X main.Time={{.Date}} -X main.BuildUser=goreleaser
ldflags: -s -w -X main.Version={{.Version}} -X main.Revision={{.ShortCommit}} -X main.Time={{.Date}} -X main.BuildUser=goreleaser
flags: -v


archives:
- replacements:
darwin: Darwin
darwin: macOS
amd64: x86_64
linux: Linux
windows: Windows
checksum:
name_template: 'checksums.txt'
snapshot:
Expand All @@ -95,10 +69,4 @@ changelog:
- '^docs:'
- '^test:'


# sudo apt-get install build-essential
# sudo apt-get install gcc-multilib g++-multilib
# sudo apt-get install gcc-mingw-w64
# sudo apt-get -y install gcc-aarch64-linux-gnu gcc-arm-linux-gnueabihf
# sudo apt-get install clang llvm
# goreleaser release --snapshot --rm-dist
# goreleaser release --snapshot --rm-dist
22 changes: 12 additions & 10 deletions Makefile
@@ -1,30 +1,32 @@
.PHONY: build clean ui

VERSION=1.0.3
VERSION=1.0.4
BIN=answer
DIR_SRC=./cmd/answer
DOCKER_CMD=docker

#GO_ENV=CGO_ENABLED=0
GO_ENV=CGO_ENABLED=0 GO111MODULE=on
Revision=$(shell git rev-parse --short HEAD)
GO_FLAGS=-ldflags="-X main.Version=$(VERSION) -X 'main.Revision=$(Revision)' -X 'main.Time=`date`' -extldflags -static"
GO=$(GO_ENV) $(shell which go)

build:
@$(GO_ENV) $(GO) build $(GO_FLAGS) -o $(BIN) $(DIR_SRC)
build: generate
@$(GO) build $(GO_FLAGS) -o $(BIN) $(DIR_SRC)

# https://dev.to/thewraven/universal-macos-binaries-with-go-1-16-3mm3
universal:
universal: generate
@GOOS=darwin GOARCH=amd64 $(GO_ENV) $(GO) build $(GO_FLAGS) -o ${BIN}_amd64 $(DIR_SRC)
@GOOS=darwin GOARCH=arm64 $(GO_ENV) $(GO) build $(GO_FLAGS) -o ${BIN}_arm64 $(DIR_SRC)
@lipo -create -output ${BIN} ${BIN}_amd64 ${BIN}_arm64
@rm -f ${BIN}_amd64 ${BIN}_arm64

generate:
go get github.com/google/wire/cmd/wire@latest
go install github.com/golang/mock/mockgen@v1.6.0
go generate ./...
go mod tidy
@$(GO) get github.com/google/wire/cmd/wire@v0.5.0
@$(GO) get github.com/golang/mock/mockgen@v1.6.0
@$(GO) install github.com/google/wire/cmd/wire@v0.5.0
@$(GO) install github.com/golang/mock/mockgen@v1.6.0
@$(GO) generate ./...
@$(GO) mod tidy

test:
@$(GO) test ./internal/repo/repo_test
Expand All @@ -39,6 +41,6 @@ install-ui-packages:
@corepack prepare pnpm@v7.12.2 --activate

ui:
@cd ui && pnpm install && pnpm build && cd -
@cd ui && pnpm install && pnpm build && sed -i 's/%AnswerVersion%/'$(VERSION)'/g' ./build/index.html && cd -

all: clean build

0 comments on commit f93fb6b

Please sign in to comment.