Skip to content

Commit

Permalink
BridgeToken: add icon metadata field. Update metadata (#73)
Browse files Browse the repository at this point in the history
* BridgeToken: add `icon` metadata field.

* Add icon to Tokens

Token Contract now support icon field in their metadata.
Logic to support trustless information is added.

1. Add key to set metadata with power access, without requiring the Full Access Key
2. Add icon field according to NEP148
3. Interface for trustless bridge.

* Update Makefile

* delete no icon binary

* Add interface in the factory to update metadata

* Address comments + use .cargo

* Fix CI

* Update icon not supporte message

* feat: token metadata connector (#71)

* add ERC20 metadata connector contract

* allow bridge token factory to update metadata

* fix update NEP-141 metadata

* fix tests

* fix caller in bridge_token and add timestamp to the event

* Finish metadata bridging primitives

* Compile metadata emitter contract

* Update amount of Gas

Co-authored-by: Marcelo Fornet <[email protected]>

* Address comments

Co-authored-by: Marcelo Fornet <[email protected]>
Co-authored-by: Ahmed Ali <[email protected]>
  • Loading branch information
3 people authored Sep 16, 2021
1 parent ce7640d commit f1421b1
Show file tree
Hide file tree
Showing 21 changed files with 22,576 additions and 22 deletions.
11 changes: 4 additions & 7 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,7 @@ steps:
- label: "build all rust contracts"
command: |
cd bridge-token
./build.sh
cd ../bridge-token-factory
./build.sh
git status
make
changed_files=$$(git status --porcelain --untracked-files=no | wc -l)
if [ $$changed_files -gt 0 ]; then
echo 'contract changed, please rebuild contract'
Expand All @@ -31,9 +27,10 @@ steps:
yarn test
- label: "bridge token factory"
env:
BRIDGE_TOKEN: ../../res/bridge_token.wasm
command: |
source ~/.cargo/env
make
cd bridge-token-factory
mkdir -p target/debug
./build.sh
cargo test --all
42 changes: 42 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
CARGO = cargo

all: res/bridge_token.wasm res/bridge_token_factory.wasm res/ERC20MetadataLogger.json

res/bridge_token.wasm: $(shell find bridge-token/src -name "*.rs")
cd bridge-token && \
$(CARGO) build --target wasm32-unknown-unknown --release && \
cp target/wasm32-unknown-unknown/release/bridge_token.wasm ../res/ && \
ls -l ../res/bridge_token.wasm

res/bridge_token_factory.wasm: export BRIDGE_TOKEN = $(realpath res/bridge_token.wasm)
res/bridge_token_factory.wasm: res/bridge_token.wasm $(shell find bridge-token-factory/src -name "*.rs")
cd bridge-token-factory && \
$(CARGO) build --target wasm32-unknown-unknown --release && \
cp target/wasm32-unknown-unknown/release/bridge_token_factory.wasm ../res/ && \
ls -l ../res/bridge_token_factory.wasm

res/ERC20MetadataLogger.json: metadata-connector/contracts/ERC20MetadataLogger.sol
cd metadata-connector && \
yarn && \
yarn compile && \
cp artifacts/contracts/ERC20MetadataLogger.sol/ERC20MetadataLogger.json ../res/ && \
ls -l ../res/ERC20MetadataLogger.json

# <--
# For testing purposes only (can be removed at any moment)
no_icon: res/bridge_token_no_icon.wasm res/bridge_token_factory_no_icon.wasm

res/bridge_token_no_icon.wasm: $(shell find bridge-token/src -name "*.rs")
cd bridge-token && \
BRIDGE_TOKEN=$(realpath ../res/bridge_token.wasm) $(CARGO) build --target wasm32-unknown-unknown --no-default-features --release && \
cp target/wasm32-unknown-unknown/release/bridge_token.wasm ../res/bridge_token_no_icon.wasm && \
ls -l ../res/bridge_token_no_icon.wasm

res/bridge_token_factory_no_icon.wasm: export BRIDGE_TOKEN=$(realpath res/bridge_token_no_icon.wasm)
res/bridge_token_factory_no_icon.wasm: res/bridge_token_no_icon.wasm $(shell find bridge-token-factory/src -name "*.rs")
cd bridge-token-factory && \
$(CARGO) build --target wasm32-unknown-unknown --release && \
cp target/wasm32-unknown-unknown/release/bridge_token_factory.wasm ../res/bridge_token_factory_no_icon.wasm && \
ls -l ../res/bridge_token_factory_no_icon.wasm
# -->

2 changes: 2 additions & 0 deletions bridge-token-factory/.cargo/config
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[build]
rustflags = ["-C", "link-args=-s"]
Loading

0 comments on commit f1421b1

Please sign in to comment.