Skip to content

Commit 866b2c3

Browse files
committed
feat!: cosmwasm
Signed-off-by: Artur Troian <troian@users.noreply.github.com>
1 parent 8ec1657 commit 866b2c3

250 files changed

Lines changed: 17150 additions & 3926 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.env

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,18 @@
11
GO111MODULE=on
2+
CGO_ENABLED=1
23

34
KIND_VERSION=0.11.1
45
ROOT_DIR=${AKASH_ROOT}
56

67
AKASH_DEVCACHE_BASE=${AKASH_ROOT}/.cache
78
AKASH_DEVCACHE=${AKASH_DEVCACHE_BASE}
89
AKASH_DEVCACHE_BIN=${AKASH_DEVCACHE}/bin
10+
AKASH_DEVCACHE_LIB=${AKASH_DEVCACHE}/lib
911
AKASH_DEVCACHE_INCLUDE=${AKASH_DEVCACHE}/include
1012
AKASH_DEVCACHE_VERSIONS=${AKASH_DEVCACHE}/versions
1113
AKASH_DEVCACHE_NODE_MODULES=${AKASH_DEVCACHE}
1214
AKASH_DEVCACHE_NODE_BIN=${AKASH_DEVCACHE_NODE_MODULES}/node_modules/.bin
1315
AKASH_RUN=${AKASH_DEVCACHE}/run
1416
AKASH_RUN_BIN=${AKASH_RUN}/bin
17+
18+
CARGO_TARGET_DIR=${AKASH_DEVCACHE_BASE}/cosmwasm

.envrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,8 @@ export GOTOOLCHAIN
9999
export GOTOOLCHAIN_SEMVER
100100
export GOWORK
101101

102-
PATH_add "$AKASH_DEVCACHE_NODE_BIN"
103102
PATH_add "$AKASH_DEVCACHE_BIN"
103+
PATH_add "$AKASH_DEVCACHE_NODE_BIN"
104104

105105
AKASH_DIRENV_SET=1
106106
AKASH=$AKASH_DEVCACHE_BIN/akash

.github/actions/setup-ubuntu/action.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ runs:
1616
shell: bash
1717
run: |
1818
sudo apt-get update
19-
sudo apt-get install -y make direnv unzip lz4 wget curl npm jq pv coreutils libudev-dev
19+
sudo apt install -y make direnv unzip lz4 wget curl npm jq pv coreutils musl-tools libudev-dev gcc
2020
- name: Setup npm
2121
uses: actions/setup-node@v4
2222
with:
@@ -38,3 +38,6 @@ runs:
3838
uses: HatsuneMiku3939/direnv-action@v1
3939
with:
4040
masks: ''
41+
- name: Clear stale registry cache
42+
shell: bash
43+
run: docker volume rm registry_cache || true

.github/workflows/dispatch.yaml

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,3 @@ jobs:
2020
workflow: akash
2121
ref: refs/heads/main
2222
inputs: '{ "tag" : "${{ env.RELEASE_TAG }}" }'
23-
dispatch-provider:
24-
runs-on: ubuntu-latest
25-
steps:
26-
- name: notify homebrew with new release
27-
uses: benc-uk/workflow-dispatch@v1
28-
with:
29-
token: ${{ secrets.GORELEASER_ACCESS_TOKEN }}
30-
repo: akash-network/homebrew-tap
31-
workflow: provider-services
32-
ref: refs/heads/main
33-
inputs: '{"tag": "${{ env.RELEASE_TAG }}"}'

.github/workflows/tests.yaml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,10 @@ jobs:
5555
dotnet: true # .NET runtime. Saves ~2.7GB. Total CI impact: +10s (not used in build)
5656
haskell: true # Haskell (GHC). Saves ~5GB. Total CI impact: +10s (not used in build)
5757
large-packages: true # large packages (llvm, php, mysql, etc). Saves ~5.3GB. Total CI impact: +60s (not used in build)
58+
- name: Set up QEMU
59+
uses: docker/setup-qemu-action@v3
60+
- name: Set up Docker Buildx
61+
uses: docker/setup-buildx-action@v3
5862
- name: Setup environment
5963
uses: ./.github/actions/setup-ubuntu
6064
- run: make bins
@@ -136,8 +140,7 @@ jobs:
136140
- name: git tag
137141
run: git tag -a ${{ env.RELEASE_TAG }} -m ${{ env.RELEASE_TAG }}
138142
- name: release dry-run
139-
run: |
140-
make release
143+
run: make release
141144

142145
network-upgrade-names:
143146
runs-on: ubuntu-latest

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,10 @@ coverage.txt
3434
/.editorconfig
3535

3636
dev.env
37+
38+
*.test
39+
40+
# Added by cargo
41+
42+
/target
43+
/artifacts

.goreleaser-docker.yaml

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@ builds:
2424
- "-tags={{ .Env.BUILD_TAGS }}"
2525
- -trimpath
2626
ldflags:
27-
- "{{ .Env.BUILD_VARS }}"
28-
- "{{ .Env.STRIP_FLAGS }}"
29-
- "-linkmode={{ .Env.LINKMODE }}"
30-
- -extldflags "-lc -lrt -lpthread"
27+
- "{{ .Env.BUILD_LDFLAGS }}"
28+
- -s -w
29+
- -linkmode=external
30+
- -extldflags "-L./.cache/lib -lwasmvm_muslc.x86_64 -Wl,-z,muldefs -lm -lrt -lc"
3131
- id: akash-linux-arm64
3232
binary: akash
3333
main: ./cmd/akash
@@ -43,12 +43,13 @@ builds:
4343
- "-tags={{ .Env.BUILD_TAGS }}"
4444
- -trimpath
4545
ldflags:
46-
- "{{ .Env.BUILD_VARS }}"
47-
- "{{ .Env.STRIP_FLAGS }}"
48-
- "-linkmode={{ .Env.LINKMODE }}"
49-
- -extldflags "-lc -lrt -lpthread"
46+
- "{{ .Env.BUILD_LDFLAGS }}"
47+
- -s -w
48+
- -linkmode=external
49+
- -extldflags "-L./.cache/lib -lwasmvm_muslc.aarch64 -Wl,-z,muldefs -lm -lrt -lc"
50+
5051
dockers:
51-
- dockerfile: _build/Dockerfile.akash
52+
- dockerfile: _build/akash.Dockerfile
5253
use: buildx
5354
goarch: amd64
5455
goos: linux
@@ -63,7 +64,7 @@ dockers:
6364
- --label=org.opencontainers.image.revision={{ .FullCommit }}
6465
image_templates:
6566
- '{{ .Env.DOCKER_IMAGE }}:latest-amd64'
66-
- dockerfile: _build/Dockerfile.akash
67+
- dockerfile: _build/akash.Dockerfile
6768
use: buildx
6869
goarch: arm64
6970
goos: linux

.goreleaser-test-bins.yaml

Lines changed: 31 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,16 @@ builds:
2020
env:
2121
- CC=o64-clang
2222
- CXX=o64-clang++
23+
- CGO_CFLAGS=-mmacosx-version-min=10.12
24+
- CGO_LDFLAGS=-L./.cache/lib -mmacosx-version-min=10.12
2325
flags:
2426
- "-mod={{ .Env.MOD }}"
25-
- "-tags={{ .Env.BUILD_TAGS }}"
27+
- "-tags={{ .Env.BUILD_TAGS }} static_wasm"
2628
- -trimpath
2729
ldflags:
28-
- "{{ .Env.BUILD_VARS }}"
29-
- "{{ .Env.STRIP_FLAGS }}"
30-
- "-linkmode={{ .Env.LINKMODE }}"
30+
- "{{ .Env.BUILD_LDFLAGS }}"
31+
- -s -w
32+
- -linkmode=external
3133
- id: akash-darwin-arm64
3234
binary: akash
3335
main: ./cmd/akash
@@ -38,14 +40,16 @@ builds:
3840
env:
3941
- CC=oa64-clang
4042
- CXX=oa64-clang++
43+
- CGO_CFLAGS=-mmacosx-version-min=10.12
44+
- CGO_LDFLAGS=-L./.cache/lib -mmacosx-version-min=10.12
4145
flags:
4246
- "-mod={{ .Env.MOD }}"
43-
- "-tags={{ .Env.BUILD_TAGS }}"
47+
- "-tags={{ .Env.BUILD_TAGS }} static_wasm"
4448
- -trimpath
4549
ldflags:
46-
- "{{ .Env.BUILD_VARS }}"
47-
- "{{ .Env.STRIP_FLAGS }}"
48-
- "-linkmode={{ .Env.LINKMODE }}"
50+
- "{{ .Env.BUILD_LDFLAGS }}"
51+
- -s -w
52+
- -linkmode=external
4953
- id: akash-linux-amd64
5054
binary: akash
5155
main: ./cmd/akash
@@ -61,10 +65,11 @@ builds:
6165
- "-tags={{ .Env.BUILD_TAGS }}"
6266
- -trimpath
6367
ldflags:
64-
- "{{ .Env.BUILD_VARS }}"
65-
- "{{ .Env.STRIP_FLAGS }}"
66-
- "-linkmode={{ .Env.LINKMODE }}"
67-
- -extldflags "-lc -lrt -lpthread"
68+
- "{{ .Env.BUILD_LDFLAGS }}"
69+
- -s -w
70+
- -linkmode=external
71+
# yamllint disable-line rule:line-length
72+
- -extldflags "-L./.cache/lib -lwasmvm_muslc.x86_64 -Wl,-z,muldefs -lm -lrt -lc"
6873
- id: akash-linux-arm64
6974
binary: akash
7075
main: ./cmd/akash
@@ -80,10 +85,11 @@ builds:
8085
- "-tags={{ .Env.BUILD_TAGS }}"
8186
- -trimpath
8287
ldflags:
83-
- "{{ .Env.BUILD_VARS }}"
84-
- "{{ .Env.STRIP_FLAGS }}"
85-
- "-linkmode={{ .Env.LINKMODE }}"
86-
- -extldflags "-lc -lrt -lpthread"
88+
- "{{ .Env.BUILD_LDFLAGS }}"
89+
- -s -w
90+
- -linkmode=external
91+
# yamllint disable-line rule:line-length
92+
- -extldflags "-L./.cache/lib -lwasmvm_muslc.aarch64 -Wl,-z,muldefs -lm -lrt -lc"
8793
universal_binaries:
8894
- id: akash-darwin-universal
8995
ids:
@@ -104,3 +110,12 @@ archives:
104110
- zip
105111
files:
106112
- none*
113+
- id: contracts
114+
name_template: "contracts"
115+
meta: true
116+
wrap_in_directory: false
117+
formats:
118+
- zip
119+
files:
120+
- src: .cache/cosmwasm/artifacts/**.*
121+
strip_parent: true

.goreleaser.yaml

Lines changed: 37 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,16 @@ builds:
2020
env:
2121
- CC=o64-clang
2222
- CXX=o64-clang++
23+
- CGO_CFLAGS=-mmacosx-version-min=10.12
2324
flags:
2425
- "-mod={{ .Env.MOD }}"
25-
- "-tags={{ .Env.BUILD_TAGS }}"
26+
- "-tags={{ .Env.BUILD_TAGS }} static_wasm"
2627
- -trimpath
2728
ldflags:
28-
- "{{ .Env.BUILD_VARS }}"
29-
- "{{ .Env.STRIP_FLAGS }}"
30-
- "-linkmode={{ .Env.LINKMODE }}"
29+
- "{{ .Env.BUILD_LDFLAGS }}"
30+
- -s -w
31+
- -linkmode=external
32+
- -extldflags "-L./.cache/lib -mmacosx-version-min=10.12"
3133
- id: akash-darwin-arm64
3234
binary: akash
3335
main: ./cmd/akash
@@ -38,14 +40,16 @@ builds:
3840
env:
3941
- CC=oa64-clang
4042
- CXX=oa64-clang++
43+
- CGO_CFLAGS=-mmacosx-version-min=10.12
4144
flags:
4245
- "-mod={{ .Env.MOD }}"
43-
- "-tags={{ .Env.BUILD_TAGS }}"
46+
- "-tags={{ .Env.BUILD_TAGS }} static_wasm"
4447
- -trimpath
4548
ldflags:
46-
- "{{ .Env.BUILD_VARS }}"
47-
- "{{ .Env.STRIP_FLAGS }}"
48-
- "-linkmode={{ .Env.LINKMODE }}"
49+
- "{{ .Env.BUILD_LDFLAGS }}"
50+
- -s -w
51+
- -linkmode=external
52+
- -extldflags "-L./.cache/lib -mmacosx-version-min=10.12"
4953
- id: akash-linux-amd64
5054
binary: akash
5155
main: ./cmd/akash
@@ -61,10 +65,11 @@ builds:
6165
- "-tags={{ .Env.BUILD_TAGS }}"
6266
- -trimpath
6367
ldflags:
64-
- "{{ .Env.BUILD_VARS }}"
65-
- "{{ .Env.STRIP_FLAGS }}"
66-
- "-linkmode={{ .Env.LINKMODE }}"
67-
- -extldflags "-lc -lrt -lpthread"
68+
- "{{ .Env.BUILD_LDFLAGS }}"
69+
- -s -w
70+
- -linkmode=external
71+
# yamllint disable-line rule:line-length
72+
- -extldflags "-L./.cache/lib -lwasmvm_muslc.x86_64 -Wl,-z,muldefs -lm -lrt -lc"
6873
- id: akash-linux-arm64
6974
binary: akash
7075
main: ./cmd/akash
@@ -80,10 +85,11 @@ builds:
8085
- "-tags={{ .Env.BUILD_TAGS }}"
8186
- -trimpath
8287
ldflags:
83-
- "{{ .Env.BUILD_VARS }}"
84-
- "{{ .Env.STRIP_FLAGS }}"
85-
- "-linkmode={{ .Env.LINKMODE }}"
86-
- -extldflags "-lc -lrt -lpthread"
88+
- "{{ .Env.BUILD_LDFLAGS }}"
89+
- -s -w
90+
- -linkmode=external
91+
# yamllint disable-line rule:line-length
92+
- -extldflags "-L./.cache/lib -lwasmvm_muslc.aarch64 -Wl,-z,muldefs -lm -lrt -lc"
8793
universal_binaries:
8894
- id: akash-darwin-universal
8995
ids:
@@ -114,14 +120,23 @@ archives:
114120
- zip
115121
files:
116122
- none*
123+
- id: contracts
124+
name_template: "contracts"
125+
meta: true
126+
wrap_in_directory: false
127+
formats:
128+
- zip
129+
files:
130+
- src: .cache/cosmwasm/artifacts/**.*
131+
strip_parent: true
117132

118133
checksum:
119134
# You can change the name of the checksums file.
120135
# Default is `{{ .ProjectName }}_{{ .Version }}_checksums.txt`.
121136
name_template: "akash_{{ .Version }}_checksums.txt"
122137

123138
dockers:
124-
- dockerfile: _build/Dockerfile.akash
139+
- dockerfile: _build/akash.Dockerfile
125140
use: buildx
126141
goarch: amd64
127142
goos: linux
@@ -132,13 +147,15 @@ dockers:
132147
- --label=org.opencontainers.image.url={{ .GitURL }}
133148
- --label=org.opencontainers.image.source={{ .GitURL }}
134149
- --label=org.opencontainers.image.version={{ replace .Version "+" "-" }}
150+
# yamllint disable-line rule:line-length
135151
- --label=org.opencontainers.image.created={{ time "2006-01-02T15:04:05Z07:00" }}
136152
- --label=org.opencontainers.image.revision={{ .FullCommit }}
137153
image_templates:
138154
- '{{ .Env.DOCKER_IMAGE }}:{{ .ShortCommit }}-amd64'
139155
- '{{ .Env.DOCKER_IMAGE }}:{{ replace .Version "+" "-" }}-amd64'
156+
# yamllint disable-line rule:line-length
140157
- '{{ .Env.DOCKER_IMAGE }}:{{if eq .Env.STABLE "true"}}stable{{else}}latest{{end}}-amd64'
141-
- dockerfile: _build/Dockerfile.akash
158+
- dockerfile: _build/akash.Dockerfile
142159
use: buildx
143160
goarch: arm64
144161
goos: linux
@@ -149,11 +166,13 @@ dockers:
149166
- --label=org.opencontainers.image.url={{ .GitURL }}
150167
- --label=org.opencontainers.image.source={{ .GitURL }}
151168
- --label=org.opencontainers.image.version={{ replace .Version "+" "-" }}
169+
# yamllint disable-line rule:line-length
152170
- --label=org.opencontainers.image.created={{ time "2006-01-02T15:04:05Z07:00" }}
153171
- --label=org.opencontainers.image.revision={{ .FullCommit }}
154172
image_templates:
155173
- '{{ .Env.DOCKER_IMAGE }}:{{ .ShortCommit }}-arm64'
156174
- '{{ .Env.DOCKER_IMAGE }}:{{ replace .Version "+" "-" }}-arm64'
175+
# yamllint disable-line rule:line-length
157176
- '{{ .Env.DOCKER_IMAGE }}:{{if eq .Env.STABLE "true"}}stable{{else}}latest{{end}}-arm64'
158177
docker_manifests:
159178
- name_template: "{{ .Env.DOCKER_IMAGE }}:{{ .ShortCommit }}"

.mockery.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,11 @@ template: testify
55
template-data:
66
unroll-variadic: true
77
packages:
8-
pkg.akt.dev/node/testutil/cosmos:
8+
pkg.akt.dev/node/v2/testutil/cosmos:
99
config:
1010
dir: testutil/cosmos/mocks
1111
interfaces:
1212
AuthzKeeper: {}
13+
AccountKeeper: {}
1314
BankKeeper: {}
1415
TakeKeeper: {}

0 commit comments

Comments
 (0)