Skip to content

Commit

Permalink
Merge branch 'onomyprotocol:main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
anhductn2001 authored Nov 4, 2024
2 parents 2a396ea + 113cb6e commit a8ff6c1
Show file tree
Hide file tree
Showing 106 changed files with 4,362 additions and 12,054 deletions.
91 changes: 31 additions & 60 deletions .github/workflows/automated-release.yml
Original file line number Diff line number Diff line change
@@ -1,64 +1,35 @@
---
name: Release Binary

on:
push:
tags:
- "v*"

name: Automated release build

release:
types: [created]

permissions: write-all

# This workflow creates a release using goreleaser
# via the 'make release' command.

jobs:
build:
name: Build and upload release assets
release:
runs-on: ubuntu-latest

environment: release
steps:
- name: Set up Go 1.x
uses: actions/setup-go@v2
with:
go-version: ^1.19
id: go

- name: Checkout code
uses: actions/checkout@v2

- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
draft: false
prerelease: true

# build & upload onomyd

- name: Build onomyd
run: make build

- name: Upload onomyd
id: upload-onomyd-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: onomyd
asset_name: onomyd
asset_content_type: application/bin

# build & upload onomyd arm64

- name: Build onomyd arm64
run: GOARCH=arm64 make build

- name: Upload onomyd arm64
id: upload-onomyd-release-asset-arm
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: onomyd
asset_name: onomyd-arm
asset_content_type: application/bin
- uses: actions/checkout@v4
with:
submodules: true

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.22'
check-latest: true

- name: Setup release environment
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |-
echo 'GITHUB_TOKEN=${{secrets.GITHUB_TOKEN}}' > .release-env
- name: Release publish
run: make release
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
- name: Set up Go 1.x
uses: actions/setup-go@v2
with:
go-version: ^1.19
go-version: ^1.22
id: go
- name: Install Rust components
run: |
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ release/
/.idea/
*.iml
*.tar.gz
onomyd
# onomyd
/tmp-swagger-gen/
/target
Cargo.lock
112 changes: 112 additions & 0 deletions .goreleaser.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
before:
hooks:
- go mod download

builds:
- id: "onomyd-darwin"
main: ./cmd/onomyd
binary: onomyd
env:
- CGO_ENABLED=1
- CC=o64-clang
- CXX=o64-clang++
goos:
- darwin
goarch:
- amd64
flags:
- -tags=cgo
ldflags:
- -s -w -X github.com/cosmos/cosmos-sdk/version.Name=onomy -X github.com/cosmos/cosmos-sdk/version.AppName=onomyd -X github.com/cosmos/cosmos-sdk/version.Version={{.Version}} -X github.com/cosmos/cosmos-sdk/version.Commit={{.Commit}}
- id: "onomyd-darwin-arm64"
main: ./cmd/onomyd
binary: onomyd
env:
- CGO_ENABLED=1
- CC=oa64-clang
- CXX=oa64-clang++
goos:
- darwin
goarch:
- arm64
flags:
- -tags=cgo
ldflags:
- -s -w -X github.com/cosmos/cosmos-sdk/version.Name=onomy -X github.com/cosmos/cosmos-sdk/version.AppName=onomyd -X github.com/cosmos/cosmos-sdk/version.Version={{.Version}} -X github.com/cosmos/cosmos-sdk/version.Commit={{.Commit}}
- id: "onomyd-linux"
main: ./cmd/onomyd
binary: onomyd
env:
- CGO_ENABLED=1
- CC=gcc
- CXX=g++
goos:
- linux
goarch:
- amd64
flags:
- -tags=cgo
ldflags:
- -s -w -X github.com/cosmos/cosmos-sdk/version.Name=onomy -X github.com/cosmos/cosmos-sdk/version.AppName=onomyd -X github.com/cosmos/cosmos-sdk/version.Version={{.Version}} -X github.com/cosmos/cosmos-sdk/version.Commit={{.Commit}}
- id: "onomyd-linux-arm64"
main: ./cmd/onomyd
binary: onomyd
env:
- CGO_ENABLED=1
- CC=aarch64-linux-gnu-gcc
- CXX=aarch64-linux-gnu-g++
goos:
- linux
goarch:
- arm64
flags:
- -tags=cgo
ldflags:
- -s -w -X github.com/cosmos/cosmos-sdk/version.Name=onomy -X github.com/cosmos/cosmos-sdk/version.AppName=onomyd -X github.com/cosmos/cosmos-sdk/version.Version={{.Version}} -X github.com/cosmos/cosmos-sdk/version.Commit={{.Commit}}
- id: "onomyd-windows"
main: ./cmd/onomyd
binary: onomyd
env:
- CGO_ENABLED=1
- CC=x86_64-w64-mingw32-gcc
- CXX=x86_64-w64-mingw32-g++
goos:
- windows
goarch:
- amd64
flags:
- -tags=cgo
- -buildmode=exe
ldflags:
- -s -w -X github.com/cosmos/cosmos-sdk/version.Name=onomy -X github.com/cosmos/cosmos-sdk/version.AppName=onomyd -X github.com/cosmos/cosmos-sdk/version.Version={{.Version}} -X github.com/cosmos/cosmos-sdk/version.Commit={{.Commit}}

archives:
- name_template: '{{ .ProjectName }}_{{ .Version }}_{{- title .Os }}_{{ .Arch }}'
format_overrides:
- goos: windows
format: zip
builds:
- onomyd-darwin
- onomyd-darwin-arm64
- onomyd-windows
- onomyd-linux
- onomyd-linux-arm64
- id: binaries
builds:
- onomyd-linux
- onomyd-linux-arm64
name_template: '{{ .ProjectName }}_{{ .Version }}_{{- title .Os }}_{{ .Arch }}'
format: binary
files:
- none*

checksum:
name_template: 'checksums.txt'
changelog:
sort: asc
filters:
exclude:
- '^docs:'
- '^test:'
snapshot:
name_template: "{{ .Tag }}-next"
20 changes: 20 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,26 @@ format:
gofumpt -lang=1.6 -extra -s -w $(SCAN_FILES)
gogroup -order std,other,prefix=$(IMPORT_PREFIX) -rewrite $(SCAN_FILES)

PACKAGE_NAME:=github.com/onomyprotocol/onomy
GOLANG_CROSS_VERSION = v1.22

release:
@if [ ! -f ".release-env" ]; then \
echo "\033[91m.release-env is required for release\033[0m";\
exit 1;\
fi
docker run \
--rm \
--privileged \
-e CGO_ENABLED=1 \
--env-file .release-env \
-v /var/run/docker.sock:/var/run/docker.sock \
-v `pwd`:/go/src/$(PACKAGE_NAME) \
-w /go/src/$(PACKAGE_NAME) \
ghcr.io/goreleaser/goreleaser-cross:${GOLANG_CROSS_VERSION} \
release --clean --skip=validate

.PHONY: release
###############################################################################
### Protobuf ###
###############################################################################
Expand Down
Loading

0 comments on commit a8ff6c1

Please sign in to comment.