Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for x86_64 target arch, GHA #2

Merged
merged 14 commits into from
Jun 18, 2024
Merged
30 changes: 30 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# This workflow will build a golang project
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go

name: Test

on:
push:
branches: [ "main" ]
pull_request:

jobs:

test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules:
recursive

- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: '1.22'

- name: Build contracts
run: sudo make build-contracts

- name: Test
run: go test -v ./...
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
contracts_wasm
22 changes: 16 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,23 @@
### Build contracts ###
###########################

build-contracts:
#!/bin/bash

UNAMEP := $(shell uname -p)
build-contracts:
echo $(UNAMEP)
mkdir -p contracts_wasm
cd contracts; make build; cd ..
for file in ./contracts/artifacts/*.wasm; do \
echo "$$file"; \
mv "$$file" ./contracts_wasm/$$(basename "$$file" -aarch64.wasm).wasm; \
done
cp ./contracts/artifacts/** ./contracts_wasm/
for file in ./contracts/artifacts/*; do \
if [ $(UNAMEP) = arm ]; then \
echo "$$file"; \
BASENAME=$$(basename $$file); \
NEWNAME=$$(echo $$BASENAME | sed 's/-aarch64//'); \
mv $$file ./contracts_wasm/$$NEWNAME; \
else \
echo "$$file"; \
mv "$$file" ./contracts_wasm; \
fi \
done

.PHONY: build-contracts
16 changes: 14 additions & 2 deletions avida_ibc_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"encoding/json"
"fmt"
"runtime"
"testing"

sdjwttypes "github.com/nymlab/cheqd-interchaintest/types"
Expand All @@ -22,12 +23,23 @@ import (
func TestCheqdV2AvidaIbc(t *testing.T) {
t.Parallel()

var cheqd_version string
var repository string

if runtime.GOARCH == "arm64" {
cheqd_version = "v2.0.1-arm64"
repository = "ghcr.io/nymlab/cheqd-node"
} else {
cheqd_version = "sha-fdf3b2cb9bef2ee518f46e299eee97b4c4082ff2"
repository = "ghcr.io/cheqd/cheqd-node"
}

cf := interchaintest.NewBuiltinChainFactory(zaptest.NewLogger(t), []*interchaintest.ChainSpec{
{
Name: "cheqd",
ChainName: "cheqd",
Version: "v2.0.1-arm64",
ChainConfig: GetCheqdConfig(),
Version: cheqd_version,
ChainConfig: GetCheqdConfig(cheqd_version, repository),
NoHostMount: &[]bool{false}[0], // specify no mount
},
{
Expand Down
1 change: 1 addition & 0 deletions cheqd.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ func CreateAndUploadDid(
) []byte {

err := MustUploadPayload(ctx, "artifacts", didPayload, chain)

require.NoError(t, err, "upload file err")
err = MustUploadPayload(ctx, "artifacts", resourcePayload, chain)
require.NoError(t, err, "upload file err")
Expand Down
14 changes: 14 additions & 0 deletions cheqd_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package cheqd_interchaintest

import (
"context"
"runtime"
"testing"

interchaintest "github.com/strangelove-ventures/interchaintest/v7"
Expand All @@ -22,11 +23,24 @@ func TestCheqdV2UploadResource(t *testing.T) {
// create a single chain instance with x validators
validatorsCount, fullnodeCount := 1, 1

var cheqd_version string
var repository string

if runtime.GOARCH == "arm64" {
cheqd_version = "v2.0.1-arm64"
repository = "ghcr.io/nymlab/cheqd-node"
} else {
cheqd_version = "sha-fdf3b2cb9bef2ee518f46e299eee97b4c4082ff2"
repository = "ghcr.io/cheqd/cheqd-node"
}

ic, cheqd, _, _ := CreateCheqdChain(
t,
ctx,
validatorsCount,
fullnodeCount,
cheqd_version,
repository,
)
require.NotNil(t, ic)
require.NotNil(t, cheqd)
Expand Down
2 changes: 1 addition & 1 deletion contracts
Submodule contracts updated 50 files
+0 −2 .cargo/config
+2 −0 .cargo/config.toml
+84 −0 .github/workflows/tests.yml
+1 −0 .gitignore
+34 −12 Cargo.lock
+1 −1 Cargo.toml
+1 −1 contracts/anoncreds-verifier/src/contract.rs
+41 −0 contracts/avida_example/Cargo.toml
+386 −0 contracts/avida_example/schema/avida-example.json
+219 −0 contracts/avida_example/schema/raw/execute.json
+13 −0 contracts/avida_example/schema/raw/instantiate.json
+49 −0 contracts/avida_example/schema/raw/query.json
+82 −0 contracts/avida_example/schema/raw/response_to_get_route_requirements.json
+14 −0 contracts/avida_example/schema/raw/response_to_get_verifier_address.json
+11 −0 contracts/avida_example/src/bin/schemas.rs
+9 −0 contracts/avida_example/src/constants.rs
+233 −0 contracts/avida_example/src/contract.rs
+30 −0 contracts/avida_example/src/error.rs
+7 −0 contracts/avida_example/src/lib.rs
+78 −0 contracts/avida_example/src/tests/exec_test.rs
+23 −0 contracts/avida_example/src/tests/fixtures.rs
+130 −0 contracts/avida_example/src/tests/flow_test.rs
+3 −0 contracts/avida_example/src/tests/keypair/test_ed25519_private.pem
+3 −0 contracts/avida_example/src/tests/keypair/test_ed25519_public.pem
+5 −0 contracts/avida_example/src/tests/mod.rs
+62 −0 contracts/avida_example/src/tests/query_test.rs
+43 −0 contracts/avida_example/src/types.rs
+3 −0 contracts/sdjwt-verifier/Cargo.toml
+37 −1 contracts/sdjwt-verifier/README.md
+9 −1 contracts/sdjwt-verifier/src/contract.rs
+2 −0 contracts/sdjwt-verifier/src/errors.rs
+3 −0 contracts/sdjwt-verifier/src/lib.rs
+48 −0 contracts/sdjwt-verifier/src/tests/fixtures.rs
+2 −0 contracts/sdjwt-verifier/src/tests/mod.rs
+677 −0 contracts/sdjwt-verifier/src/tests/verifier_test.rs
+32 −1 contracts/sdjwt-verifier/src/types.rs
+197 −74 contracts/sdjwt-verifier/src/verifier.rs
+6 −3 packages/avida_test_utils/Cargo.toml
+40 −0 packages/avida_test_utils/fixtures/test_rsa_private.pem
+11 −0 packages/avida_test_utils/fixtures/test_rsa_public.pem
+2 −4 packages/avida_test_utils/src/lib.rs
+187 −0 packages/avida_test_utils/src/sdjwt/fixtures.rs
+1 −2 packages/avida_test_utils/src/sdjwt/mod.rs
+0 −145 packages/avida_test_utils/src/sdjwt/verifier_tests.rs
+0 −1 packages/avida_test_utils/src/util.rs
+3 −3 packages/cheqd/src/ibc.rs
+3 −3 packages/cheqd/src/types.rs
+0 −4 packages/common/Cargo.toml
+6 −2 scripts/build.sh
+1 −1 scripts/schemas.sh
Binary file removed contracts_wasm/avida_sdjwt_verifier.wasm
Binary file not shown.
1 change: 0 additions & 1 deletion contracts_wasm/checksums.txt

This file was deleted.

12 changes: 7 additions & 5 deletions setup.go
Original file line number Diff line number Diff line change
Expand Up @@ -68,16 +68,16 @@ func GetJunoEncoding() *testutil.TestEncodingConfig {
return &cfg
}

func GetCheqdConfig() ibc.ChainConfig {
func GetCheqdConfig(cheqd_version string, repository string) ibc.ChainConfig {
return ibc.ChainConfig{
Type: "cosmos",
Name: "cheqd",
ChainID: "cheqd-mainnet-1",
Images: []ibc.DockerImage{
{
Repository: "ghcr.io/nymlab/cheqd-node", // FOR LOCAL IMAGE USE: Docker Image Name
Repository: repository, // FOR LOCAL IMAGE USE: Docker Image Name
//Repository: "ghcr.io/strangelove-ventures/heighliner/cheqd", // FOR LOCAL IMAGE USE: Docker Image Name
Version: "v2.0.1-arm64", // FOR LOCAL IMAGE USE: Docker Image Tag
Version: cheqd_version, // FOR LOCAL IMAGE USE: Docker Image Tag
UidGid: "1000:1000",
},
},
Expand Down Expand Up @@ -123,14 +123,16 @@ func CreateCheqdChain(
t *testing.T,
ctx context.Context,
numVals, numFull int,
cheqd_version string,
repository string,
) (*interchaintest.Interchain, *cosmos.CosmosChain, *client.Client, string) {

cf := interchaintest.NewBuiltinChainFactory(zaptest.NewLogger(t), []*interchaintest.ChainSpec{
{
Name: "cheqd",
ChainName: "cheqd",
Version: "v2.0.1-arm64",
ChainConfig: GetCheqdConfig(),
Version: cheqd_version,
ChainConfig: GetCheqdConfig(cheqd_version, repository),
NoHostMount: &[]bool{false}[0], // specify no mount
NumValidators: &numVals,
NumFullNodes: &numFull,
Expand Down
Loading