From 85c36ae231196781d6b3a42aebfa35c69cb128bb Mon Sep 17 00:00:00 2001 From: Ugo Date: Tue, 25 Mar 2025 10:55:44 +0100 Subject: [PATCH 01/52] ci: add GitHub Actions workflow --- .github/workflows/main.yml | 86 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 .github/workflows/main.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 00000000..c7b8c82a --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,86 @@ +name: Test SDK + +on: [pull_request] + +jobs: + test: + runs-on: ubuntu-latest + services: + postgres: + image: postgres + env: + POSTGRES_USER: graphnode + POSTGRES_PASSWORD: password + POSTGRES_DB: graphnode-db + options: >- + --health-cmd pg_isready + --health-interval 10s + --health-timeout 5s + --health-retries 5 + command: ["postgres", "-c", "shared_preload_libraries=pg_stat_statements"] + steps: + - uses: actions/checkout@v4 + + - uses: actions/nodejs@v4 + with: + node-version: '18' + + - name: Prepare + run: node test/scripts/prepare-test-env.js + + - name: Test + run: npm test + + - name: Install Foundry + uses: foundry-rs/foundry-toolchain@v1 + with: + version: stable + cache: true + + - name: Start Anvil + run: | + anvil --host 0.0.0.0 --port 8545 --block-time 1 --hardfork berlin --fork-url $(cat local-stack-env/BELLECOUR_FORK_URL) --fork-block-number $(cat local-stack-env/BELLECOUR_FORK_BLOCK) --chain-id 134 --gas-limit 6700000 --gas-price 0 & + + - name: Wait for Anvil to start + run: | + timeout=30 + interval=1 + echo "Waiting for Anvil to start..." + for ((i=0; i Date: Mon, 21 Apr 2025 19:25:02 +0200 Subject: [PATCH 02/52] refactor: streamline CI configuration and improve service definitions --- .drone.yml | 142 ------------------------------------- .github/workflows/main.yml | 133 +++++++++++++++------------------- 2 files changed, 59 insertions(+), 216 deletions(-) diff --git a/.drone.yml b/.drone.yml index d4b5a297..9f5b70ef 100644 --- a/.drone.yml +++ b/.drone.yml @@ -11,148 +11,6 @@ trigger: steps: ##### START LOCAL STACK ##### - - name: prepare-local-stack-env - image: node - commands: - - node test/scripts/prepare-test-env.js - - - name: service-internal-error - detach: true - image: nginx:alpine - pull: always - expose: - - 80 - commands: - - cp test/mock/server/http500.nginx.conf /etc/nginx/conf.d/default.conf - - nginx -g "daemon off;" - - - name: bellecour-fork - detach: true - image: ghcr.io/foundry-rs/foundry:v1.0.0 - pull: always - expose: - - 8545 - commands: - - anvil --host 0.0.0.0 --port 8545 --block-time 1 --hardfork berlin --fork-url $(cat local-stack-env/BELLECOUR_FORK_URL) --fork-block-number $(cat local-stack-env/BELLECOUR_FORK_BLOCK) --chain-id 134 --gas-limit 6700000 --gas-price 0 - depends_on: - - prepare-local-stack-env - - - name: bellecour-fork-healthy - image: bash - commands: - - while ! nc -z bellecour-fork 8545 ; do sleep 1 ; done && echo "bellecour-fork ready" - depends_on: - - bellecour-fork - - - name: ipfs - image: ipfs/go-ipfs:v0.9.1 - detach: true - expose: - - 8080 - - 5001 - - - name: ipfs-healthy - image: bash - commands: - - while ! nc -z ipfs 8080 ; do sleep 1 ; done && echo "ipfs gateway ready" - - while ! nc -z ipfs 5001 ; do sleep 1 ; done && echo "ipfs upload ready" - depends_on: - - ipfs - - - name: market-mongo - image: mongo:6.0.3 - detach: true - expose: - - 27017 - - - name: market-mongo-healthy - image: bash - commands: - - while ! nc -z market-mongo 27017 ; do sleep 1 ; done && echo "market-mongo ready" - depends_on: - - market-mongo - - - name: market-redis - image: redis:7.0.7-alpine - detach: true - commands: - - redis-server --appendonly yes - expose: - - 6379 - - - name: market-redis-healthy - image: bash - commands: - - while ! nc -z market-redis 6379 ; do sleep 1 ; done && echo "market-redis ready" - depends_on: - - market-redis - - - name: result-proxy-mongo - image: library/mongo:4.2 - detach: true - commands: - - mongod --bind_ip_all --port 13202 - expose: - - 13202 - - - name: result-proxy-mongo-healthy - image: bash - commands: - - while ! nc -z result-proxy-mongo 13202 ; do sleep 1 ; done && echo "result-proxy-mongo ready" - depends_on: - - result-proxy-mongo - - - name: graphnode-postgres - image: postgres:12 - detach: true - commands: - - docker-entrypoint.sh postgres -cshared_preload_libraries=pg_stat_statements - expose: - - 5432 - environment: - POSTGRES_USER: graphnode - POSTGRES_PASSWORD: password - POSTGRES_DB: graphnode-db - - - name: graphnode-postgres-healthy - image: bash - commands: - - while ! nc -z graphnode-postgres 5432 ; do sleep 1 ; done && echo "graphnode-postgres ready" - depends_on: - - graphnode-postgres - - - name: graphnode - image: graphprotocol/graph-node:v0.27.0 - detach: true - expose: - - 8000 - - 8020 - environment: - postgres_host: graphnode-postgres - postgres_port: 5432 - postgres_user: graphnode - postgres_pass: password - postgres_db: graphnode-db - ipfs: ipfs:5001 - ethereum: bellecour:http://bellecour-fork:8545 - commands: - - export GRAPH_ETHEREUM_GENESIS_BLOCK_NUMBER=$(cat local-stack-env/BELLECOUR_FORK_BLOCK) - - echo $GRAPH_ETHEREUM_GENESIS_BLOCK_NUMBER - - start - depends_on: - - prepare-local-stack-env - - bellecour-fork-healthy - - ipfs-healthy - - graphnode-postgres-healthy - - - name: graphnode-healthy - image: bash - commands: - - while ! nc -z graphnode 8020 ; do sleep 1 ; done && echo "graphnode admin ready" - - while ! nc -z graphnode 8000 ; do sleep 1 ; done && echo "graphnode gql ready" - depends_on: - - graphnode - - name: sms image: iexechub/iexec-sms:8.7.0 detach: true diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index c7b8c82a..402b3cf5 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -5,82 +5,67 @@ on: [pull_request] jobs: test: runs-on: ubuntu-latest - services: - postgres: - image: postgres - env: - POSTGRES_USER: graphnode - POSTGRES_PASSWORD: password - POSTGRES_DB: graphnode-db - options: >- - --health-cmd pg_isready - --health-interval 10s - --health-timeout 5s - --health-retries 5 - command: ["postgres", "-c", "shared_preload_libraries=pg_stat_statements"] - steps: - - uses: actions/checkout@v4 + services: + postgres: + image: postgres + env: + POSTGRES_USER: graphnode + POSTGRES_PASSWORD: password + POSTGRES_DB: graphnode-db + options: >- + --health-cmd pg_isready + --health-interval 10s + --health-timeout 5s + --health-retries 5 + ipfs: + image: ipfs/kubo:v0.17.0 + ports: + - 5001:5001 + graphnode: + image: graphprotocol/graph-node:latest + env: + - IPFS: ipfs:5001 + - POSTGRES_HOST: postgres + - POSTGRES_USER: graphnode + - POSTGRES_DB: graphnode-db + - POSTGRES_PASSWORD: password + - ETHEREUM: bellecour:http://localhost:8545 + ports: + - 8000:8000 + - 8020:8020 + steps: + - uses: actions/checkout@v4 + - uses: actions/nodejs@v4 + with: + node-version: '18' + - name: Prepare + run: node test/scripts/prepare-test-env.js + - name: Test + run: npm test - - uses: actions/nodejs@v4 - with: - node-version: '18' + - name: Install Foundry + uses: foundry-rs/foundry-toolchain@v1 + with: + version: stable + cache: true - - name: Prepare - run: node test/scripts/prepare-test-env.js + - name: Start Anvil + uses: iExecBlockchainComputing/anvil-github-action@main + with: + anvil-port: "8545" + block-time: "1" + hardfork: "berlin" + chain-id: "134" + gas-limit: "6700000" + gas-price: "0" - - name: Test - run: npm test + - name: Start MongoDB + uses: supercharge/mongodb-github-action@1.12.0 + with: + mongodb-version: '6.0' - - name: Install Foundry - uses: foundry-rs/foundry-toolchain@v1 - with: - version: stable - cache: true + - name: Start Redis + uses: supercharge/redis-github-action@1.7.0 + with: + redis-version: '7' - - name: Start Anvil - run: | - anvil --host 0.0.0.0 --port 8545 --block-time 1 --hardfork berlin --fork-url $(cat local-stack-env/BELLECOUR_FORK_URL) --fork-block-number $(cat local-stack-env/BELLECOUR_FORK_BLOCK) --chain-id 134 --gas-limit 6700000 --gas-price 0 & - - - name: Wait for Anvil to start - run: | - timeout=30 - interval=1 - echo "Waiting for Anvil to start..." - for ((i=0; i Date: Mon, 21 Apr 2025 19:38:21 +0200 Subject: [PATCH 03/52] refactor: streamline CI configuration and improve service definitions --- .drone.yml | 274 ----------------------------------- .github/workflows/main.yml | 282 +++++++++++++++++++++++++++++++------ 2 files changed, 236 insertions(+), 320 deletions(-) diff --git a/.drone.yml b/.drone.yml index 9f5b70ef..db614c75 100644 --- a/.drone.yml +++ b/.drone.yml @@ -1,277 +1,3 @@ -kind: pipeline -type: docker -name: default - -trigger: - event: - exclude: - - promote - - pull_request - -steps: - ##### START LOCAL STACK ##### - - - name: sms - image: iexechub/iexec-sms:8.7.0 - detach: true - environment: - JAVA_TOOL_OPTIONS: '-Xmx256M' - IEXEC_SMS_BLOCKCHAIN_NODE_ADDRESS: http://bellecour-fork:8545 - IEXEC_HUB_ADDRESS: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f' - IEXEC_SMS_TEE_RUNTIME_FRAMEWORK: scone - IEXEC_SMS_IMAGE_LAS_IMAGE: 'las-image' - IEXEC_TEE_WORKER_PRE_COMPUTE_IMAGE: 'pre-compute-image' - IEXEC_TEE_WORKER_PRE_COMPUTE_FINGERPRINT: 'pre-compute-fingerprint' - IEXEC_TEE_WORKER_POST_COMPUTE_IMAGE: 'post-compute-image' - IEXEC_TEE_WORKER_POST_COMPUTE_FINGERPRINT: 'post-compute-fingerprint' - expose: - - 13300 - depends_on: - - bellecour-fork-healthy - - - name: sms-healthy - image: bash - commands: - - while ! nc -z sms 13300 ; do sleep 1 ; done && echo "sms ready" - depends_on: - - sms - - - name: sms-gramine - image: iexechub/iexec-sms:8.7.0 - detach: true - environment: - JAVA_TOOL_OPTIONS: '-Xmx256M' - IEXEC_SMS_BLOCKCHAIN_NODE_ADDRESS: http://bellecour-fork:8545 - IEXEC_HUB_ADDRESS: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f' - IEXEC_SMS_TEE_RUNTIME_FRAMEWORK: scone - IEXEC_SMS_IMAGE_LAS_IMAGE: 'las-image' - IEXEC_TEE_WORKER_PRE_COMPUTE_IMAGE: 'pre-compute-image' - IEXEC_TEE_WORKER_PRE_COMPUTE_FINGERPRINT: 'pre-compute-fingerprint' - IEXEC_TEE_WORKER_POST_COMPUTE_IMAGE: 'post-compute-image' - IEXEC_TEE_WORKER_POST_COMPUTE_FINGERPRINT: 'post-compute-fingerprint' - expose: - - 13300 - depends_on: - - bellecour-fork-healthy - - - name: sms-gramine-healthy - image: bash - commands: - - while ! nc -z sms-gramine 13300 ; do sleep 1 ; done && echo "sms ready" - depends_on: - - sms - - - name: result-proxy - image: iexechub/iexec-result-proxy:7.1.0 - detach: true - environment: - IEXEC_PRIVATE_CHAIN_ADDRESS: http://bellecour-fork:8545 - IEXEC_PUBLIC_CHAIN_ADDRESS: http://bellecour-fork:8545 - IEXEC_HUB_ADDRESS: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f' - MONGO_HOST: result-proxy-mongo - MONGO_PORT: 13202 - IEXEC_IPFS_HOST: ipfs - expose: - - 13200 - depends_on: - - bellecour-fork-healthy - - ipfs-healthy - - result-proxy-mongo-healthy - - - name: result-proxy-healthy - image: bash - commands: - - while ! nc -z result-proxy 13200 ; do sleep 1 ; done && echo "result-proxy ready" - depends_on: - - result-proxy - - - name: market-watcher - image: iexechub/iexec-market-watcher:6.4 - detach: true - environment: - CHAIN: BELLECOUR - ETH_WS_HOST: ws://bellecour-fork:8545 - ETH_RPC_HOST: http://bellecour-fork:8545 - MONGO_HOST: market-mongo - REDIS_HOST: market-redis - commands: - - export START_BLOCK=$(cat local-stack-env/BELLECOUR_FORK_BLOCK) - - cd /app - - npm start - depends_on: - - prepare-local-stack-env - - bellecour-fork-healthy - - market-redis-healthy - - market-mongo-healthy - - - name: market-api - image: iexechub/iexec-market-api:6.4 - detach: true - expose: - - 3000 - environment: - CHAINS: BELLECOUR_FORK - BELLECOUR_FORK_ETH_RPC_HOST: http://bellecour-fork:8545 - BELLECOUR_FORK_CHAIN_ID: 134 - BELLECOUR_FORK_IS_NATIVE: 'true' - BELLECOUR_FORK_IEXEC_ADDRESS: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f' - MONGO_HOST: market-mongo - REDIS_HOST: market-redis - RATE_LIMIT_MAX: 10000 - RATE_LIMIT_PERIOD: 60000 - MAX_OPEN_ORDERS_PER_WALLET: 1000 - depends_on: - - bellecour-fork-healthy - - market-redis-healthy - - market-mongo-healthy - - - name: market-api-healthy - image: bash - commands: - - while ! nc -z market-api 3000 ; do sleep 1 ; done && echo "market-api ready" - depends_on: - - market-api - - market-watcher - - - name: voucher-subgraph-deployer - # https://github.com/iExecBlockchainComputing/iexec-voucher-subgraph - image: iexechub/voucher-subgraph-deployer:1.0.0 - pull: always - environment: - RPC_URL: http://bellecour-fork:8545 - GRAPHNODE_URL: http://graphnode:8020 - IPFS_URL: http://ipfs:5001 - VOUCHER_HUB_ADDRESS: '0x3137B6DF4f36D338b82260eDBB2E7bab034AFEda' - commands: - - export VOUCHER_HUB_START_BLOCK=$(cat local-stack-env/BELLECOUR_FORK_BLOCK) - - cd /iexec-voucher-subgraph && npm run all - depends_on: - - bellecour-fork-healthy - - ipfs-healthy - - graphnode-healthy - - - name: custom-token-chain - detach: true - image: 'iexechub/poco-chaintest:5.3.2-token-openethereum' - expose: - - 8545 - - - name: custom-token-chain-healthy - image: bash - commands: - - while ! nc -z custom-token-chain 8545 ; do sleep 1 ; done && echo "custom-token-chain ready" - depends_on: - - custom-token-chain - - - name: stack-ready - image: bash - commands: - - echo "all services ready" - depends_on: - - bellecour-fork-healthy - - sms-healthy - - sms-gramine-healthy - - result-proxy-healthy - - market-api-healthy - - ipfs-healthy - - graphnode-healthy - - custom-token-chain-healthy - - voucher-subgraph-deployer - - ### START LOCAL STACK END ### - - - name: install - image: node:18 - pull: always - commands: - - node -v - - npm -v - - npm ci - - - name: build - image: node:18 - pull: always - commands: - - npm run build - depends_on: - - install - - - name: format - image: node:18.19 - commands: - - npm run check-format - depends_on: - - build - - - name: lint - image: node:18.19 - commands: - - npm run lint - depends_on: - - build - - - name: test - image: node:18 - pull: always - environment: - ALCHEMY_API_KEY: - from_secret: alchemy_api_key - INFURA_PROJECT_ID: - from_secret: infura_project_id - ETHERSCAN_API_KEY: - from_secret: etherscan_api_key - commands: - - apt update - - apt install xxd - - node -v - - npm -v - - npm -g install . - - npm test - depends_on: - - build - - stack-ready - - - name: code analysis - # issue with sonarsource/sonar-scanner-cli:latest - # https://community.sonarsource.com/t/error-running-sonarsource-sonar-scanner-cli-latest/116539 - # 5.0.1 is working - image: sonarsource/sonar-scanner-cli:5 - pull: always - environment: - SONAR_TOKEN: - from_secret: sonar_token - SONAR_HOST: - from_secret: sonar_host - commands: - - sonar-scanner -Dsonar.host.url=$SONAR_HOST -Dsonar.branch.name=$DRONE_BRANCH - depends_on: - - test - - - name: test node 20 - image: node:20 - pull: always - environment: - ALCHEMY_API_KEY: - from_secret: alchemy_api_key - INFURA_PROJECT_ID: - from_secret: infura_project_id - ETHERSCAN_API_KEY: - from_secret: etherscan_api_key - commands: - - apt update - - apt install xxd - - node -v - - npm -v - - npm -g install . - - npm test - when: - event: - - tag - depends_on: - - build - - stack-ready - - test - --- kind: pipeline type: docker diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 402b3cf5..870cc607 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -5,67 +5,257 @@ on: [pull_request] jobs: test: runs-on: ubuntu-latest + env: + ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }} + INFURA_PROJECT_ID: ${{ secrets.INFURA_PROJECT_ID }} + ETHERSCAN_API_KEY: ${{ secrets.ETHERSCAN_API_KEY }} services: postgres: - image: postgres + image: postgres:12 + ports: + - 5432:5432 env: POSTGRES_USER: graphnode POSTGRES_PASSWORD: password POSTGRES_DB: graphnode-db options: >- - --health-cmd pg_isready + --health-cmd "pg_isready -U graphnode" --health-interval 10s --health-timeout 5s --health-retries 5 + ipfs: - image: ipfs/kubo:v0.17.0 + image: ipfs/go-ipfs:v0.9.1 ports: - 5001:5001 + - 8080:8080 + options: >- + --health-cmd "bash -c 'nc -z localhost 5001 && nc -z localhost 8080'" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + graphnode: - image: graphprotocol/graph-node:latest - env: - - IPFS: ipfs:5001 - - POSTGRES_HOST: postgres - - POSTGRES_USER: graphnode - - POSTGRES_DB: graphnode-db - - POSTGRES_PASSWORD: password - - ETHEREUM: bellecour:http://localhost:8545 + image: graphprotocol/graph-node:v0.27.0 ports: - 8000:8000 - 8020:8020 - steps: - - uses: actions/checkout@v4 - - uses: actions/nodejs@v4 - with: - node-version: '18' - - name: Prepare - run: node test/scripts/prepare-test-env.js - - name: Test - run: npm test - - - name: Install Foundry - uses: foundry-rs/foundry-toolchain@v1 - with: - version: stable - cache: true - - - name: Start Anvil - uses: iExecBlockchainComputing/anvil-github-action@main - with: - anvil-port: "8545" - block-time: "1" - hardfork: "berlin" - chain-id: "134" - gas-limit: "6700000" - gas-price: "0" - - - name: Start MongoDB - uses: supercharge/mongodb-github-action@1.12.0 - with: - mongodb-version: '6.0' - - - name: Start Redis - uses: supercharge/redis-github-action@1.7.0 - with: - redis-version: '7' + env: + IPFS: ipfs:5001 + POSTGRES_HOST: postgres + POSTGRES_USER: graphnode + POSTGRES_DB: graphnode-db + POSTGRES_PASSWORD: password + ETHEREUM: bellecour-fork:http://localhost:8545 + options: >- + --health-cmd "bash -c 'nc -z localhost 8020 && nc -z localhost 8000'" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + + bellecour-fork: + image: ghcr.io/foundry-rs/foundry:v1.0.0 + ports: + - 8545:8545 + options: >- + --entrypoint anvil + --mount type=bind,source=${{ github.workspace }}/local-stack-env,target=/local-stack-env + env: + FORK_URL: ${{ steps.prepare.outputs.bellecour_url }} + FORK_BLOCK: ${{ steps.prepare.outputs.bellecour_block }} + command: > + --host 0.0.0.0 + --port 8545 + --block-time 1 + --hardfork berlin + --fork-url $(cat /local-stack-env/BELLECOUR_FORK_URL) + --fork-block-number $(cat /local-stack-env/BELLECOUR_FORK_BLOCK) + --chain-id 134 + --gas-limit 6700000 + --gas-price 0 + + market-mongo: + image: mongo:6.0.3 + ports: + - 27017:27017 + options: >- + --health-cmd "bash -c 'nc -z localhost 27017'" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + + market-redis: + image: redis:7.0.7-alpine + ports: + - 6379:6379 + options: >- + --health-cmd "bash -c 'nc -z localhost 6379'" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + + result-proxy-mongo: + image: mongo:4.2 + ports: + - 13202:13202 + options: >- + --command "mongod --bind_ip_all --port 13202" + --health-cmd "bash -c 'nc -z localhost 13202'" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + + sms: + image: iexechub/iexec-sms:8.7.0 + ports: + - 13300:13300 + env: + JAVA_TOOL_OPTIONS: '-Xmx256M' + IEXEC_SMS_BLOCKCHAIN_NODE_ADDRESS: http://bellecour-fork:8545 + IEXEC_HUB_ADDRESS: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f' + IEXEC_SMS_TEE_RUNTIME_FRAMEWORK: scone + IEXEC_SMS_IMAGE_LAS_IMAGE: 'las-image' + IEXEC_TEE_WORKER_PRE_COMPUTE_IMAGE: 'pre-compute-image' + IEXEC_TEE_WORKER_PRE_COMPUTE_FINGERPRINT: 'pre-compute-fingerprint' + IEXEC_TEE_WORKER_POST_COMPUTE_IMAGE: 'post-compute-image' + IEXEC_TEE_WORKER_POST_COMPUTE_FINGERPRINT: 'post-compute-fingerprint' + options: >- + --health-cmd "bash -c 'nc -z localhost 13300'" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + + sms-gramine: + image: iexechub/iexec-sms:8.7.0 + ports: + - 13301:13300 + env: + JAVA_TOOL_OPTIONS: '-Xmx256M' + IEXEC_SMS_BLOCKCHAIN_NODE_ADDRESS: http://bellecour-fork:8545 + IEXEC_HUB_ADDRESS: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f' + IEXEC_SMS_TEE_RUNTIME_FRAMEWORK: scone + IEXEC_SMS_IMAGE_LAS_IMAGE: 'las-image' + IEXEC_TEE_WORKER_PRE_COMPUTE_IMAGE: 'pre-compute-image' + IEXEC_TEE_WORKER_PRE_COMPUTE_FINGERPRINT: 'pre-compute-fingerprint' + IEXEC_TEE_WORKER_POST_COMPUTE_IMAGE: 'post-compute-image' + IEXEC_TEE_WORKER_POST_COMPUTE_FINGERPRINT: 'post-compute-fingerprint' + options: >- + --health-cmd "bash -c 'nc -z localhost 13300'" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + + result-proxy: + image: iexechub/iexec-result-proxy:7.1.0 + ports: + - 13200:13200 + env: + IEXEC_PRIVATE_CHAIN_ADDRESS: http://bellecour-fork:8545 + IEXEC_PUBLIC_CHAIN_ADDRESS: http://bellecour-fork:8545 + IEXEC_HUB_ADDRESS: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f' + MONGO_HOST: result-proxy-mongo + MONGO_PORT: 13202 + IEXEC_IPFS_HOST: ipfs:5001 + options: >- + --health-cmd "bash -c 'nc -z localhost 13200'" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + + market-watcher: + image: iexechub/iexec-market-watcher:6.4 + ports: + - 4000:4000 + env: + CHAIN: BELLECOUR + ETH_WS_HOST: ws://bellecour-fork:8545 + ETH_RPC_HOST: http://bellecour-fork:8545 + MONGO_HOST: market-mongo + REDIS_HOST: market-redis + options: >- + --entrypoint bash + --mount type=bind,source=${{ github.workspace }}/local-stack-env,target=/local-stack-env + command: -c "export START_BLOCK=$(cat /local-stack-env/BELLECOUR_FORK_BLOCK) && cd /app && npm start" + + market-api: + image: iexechub/iexec-market-api:6.4 + ports: + - 3000:3000 + env: + CHAINS: BELLECOUR_FORK + BELLECOUR_FORK_ETH_RPC_HOST: http://bellecour-fork:8545 + BELLECOUR_FORK_CHAIN_ID: 134 + BELLECOUR_FORK_IS_NATIVE: 'true' + BELLECOUR_FORK_IEXEC_ADDRESS: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f' + MONGO_HOST: market-mongo + REDIS_HOST: market-redis + RATE_LIMIT_MAX: 10000 + RATE_LIMIT_PERIOD: 60000 + MAX_OPEN_ORDERS_PER_WALLET: 1000 + options: >- + --health-cmd "bash -c 'nc -z localhost 3000'" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + + voucher-subgraph-deployer: + image: iexechub/voucher-subgraph-deployer:1.0.0 + ports: [] + env: + RPC_URL: http://bellecour-fork:8545 + GRAPHNODE_URL: http://graphnode:8020 + IPFS_URL: http://ipfs:5001 + VOUCHER_HUB_ADDRESS: '0x3137B6DF4f36D338b82260eDBB2E7bab034AFEda' + options: >- + --entrypoint bash + --mount type=bind,source=${{ github.workspace }}/local-stack-env,target=/local-stack-env + command: -c "export VOUCHER_HUB_START_BLOCK=$(cat /local-stack-env/BELLECOUR_FORK_BLOCK) && cd /iexec-voucher-subgraph && npm run all" + + custom-token-chain: + image: iexechub/poco-chaintest:5.3.2-token-openethereum + ports: + - 8546:8545 + options: >- + --health-cmd "bash -c 'nc -z localhost 8545'" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + steps: + - uses: actions/checkout@v4 + + - name: Use Node.js 18 + uses: actions/setup-node@v4 + with: + node-version: '18' + + - name: Prepare local stack env + id: prepare + run: | + node test/scripts/prepare-test-env.js + + - name: Install dependencies + run: npm ci + + - name: Build + run: npm run build + + - name: Check format + run: npm run check-format + + - name: Lint + run: npm run lint + + - name: Install global & Test + run: | + sudo apt-get update + sudo apt-get install -y xxd + npm install -g . + npm test + + - name: SonarScanner + uses: SonarSource/sonarqube-scan-action@v5.1.0 + env: + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} + SONAR_HOST_URL: ${{ vars.SONAR_HOST_URL }} + # Check for node 20 tests \ No newline at end of file From 4810e3873a3b70dbf97fb4f53b570f07cae125ab Mon Sep 17 00:00:00 2001 From: Ugo Mignon Date: Thu, 24 Apr 2025 11:08:06 +0200 Subject: [PATCH 04/52] refactor: adjust command options for service containers in CI configuration --- .github/workflows/main.yml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 870cc607..4a25586c 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -57,13 +57,12 @@ jobs: image: ghcr.io/foundry-rs/foundry:v1.0.0 ports: - 8545:8545 - options: >- - --entrypoint anvil - --mount type=bind,source=${{ github.workspace }}/local-stack-env,target=/local-stack-env env: FORK_URL: ${{ steps.prepare.outputs.bellecour_url }} FORK_BLOCK: ${{ steps.prepare.outputs.bellecour_block }} - command: > + options: >- + --entrypoint anvil + --mount type=bind,source=${{ github.workspace }}/local-stack-env,target=/local-stack-env --host 0.0.0.0 --port 8545 --block-time 1 @@ -175,7 +174,7 @@ jobs: options: >- --entrypoint bash --mount type=bind,source=${{ github.workspace }}/local-stack-env,target=/local-stack-env - command: -c "export START_BLOCK=$(cat /local-stack-env/BELLECOUR_FORK_BLOCK) && cd /app && npm start" + -c "export START_BLOCK=$(cat /local-stack-env/BELLECOUR_FORK_BLOCK) && cd /app && npm start" market-api: image: iexechub/iexec-market-api:6.4 @@ -209,7 +208,7 @@ jobs: options: >- --entrypoint bash --mount type=bind,source=${{ github.workspace }}/local-stack-env,target=/local-stack-env - command: -c "export VOUCHER_HUB_START_BLOCK=$(cat /local-stack-env/BELLECOUR_FORK_BLOCK) && cd /iexec-voucher-subgraph && npm run all" + -c "export VOUCHER_HUB_START_BLOCK=$(cat /local-stack-env/BELLECOUR_FORK_BLOCK) && cd /iexec-voucher-subgraph && npm run all" custom-token-chain: image: iexechub/poco-chaintest:5.3.2-token-openethereum From 3a6eba53a490e66c2c28b4479598a2dc14f3b7d0 Mon Sep 17 00:00:00 2001 From: Ugo Mignon Date: Fri, 25 Apr 2025 11:56:03 +0200 Subject: [PATCH 05/52] refactor: simplify CI --- .github/workflows/main.yml | 224 ++----------------------------------- 1 file changed, 10 insertions(+), 214 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4a25586c..68950735 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -9,216 +9,6 @@ jobs: ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }} INFURA_PROJECT_ID: ${{ secrets.INFURA_PROJECT_ID }} ETHERSCAN_API_KEY: ${{ secrets.ETHERSCAN_API_KEY }} - services: - postgres: - image: postgres:12 - ports: - - 5432:5432 - env: - POSTGRES_USER: graphnode - POSTGRES_PASSWORD: password - POSTGRES_DB: graphnode-db - options: >- - --health-cmd "pg_isready -U graphnode" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - - ipfs: - image: ipfs/go-ipfs:v0.9.1 - ports: - - 5001:5001 - - 8080:8080 - options: >- - --health-cmd "bash -c 'nc -z localhost 5001 && nc -z localhost 8080'" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - - graphnode: - image: graphprotocol/graph-node:v0.27.0 - ports: - - 8000:8000 - - 8020:8020 - env: - IPFS: ipfs:5001 - POSTGRES_HOST: postgres - POSTGRES_USER: graphnode - POSTGRES_DB: graphnode-db - POSTGRES_PASSWORD: password - ETHEREUM: bellecour-fork:http://localhost:8545 - options: >- - --health-cmd "bash -c 'nc -z localhost 8020 && nc -z localhost 8000'" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - - bellecour-fork: - image: ghcr.io/foundry-rs/foundry:v1.0.0 - ports: - - 8545:8545 - env: - FORK_URL: ${{ steps.prepare.outputs.bellecour_url }} - FORK_BLOCK: ${{ steps.prepare.outputs.bellecour_block }} - options: >- - --entrypoint anvil - --mount type=bind,source=${{ github.workspace }}/local-stack-env,target=/local-stack-env - --host 0.0.0.0 - --port 8545 - --block-time 1 - --hardfork berlin - --fork-url $(cat /local-stack-env/BELLECOUR_FORK_URL) - --fork-block-number $(cat /local-stack-env/BELLECOUR_FORK_BLOCK) - --chain-id 134 - --gas-limit 6700000 - --gas-price 0 - - market-mongo: - image: mongo:6.0.3 - ports: - - 27017:27017 - options: >- - --health-cmd "bash -c 'nc -z localhost 27017'" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - - market-redis: - image: redis:7.0.7-alpine - ports: - - 6379:6379 - options: >- - --health-cmd "bash -c 'nc -z localhost 6379'" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - - result-proxy-mongo: - image: mongo:4.2 - ports: - - 13202:13202 - options: >- - --command "mongod --bind_ip_all --port 13202" - --health-cmd "bash -c 'nc -z localhost 13202'" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - - sms: - image: iexechub/iexec-sms:8.7.0 - ports: - - 13300:13300 - env: - JAVA_TOOL_OPTIONS: '-Xmx256M' - IEXEC_SMS_BLOCKCHAIN_NODE_ADDRESS: http://bellecour-fork:8545 - IEXEC_HUB_ADDRESS: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f' - IEXEC_SMS_TEE_RUNTIME_FRAMEWORK: scone - IEXEC_SMS_IMAGE_LAS_IMAGE: 'las-image' - IEXEC_TEE_WORKER_PRE_COMPUTE_IMAGE: 'pre-compute-image' - IEXEC_TEE_WORKER_PRE_COMPUTE_FINGERPRINT: 'pre-compute-fingerprint' - IEXEC_TEE_WORKER_POST_COMPUTE_IMAGE: 'post-compute-image' - IEXEC_TEE_WORKER_POST_COMPUTE_FINGERPRINT: 'post-compute-fingerprint' - options: >- - --health-cmd "bash -c 'nc -z localhost 13300'" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - - sms-gramine: - image: iexechub/iexec-sms:8.7.0 - ports: - - 13301:13300 - env: - JAVA_TOOL_OPTIONS: '-Xmx256M' - IEXEC_SMS_BLOCKCHAIN_NODE_ADDRESS: http://bellecour-fork:8545 - IEXEC_HUB_ADDRESS: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f' - IEXEC_SMS_TEE_RUNTIME_FRAMEWORK: scone - IEXEC_SMS_IMAGE_LAS_IMAGE: 'las-image' - IEXEC_TEE_WORKER_PRE_COMPUTE_IMAGE: 'pre-compute-image' - IEXEC_TEE_WORKER_PRE_COMPUTE_FINGERPRINT: 'pre-compute-fingerprint' - IEXEC_TEE_WORKER_POST_COMPUTE_IMAGE: 'post-compute-image' - IEXEC_TEE_WORKER_POST_COMPUTE_FINGERPRINT: 'post-compute-fingerprint' - options: >- - --health-cmd "bash -c 'nc -z localhost 13300'" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - - result-proxy: - image: iexechub/iexec-result-proxy:7.1.0 - ports: - - 13200:13200 - env: - IEXEC_PRIVATE_CHAIN_ADDRESS: http://bellecour-fork:8545 - IEXEC_PUBLIC_CHAIN_ADDRESS: http://bellecour-fork:8545 - IEXEC_HUB_ADDRESS: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f' - MONGO_HOST: result-proxy-mongo - MONGO_PORT: 13202 - IEXEC_IPFS_HOST: ipfs:5001 - options: >- - --health-cmd "bash -c 'nc -z localhost 13200'" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - - market-watcher: - image: iexechub/iexec-market-watcher:6.4 - ports: - - 4000:4000 - env: - CHAIN: BELLECOUR - ETH_WS_HOST: ws://bellecour-fork:8545 - ETH_RPC_HOST: http://bellecour-fork:8545 - MONGO_HOST: market-mongo - REDIS_HOST: market-redis - options: >- - --entrypoint bash - --mount type=bind,source=${{ github.workspace }}/local-stack-env,target=/local-stack-env - -c "export START_BLOCK=$(cat /local-stack-env/BELLECOUR_FORK_BLOCK) && cd /app && npm start" - - market-api: - image: iexechub/iexec-market-api:6.4 - ports: - - 3000:3000 - env: - CHAINS: BELLECOUR_FORK - BELLECOUR_FORK_ETH_RPC_HOST: http://bellecour-fork:8545 - BELLECOUR_FORK_CHAIN_ID: 134 - BELLECOUR_FORK_IS_NATIVE: 'true' - BELLECOUR_FORK_IEXEC_ADDRESS: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f' - MONGO_HOST: market-mongo - REDIS_HOST: market-redis - RATE_LIMIT_MAX: 10000 - RATE_LIMIT_PERIOD: 60000 - MAX_OPEN_ORDERS_PER_WALLET: 1000 - options: >- - --health-cmd "bash -c 'nc -z localhost 3000'" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - - voucher-subgraph-deployer: - image: iexechub/voucher-subgraph-deployer:1.0.0 - ports: [] - env: - RPC_URL: http://bellecour-fork:8545 - GRAPHNODE_URL: http://graphnode:8020 - IPFS_URL: http://ipfs:5001 - VOUCHER_HUB_ADDRESS: '0x3137B6DF4f36D338b82260eDBB2E7bab034AFEda' - options: >- - --entrypoint bash - --mount type=bind,source=${{ github.workspace }}/local-stack-env,target=/local-stack-env - -c "export VOUCHER_HUB_START_BLOCK=$(cat /local-stack-env/BELLECOUR_FORK_BLOCK) && cd /iexec-voucher-subgraph && npm run all" - - custom-token-chain: - image: iexechub/poco-chaintest:5.3.2-token-openethereum - ports: - - 8546:8545 - options: >- - --health-cmd "bash -c 'nc -z localhost 8545'" - --health-interval 10s - --health-timeout 5s - --health-retries 5 steps: - uses: actions/checkout@v4 @@ -227,13 +17,21 @@ jobs: with: node-version: '18' + - name: Install dependencies + run: npm ci + - name: Prepare local stack env id: prepare run: | node test/scripts/prepare-test-env.js - - name: Install dependencies - run: npm ci + - name: Start local stack + uses: hoverkraft-tech/compose-action@2.2.0 + with: + compose-file: "./test/docker-compose.yml" + env: + FORK_URL: ${{ steps.prepare.outputs.bellecour_url }} + FORK_BLOCK: ${{ steps.prepare.outputs.bellecour_block }} - name: Build run: npm run build @@ -256,5 +54,3 @@ jobs: env: SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} SONAR_HOST_URL: ${{ vars.SONAR_HOST_URL }} - - # Check for node 20 tests \ No newline at end of file From 1b53f68451ce1f9c99ecee90f044afca9e28d7df Mon Sep 17 00:00:00 2001 From: Ugo Mignon Date: Fri, 25 Apr 2025 12:32:21 +0200 Subject: [PATCH 06/52] refactor: simplify local stack setup in CI configuration --- .github/workflows/main.yml | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 68950735..943ee367 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -22,16 +22,7 @@ jobs: - name: Prepare local stack env id: prepare - run: | - node test/scripts/prepare-test-env.js - - - name: Start local stack - uses: hoverkraft-tech/compose-action@2.2.0 - with: - compose-file: "./test/docker-compose.yml" - env: - FORK_URL: ${{ steps.prepare.outputs.bellecour_url }} - FORK_BLOCK: ${{ steps.prepare.outputs.bellecour_block }} + run: npm run start-test-stack - name: Build run: npm run build From 23d82230743d669b6d5a3ce3b5a2d2e0a6ffe471 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Thu, 19 Jun 2025 17:55:35 +0200 Subject: [PATCH 07/52] fix: add test secrets --- .github/workflows/main.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 943ee367..fb7d9b78 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -39,6 +39,10 @@ jobs: sudo apt-get install -y xxd npm install -g . npm test + env: + INFURA_PROJECT_ID: ${{ secrets.INFURA_PROJECT_ID }} + ETHERSCAN_API_KEY: ${{ secrets.ETHERSCAN_API_KEY }} + ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }} - name: SonarScanner uses: SonarSource/sonarqube-scan-action@v5.1.0 From e234dc1ee0289ac19120ddc3e3d324be346384b3 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Mon, 23 Jun 2025 11:30:01 +0200 Subject: [PATCH 08/52] chore: clean drone specific tests behaviors --- test/cli/cli-common.test.js | 3 +- test/cli/cli-test-utils.js | 4 +- .../prepare-bellecour-fork-for-tests.js | 4 +- test/scripts/prepare-test-env.js | 26 +++-------- test/test-utils.js | 43 +++++++------------ 5 files changed, 25 insertions(+), 55 deletions(-) diff --git a/test/cli/cli-common.test.js b/test/cli/cli-common.test.js index 35cc40d0..56cde5c8 100644 --- a/test/cli/cli-common.test.js +++ b/test/cli/cli-common.test.js @@ -10,8 +10,7 @@ import { } from './cli-test-utils.js'; import '../jest-setup.js'; -const { DRONE } = process.env; -const iexecPath = DRONE ? 'iexec' : 'node ../../../src/cli/cmd/iexec.js'; +const iexecPath = 'iexec'; beforeAll(async () => { await globalSetup('cli-common'); diff --git a/test/cli/cli-test-utils.js b/test/cli/cli-test-utils.js index 7fd1c04a..81ae1bd7 100644 --- a/test/cli/cli-test-utils.js +++ b/test/cli/cli-test-utils.js @@ -7,9 +7,9 @@ import { execAsync, getId } from '../test-utils.js'; const IEXEC_JSON = 'iexec.json'; const CHAIN_JSON = 'chain.json'; -const { DRONE, INFURA_PROJECT_ID } = process.env; +const { INFURA_PROJECT_ID } = process.env; -export const iexecPath = DRONE ? 'iexec' : 'node ../../../src/cli/cmd/iexec.js'; +export const iexecPath = 'iexec'; export const globalSetup = async (testid = 'shared') => { const testDir = `test/tests-working-dir/${testid}`; diff --git a/test/scripts/prepare-bellecour-fork-for-tests.js b/test/scripts/prepare-bellecour-fork-for-tests.js index 4e41a370..c66aa9b4 100755 --- a/test/scripts/prepare-bellecour-fork-for-tests.js +++ b/test/scripts/prepare-bellecour-fork-for-tests.js @@ -7,8 +7,6 @@ import { toBeHex, } from 'ethers'; -const { DRONE } = process.env; - const IEXEC_HUB_ADDRESS = '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f'; const VOUCHER_HUB_ADDRESS = '0x3137B6DF4f36D338b82260eDBB2E7bab034AFEda'; const TARGET_POCO_ADMIN_WALLET = '0x7bd4783FDCAD405A28052a0d1f11236A741da593'; @@ -22,7 +20,7 @@ const PROD_WORKERPOOL_OWNER_WALLET = const DEBUG_WORKERPOOL = '0xdb214a4a444d176e22030be1ed89da1b029320f2'; // 'debug-v8-bellecour.main.pools.iexec.eth'; const PROD_WORKERPOOL = '0x0e7bc972c99187c191a17f3cae4a2711a4188c3f'; // 'prod-v8-bellecour.main.pools.iexec.eth'; -const rpcURL = DRONE ? 'http://bellecour-fork:8545' : 'http://localhost:8545'; +const rpcURL = 'http://localhost:8545'; const provider = new JsonRpcProvider(rpcURL, undefined, { pollingInterval: 100, // fast polling for tests diff --git a/test/scripts/prepare-test-env.js b/test/scripts/prepare-test-env.js index eccdd6ad..c9ee0086 100644 --- a/test/scripts/prepare-test-env.js +++ b/test/scripts/prepare-test-env.js @@ -1,5 +1,4 @@ -import { writeFileSync, mkdirSync } from 'fs'; -import { join } from 'path'; +import { writeFileSync } from 'fs'; const forkUrl = process.env.BELLECOUR_FORK_URL || 'https://bellecour.iex.ec'; @@ -15,22 +14,10 @@ fetch(forkUrl, { .then((res) => res.json()) .then((jsonRes) => { const forkBlockNumber = parseInt(jsonRes.result.substring(2), 16); - if (process.env.DRONE) { - const LOCAL_STACK_ENV_DIR = 'local-stack-env'; - console.log( - `Creating ${LOCAL_STACK_ENV_DIR} directory for drone test-stack`, - ); - mkdirSync(LOCAL_STACK_ENV_DIR, { recursive: true }); - writeFileSync(join(LOCAL_STACK_ENV_DIR, 'BELLECOUR_FORK_URL'), forkUrl); - writeFileSync( - join(LOCAL_STACK_ENV_DIR, 'BELLECOUR_FORK_BLOCK'), - `${forkBlockNumber}`, - ); - } else { - console.log('Creating .env file for docker-compose test-stack'); - writeFileSync( - '.env', - `############ THIS FILE IS GENERATED ############ + console.log('Creating .env file for docker-compose test-stack'); + writeFileSync( + '.env', + `############ THIS FILE IS GENERATED ############ # run "node prepare-test-env.js" to regenerate # ################################################ @@ -38,8 +25,7 @@ fetch(forkUrl, { BELLECOUR_FORK_URL=${forkUrl} # block number to fork from BELLECOUR_FORK_BLOCK=${forkBlockNumber}`, - ); - } + ); }) .catch((e) => { throw Error(`Failed to get current block number from ${forkUrl}: ${e}`); diff --git a/test/test-utils.js b/test/test-utils.js index b6b437e8..bfadc76c 100644 --- a/test/test-utils.js +++ b/test/test-utils.js @@ -38,8 +38,6 @@ export const execAsync = (cmd) => }); }); -const { DRONE } = process.env; - export const { INFURA_PROJECT_ID, ETHERSCAN_API_KEY, ALCHEMY_API_KEY } = process.env; @@ -55,16 +53,14 @@ export const DEFAULT_PROVIDER_OPTIONS = { quorum: 1, }; -export const SERVICE_HTTP_500_URL = DRONE - ? 'http://service-internal-error:80' - : 'http://localhost:5500'; +export const SERVICE_HTTP_500_URL = 'http://localhost:5500'; export const SERVICE_UNREACHABLE_URL = 'http://unreachable:80'; export const TEST_CHAINS = { // autoseal chain with iExec token 'custom-token-chain': { - rpcURL: DRONE ? 'http://custom-token-chain:8545' : 'http://localhost:18545', + rpcURL: 'http://localhost:18545', chainId: '65535', hubAddress: '0xC129e7917b7c7DeDfAa5Fff1FB18d5D7050fE8ca', ensRegistryAddress: '0xaf87b82B01E484f8859c980dE69eC8d09D30F22a', @@ -76,11 +72,9 @@ export const TEST_CHAINS = { faucetWallet: new Wallet( '0x564a9db84969c8159f7aa3d5393c5ecd014fce6a375842a45b12af6677b12407', ), - provider: new JsonRpcProvider( - DRONE ? 'http://custom-token-chain:8545' : 'http://localhost:18545', - undefined, - { pollingInterval: 100 }, - ), + provider: new JsonRpcProvider('http://localhost:18545', undefined, { + pollingInterval: 100, + }), defaults: { isNative: false, useGas: true, @@ -88,16 +82,12 @@ export const TEST_CHAINS = { isAnvil: false, }, 'bellecour-fork': { - rpcURL: DRONE ? 'http://bellecour-fork:8545' : 'http://localhost:8545', + rpcURL: 'http://localhost:8545', chainId: '134', - sconeSmsURL: DRONE ? 'http://sms:13300' : 'http://localhost:13300', - gramineSmsURL: DRONE - ? 'http://sms-gramine:13300' - : 'http://localhost:13309', - iexecGatewayURL: DRONE ? 'http://market-api:3000' : 'http://localhost:3000', - resultProxyURL: DRONE - ? 'http://result-proxy:13200' - : 'http://localhost:13200', + sconeSmsURL: 'http://localhost:13300', + gramineSmsURL: 'http://localhost:13309', + iexecGatewayURL: 'http://localhost:3000', + resultProxyURL: 'http://localhost:13200', pocoAdminWallet: new Wallet( '0x564a9db84969c8159f7aa3d5393c5ecd014fce6a375842a45b12af6677b12407', ), @@ -107,9 +97,8 @@ export const TEST_CHAINS = { voucherManagerWallet: new Wallet( '0x2c906d4022cace2b3ee6c8b596564c26c4dcadddf1e949b769bcb0ad75c40c33', ), - voucherSubgraphURL: DRONE - ? 'http://graphnode:8000/subgraphs/name/bellecour/iexec-voucher' - : 'http://localhost:8000/subgraphs/name/bellecour/iexec-voucher', + voucherSubgraphURL: + 'http://localhost:8000/subgraphs/name/bellecour/iexec-voucher', debugWorkerpool: 'debug-v8-bellecour.main.pools.iexec.eth', debugWorkerpoolOwnerWallet: new Wallet( '0x800e01919eadf36f110f733decb1cc0f82e7941a748e89d7a3f76157f6654bb3', @@ -118,11 +107,9 @@ export const TEST_CHAINS = { prodWorkerpoolOwnerWallet: new Wallet( '0x6a12f56d7686e85ab0f46eb3c19cb0c75bfabf8fb04e595654fc93ad652fa7bc', ), - provider: new JsonRpcProvider( - DRONE ? 'http://bellecour-fork:8545' : 'http://localhost:8545', - undefined, - { pollingInterval: 100 }, - ), + provider: new JsonRpcProvider('http://localhost:8545', undefined, { + pollingInterval: 100, + }), defaults: { hubAddress: '0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f', voucherHubAddress: '0x3137B6DF4f36D338b82260eDBB2E7bab034AFEda', From 76285abc842b3282e28c25fa34b50ce6091e99c9 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Mon, 23 Jun 2025 13:59:00 +0200 Subject: [PATCH 09/52] chore: move SONAR_HOST_URL to secrets --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index fb7d9b78..0d3cc0ce 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -48,4 +48,4 @@ jobs: uses: SonarSource/sonarqube-scan-action@v5.1.0 env: SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} - SONAR_HOST_URL: ${{ vars.SONAR_HOST_URL }} + SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} From 1fa858657371d0bfbd53bf8a551897ee68c9d343 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Mon, 23 Jun 2025 14:18:26 +0200 Subject: [PATCH 10/52] feat: check conventional commit in PR title --- ...yaml => conventional-commit-check-commits.yaml} | 4 +--- .../conventional-commit-check-pr-title.yaml | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 3 deletions(-) rename .github/workflows/{conventional-commits-check.yaml => conventional-commit-check-commits.yaml} (77%) create mode 100644 .github/workflows/conventional-commit-check-pr-title.yaml diff --git a/.github/workflows/conventional-commits-check.yaml b/.github/workflows/conventional-commit-check-commits.yaml similarity index 77% rename from .github/workflows/conventional-commits-check.yaml rename to .github/workflows/conventional-commit-check-commits.yaml index 555d5bcc..ffdeea7e 100644 --- a/.github/workflows/conventional-commits-check.yaml +++ b/.github/workflows/conventional-commit-check-commits.yaml @@ -1,13 +1,11 @@ -name: Conventional Commits Check +name: Conventional Commit Check Commits on: [pull_request] jobs: check-conventional-commits: - name: Conventional Commits runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - name: Check Commit Conventions uses: webiny/action-conventional-commits@v1.3.0 diff --git a/.github/workflows/conventional-commit-check-pr-title.yaml b/.github/workflows/conventional-commit-check-pr-title.yaml new file mode 100644 index 00000000..2b8918ae --- /dev/null +++ b/.github/workflows/conventional-commit-check-pr-title.yaml @@ -0,0 +1,14 @@ +name: Conventional Commit Check PR Title + +on: + pull_request_target: + types: + - opened + - edited + - reopened + +jobs: + lint-pr-title: + permissions: + pull-requests: read + uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/conventional-commits.yml@conventional-commits-v1.1.0 From 0e3197e57f1c0b1497ac95fb9fdace0b50b0a702 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Mon, 23 Jun 2025 14:28:43 +0200 Subject: [PATCH 11/52] refactor: simplify test pipeline --- .github/workflows/{main.yml => test.yml} | 29 +++++++++++------------- 1 file changed, 13 insertions(+), 16 deletions(-) rename .github/workflows/{main.yml => test.yml} (72%) diff --git a/.github/workflows/main.yml b/.github/workflows/test.yml similarity index 72% rename from .github/workflows/main.yml rename to .github/workflows/test.yml index 0d3cc0ce..6e4eded1 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/test.yml @@ -5,10 +5,6 @@ on: [pull_request] jobs: test: runs-on: ubuntu-latest - env: - ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }} - INFURA_PROJECT_ID: ${{ secrets.INFURA_PROJECT_ID }} - ETHERSCAN_API_KEY: ${{ secrets.ETHERSCAN_API_KEY }} steps: - uses: actions/checkout@v4 @@ -20,12 +16,11 @@ jobs: - name: Install dependencies run: npm ci - - name: Prepare local stack env - id: prepare - run: npm run start-test-stack - - - name: Build - run: npm run build + - name: Prepare test environment + run: | + sudo apt-get update + sudo apt-get install -y xxd + npm run start-test-stack - name: Check format run: npm run check-format @@ -33,12 +28,14 @@ jobs: - name: Lint run: npm run lint - - name: Install global & Test - run: | - sudo apt-get update - sudo apt-get install -y xxd - npm install -g . - npm test + - name: Build + run: npm run build + + - name: Install global + run: npm install -g . + + - name: Test + run: npm test env: INFURA_PROJECT_ID: ${{ secrets.INFURA_PROJECT_ID }} ETHERSCAN_API_KEY: ${{ secrets.ETHERSCAN_API_KEY }} From c4d9640a4164ccd7aa1d3b9dc939f40a90822deb Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 14:52:06 +0200 Subject: [PATCH 12/52] ci: cache deps --- .github/workflows/test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 6e4eded1..6ac9476c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -12,6 +12,7 @@ jobs: uses: actions/setup-node@v4 with: node-version: '18' + cache: 'npm' - name: Install dependencies run: npm ci From 8d1d71f6331c3cd191096c1af2fcb0c04699a4d6 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 15:01:14 +0200 Subject: [PATCH 13/52] ci: split pipeline jobs --- .github/workflows/test.yml | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 6ac9476c..4f0c2c80 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -3,7 +3,7 @@ name: Test SDK on: [pull_request] jobs: - test: + check-code: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -17,21 +17,35 @@ jobs: - name: Install dependencies run: npm ci - - name: Prepare test environment - run: | - sudo apt-get update - sudo apt-get install -y xxd - npm run start-test-stack - - name: Check format run: npm run check-format - name: Lint run: npm run lint + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Use Node.js 18 + uses: actions/setup-node@v4 + with: + node-version: '18' + cache: 'npm' + + - name: Install dependencies + run: npm ci + - name: Build run: npm run build + - name: Prepare test environment + run: | + sudo apt-get update + sudo apt-get install -y xxd + npm run start-test-stack + - name: Install global run: npm install -g . From 6ad75ca39ded57e447a99be0e91a7d65dfaa6b0a Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 15:03:24 +0200 Subject: [PATCH 14/52] ci: add concurrency check --- .github/workflows/test.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 4f0c2c80..16fca66c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -2,6 +2,10 @@ name: Test SDK on: [pull_request] +concurrency: + group: ${{ github.ref }}-test + cancel-in-progress: true + jobs: check-code: runs-on: ubuntu-latest From 6fc82e628dd3ef7368c5eb53f580c417ec4c4971 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 15:04:51 +0200 Subject: [PATCH 15/52] ci: add build test --- .github/workflows/test.yml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 16fca66c..ca1d648c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -65,3 +65,23 @@ jobs: env: SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} + + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Use Node.js 18 + uses: actions/setup-node@v4 + with: + node-version: '18' + cache: 'npm' + + - name: Install dependencies + run: npm ci + + - name: Build + run: npm run build + + - name: publish dry-run + run: npm publish --dry-run From cb7714cd5838d33fa8b02b092b52a226022dd9e7 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 15:10:01 +0200 Subject: [PATCH 16/52] ci: stop test stack after testing --- .github/workflows/test.yml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ca1d648c..c4ce402e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -44,15 +44,15 @@ jobs: - name: Build run: npm run build - - name: Prepare test environment + - name: Install global + run: npm install -g . + + - name: Start e2e test stack run: | sudo apt-get update sudo apt-get install -y xxd npm run start-test-stack - - name: Install global - run: npm install -g . - - name: Test run: npm test env: @@ -66,6 +66,10 @@ jobs: SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} + - name: Stop e2e test stack + if: always() + run: npm run stop-test-stack + build: runs-on: ubuntu-latest steps: From a90d824aff804684818e147035f98244d39b4f01 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 15:11:38 +0200 Subject: [PATCH 17/52] refactor: cleanup useless xxd install as it is already included in ubuntu-latest runner --- .github/workflows/test.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c4ce402e..78a8d4bd 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -48,10 +48,7 @@ jobs: run: npm install -g . - name: Start e2e test stack - run: | - sudo apt-get update - sudo apt-get install -y xxd - npm run start-test-stack + run: npm run start-test-stack - name: Test run: npm test From 3f8dbe47a3e41b35da27735462da90401b19a174 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 15:58:08 +0200 Subject: [PATCH 18/52] ci: setup reusable test --- .github/workflows/{test.yml => pr-test.yml} | 45 +++++-------- .github/workflows/reusable-test.yml | 70 +++++++++++++++++++++ 2 files changed, 86 insertions(+), 29 deletions(-) rename .github/workflows/{test.yml => pr-test.yml} (62%) create mode 100644 .github/workflows/reusable-test.yml diff --git a/.github/workflows/test.yml b/.github/workflows/pr-test.yml similarity index 62% rename from .github/workflows/test.yml rename to .github/workflows/pr-test.yml index 78a8d4bd..2b19d034 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/pr-test.yml @@ -1,4 +1,4 @@ -name: Test SDK +name: PR test on: [pull_request] @@ -27,35 +27,26 @@ jobs: - name: Lint run: npm run lint - test: + test-node-18: + uses: ./.github/workflows/reusable-test.yml + with: + node-version: '18' + upload-coverage: true + secrets: + infura-project-id: ${{ secrets.INFURA_PROJECT_ID }} + etherscan-api-key: ${{ secrets.ETHERSCAN_API_KEY }} + alchemy-api-key: ${{ secrets.ALCHEMY_API_KEY }} + + sonar: runs-on: ubuntu-latest + needs: test-node-18 steps: - uses: actions/checkout@v4 - - name: Use Node.js 18 - uses: actions/setup-node@v4 + - uses: actions/download-artifact@v4 with: - node-version: '18' - cache: 'npm' - - - name: Install dependencies - run: npm ci - - - name: Build - run: npm run build - - - name: Install global - run: npm install -g . - - - name: Start e2e test stack - run: npm run start-test-stack - - - name: Test - run: npm test - env: - INFURA_PROJECT_ID: ${{ secrets.INFURA_PROJECT_ID }} - ETHERSCAN_API_KEY: ${{ secrets.ETHERSCAN_API_KEY }} - ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }} + artifact-ids: ${{ needs.test.outputs.coverage-artifact-id }} + path: coverage - name: SonarScanner uses: SonarSource/sonarqube-scan-action@v5.1.0 @@ -63,10 +54,6 @@ jobs: SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} - - name: Stop e2e test stack - if: always() - run: npm run stop-test-stack - build: runs-on: ubuntu-latest steps: diff --git a/.github/workflows/reusable-test.yml b/.github/workflows/reusable-test.yml new file mode 100644 index 00000000..249b5131 --- /dev/null +++ b/.github/workflows/reusable-test.yml @@ -0,0 +1,70 @@ +name: Test SDK + +on: + workflow_call: + inputs: + node-version: + description: 'Node version to use as specified in actions/setup-node@v4' + default: '18' + type: string + upload-coverage: + description: 'Upload coverage data for later reuse' + type: boolean + default: false + secrets: + infura-project-id: + required: true + etherscan-api-key: + required: true + alchemy-api-key: + required: true + outputs: + coverage-artifact-id: + description: 'Coverage artifact id (if `upload-coverage: true`)' + value: ${{ jobs.test.outputs.coverage-artifact-id }} + +jobs: + test: + runs-on: ubuntu-latest + outputs: + coverage-artifact-id: ${{ steps.upload-coverage.outputs.artifact-id }} + steps: + - uses: actions/checkout@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: ${{ inputs.node-version }} + cache: 'npm' + + - name: Install dependencies + run: npm ci + + - name: Build + run: npm run build + + - name: Install global + run: npm install -g . + + - name: Start e2e test stack + run: npm run start-test-stack + + - name: Test + run: npm test + env: + INFURA_PROJECT_ID: ${{ secrets.infura-project-id }} + ETHERSCAN_API_KEY: ${{ secrets.etherscan-api-key }} + ALCHEMY_API_KEY: ${{ secrets.alchemy-api-key }} + + - name: Stop e2e test stack + if: always() + run: npm run stop-test-stack + + - name: Upload coverage + id: upload-coverage + if: ${{ inputs.upload-coverage }} + uses: actions/upload-artifact@v4 + with: + name: ${{ github.sha }}-${{github.run_id}}-coverage + path: coverage + overwrite: true From 78bee441cc9f0154ceaa03682d6f82643ef82700 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 16:29:22 +0200 Subject: [PATCH 19/52] fix: pass artifact-ids from test-node-18 --- .github/workflows/pr-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 2b19d034..9eb168fe 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -45,7 +45,7 @@ jobs: - uses: actions/download-artifact@v4 with: - artifact-ids: ${{ needs.test.outputs.coverage-artifact-id }} + artifact-ids: ${{ needs.test-node-18.outputs.coverage-artifact-id }} path: coverage - name: SonarScanner From 03d3973c1285707ba724bd11afb388bcb8a6f225 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 16:32:14 +0200 Subject: [PATCH 20/52] fix: update concurrency group --- .github/workflows/pr-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 9eb168fe..2b383727 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -3,7 +3,7 @@ name: PR test on: [pull_request] concurrency: - group: ${{ github.ref }}-test + group: ${{ github.ref }}-pr-test cancel-in-progress: true jobs: From 43fc61bea01a2e58c358480a48deebedec136af4 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 17:12:50 +0200 Subject: [PATCH 21/52] ci: add docker publish dry-run --- .github/workflows/pr-test.yml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 2b383727..30991a83 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -54,7 +54,7 @@ jobs: SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} - build: + npm-dry-run: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -71,5 +71,13 @@ jobs: - name: Build run: npm run build - - name: publish dry-run + - name: npm publish dry-run run: npm publish --dry-run + + docker-dry-run: + uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/docker-build.yml@docker-build-v2.2.0 + with: + push: false + image-name: 'iexechub/iexec-sdk' + dockerfile: 'Dockerfile' + context: '.' From 096e56a823e1c575e7eeef5d0d9b5c035bc12b66 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 17:17:12 +0200 Subject: [PATCH 22/52] fix: docker workflow needs a tag --- .github/workflows/pr-test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 30991a83..fcb09264 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -79,5 +79,6 @@ jobs: with: push: false image-name: 'iexechub/iexec-sdk' + image-tag: ${{ github.sha }} dockerfile: 'Dockerfile' context: '.' From 573a6c896d207c29212e659cb5daebc69a34cabe Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 17:38:40 +0200 Subject: [PATCH 23/52] fix: disable docker-build failing options --- .github/workflows/pr-test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index fcb09264..ba07f5ba 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -82,3 +82,5 @@ jobs: image-tag: ${{ github.sha }} dockerfile: 'Dockerfile' context: '.' + security-scan: false + hadolint: false \ No newline at end of file From 848cedac9e6bc489ac5ced7f021a7c5ab62f997c Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Tue, 1 Jul 2025 17:41:14 +0200 Subject: [PATCH 24/52] chore: format --- .github/workflows/pr-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index ba07f5ba..b733f302 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -83,4 +83,4 @@ jobs: dockerfile: 'Dockerfile' context: '.' security-scan: false - hadolint: false \ No newline at end of file + hadolint: false From 433b79bb07af817a77fc951a7493de5fc13628db Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 09:35:38 +0200 Subject: [PATCH 25/52] refactor: use publish-npm reusable workflow --- .github/workflows/pr-test.yml | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index b733f302..0bf1d0e2 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -55,24 +55,11 @@ jobs: SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} npm-dry-run: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - name: Use Node.js 18 - uses: actions/setup-node@v4 - with: - node-version: '18' - cache: 'npm' - - - name: Install dependencies - run: npm ci - - - name: Build - run: npm run build - - - name: npm publish dry-run - run: npm publish --dry-run + uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/publish-npm.yml@feat/npm-publish-dry-run + with: + install-command: npm ci + build-command: npm run build + dry-run: true docker-dry-run: uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/docker-build.yml@docker-build-v2.2.0 From 61e2e7c6220330b1c7334e8dd3c276e0e1e00fc4 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 09:48:35 +0200 Subject: [PATCH 26/52] fix: iexec bin path --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 39bf7638..04d61908 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "version": "8.16.0", "description": "iExec SDK", "bin": { - "iexec": "./dist/esm/cli/cmd/iexec.js" + "iexec": "dist/esm/cli/cmd/iexec.js" }, "main": "./dist/esm/lib/index.js", "types": "./dist/esm/lib/index.d.ts", From 0878e559167bb3ee8a85673544919a6dc7f5da2e Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 10:30:26 +0200 Subject: [PATCH 27/52] fix: use fixed docker-build workflow --- .github/workflows/pr-test.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 0bf1d0e2..1f17c0f0 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -55,6 +55,7 @@ jobs: SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} npm-dry-run: + # TODO use tagged version uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/publish-npm.yml@feat/npm-publish-dry-run with: install-command: npm ci @@ -62,12 +63,10 @@ jobs: dry-run: true docker-dry-run: - uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/docker-build.yml@docker-build-v2.2.0 + # TODO use tagged version + uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/docker-build.yml@docker-build-fixes with: - push: false image-name: 'iexechub/iexec-sdk' - image-tag: ${{ github.sha }} - dockerfile: 'Dockerfile' - context: '.' + push: false security-scan: false hadolint: false From d3801ef93a598d585985389c8461b28f5204477a Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 10:43:33 +0200 Subject: [PATCH 28/52] ci: enable hadolint --- .github/workflows/pr-test.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 1f17c0f0..1a26cbe2 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -69,4 +69,3 @@ jobs: image-name: 'iexechub/iexec-sdk' push: false security-scan: false - hadolint: false From cf979a0759e9c830247fccd8e56dfef3e6f5d1b0 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 10:54:01 +0200 Subject: [PATCH 29/52] chore: git ignore generated files --- .github/workflows/pr-test.yml | 2 +- .gitignore | 3 +++ README.md | 1 + package.json | 3 ++- src/common/generated/@ensdomains/registry/ENSRegistry.js | 3 --- src/common/generated/@ensdomains/registry/FIFSRegistrar.js | 3 --- .../generated/@ensdomains/registry/ReverseRegistrar.js | 3 --- src/common/generated/@ensdomains/resolvers/PublicResolver.js | 3 --- src/common/generated/@iexec/poco/App.js | 3 --- src/common/generated/@iexec/poco/AppRegistry.js | 3 --- src/common/generated/@iexec/poco/Dataset.js | 3 --- src/common/generated/@iexec/poco/DatasetRegistry.js | 3 --- src/common/generated/@iexec/poco/ERC1538Proxy.js | 4 ---- src/common/generated/@iexec/poco/IexecInterfaceNative.js | 3 --- src/common/generated/@iexec/poco/IexecInterfaceToken.js | 3 --- src/common/generated/@iexec/poco/RegistryEntry.js | 3 --- src/common/generated/@iexec/poco/Workerpool.js | 3 --- src/common/generated/@iexec/poco/WorkerpoolRegistry.js | 3 --- src/common/generated/@iexec/poco/package.js | 5 ----- src/common/generated/@iexec/rlc/RLC.js | 4 ---- src/common/generated/@iexec/voucher-contracts/Voucher.js | 3 --- src/common/generated/@iexec/voucher-contracts/VoucherHub.js | 3 --- .../deployments/bellecour/VoucherHubERC1967Proxy.js | 3 --- src/common/generated/sdk/package.js | 5 ----- 24 files changed, 7 insertions(+), 68 deletions(-) delete mode 100644 src/common/generated/@ensdomains/registry/ENSRegistry.js delete mode 100644 src/common/generated/@ensdomains/registry/FIFSRegistrar.js delete mode 100644 src/common/generated/@ensdomains/registry/ReverseRegistrar.js delete mode 100644 src/common/generated/@ensdomains/resolvers/PublicResolver.js delete mode 100644 src/common/generated/@iexec/poco/App.js delete mode 100644 src/common/generated/@iexec/poco/AppRegistry.js delete mode 100644 src/common/generated/@iexec/poco/Dataset.js delete mode 100644 src/common/generated/@iexec/poco/DatasetRegistry.js delete mode 100644 src/common/generated/@iexec/poco/ERC1538Proxy.js delete mode 100644 src/common/generated/@iexec/poco/IexecInterfaceNative.js delete mode 100644 src/common/generated/@iexec/poco/IexecInterfaceToken.js delete mode 100644 src/common/generated/@iexec/poco/RegistryEntry.js delete mode 100644 src/common/generated/@iexec/poco/Workerpool.js delete mode 100644 src/common/generated/@iexec/poco/WorkerpoolRegistry.js delete mode 100644 src/common/generated/@iexec/poco/package.js delete mode 100644 src/common/generated/@iexec/rlc/RLC.js delete mode 100644 src/common/generated/@iexec/voucher-contracts/Voucher.js delete mode 100644 src/common/generated/@iexec/voucher-contracts/VoucherHub.js delete mode 100644 src/common/generated/@iexec/voucher-contracts/deployments/bellecour/VoucherHubERC1967Proxy.js delete mode 100644 src/common/generated/sdk/package.js diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 1a26cbe2..5d20cad4 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -19,7 +19,7 @@ jobs: cache: 'npm' - name: Install dependencies - run: npm ci + run: npm ci && npm run codegen - name: Check format run: npm run check-format diff --git a/.gitignore b/.gitignore index 1ecd45aa..2cfaf2cc 100644 --- a/.gitignore +++ b/.gitignore @@ -29,6 +29,9 @@ test/tests-working-dir # sonar output .scannerwork +# codegen output +src/common/generated + # build output dist/** IExec*/** diff --git a/README.md b/README.md index 5fd84660..f7312935 100644 --- a/README.md +++ b/README.md @@ -45,6 +45,7 @@ Check the [documentation](./CLI.md) ```sh npm ci +npm run codegen ``` ### Build diff --git a/package.json b/package.json index 04d61908..2acaa47c 100644 --- a/package.json +++ b/package.json @@ -147,6 +147,7 @@ "npm": ">=8" }, "scripts": { + "codegen": "rimraf src/common/generated && node generateEsModulesFromJson.cjs", "format": "prettier --write .", "check-format": "prettier --check .", "lint": "eslint src", @@ -154,7 +155,7 @@ "test": "npm run test:prepare && NODE_OPTIONS=--experimental-vm-modules jest --coverage", "stop-test-stack": "cd test && docker compose down --remove-orphans --volumes", "start-test-stack": "cd test && npm run stop-test-stack && node scripts/prepare-test-env.js && docker compose pull && docker compose up -d", - "build:codegen": "rimraf src/common/generated && node generateEsModulesFromJson.cjs", + "build:codegen": "npm run codegen", "build:dist": "rimraf dist && mkdir dist && mkdir dist/esm && cp -r src/. dist/esm/", "build:packages": "node generatePackages.cjs", "build:doc": "npm run build:doc:lib && npm run build:doc:cli", diff --git a/src/common/generated/@ensdomains/registry/ENSRegistry.js b/src/common/generated/@ensdomains/registry/ENSRegistry.js deleted file mode 100644 index 20206008..00000000 --- a/src/common/generated/@ensdomains/registry/ENSRegistry.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"label","type":"bytes32"},{"indexed":false,"internalType":"address","name":"owner","type":"address"}],"name":"NewOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":false,"internalType":"address","name":"resolver","type":"address"}],"name":"NewResolver","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":false,"internalType":"uint64","name":"ttl","type":"uint64"}],"name":"NewTTL","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":false,"internalType":"address","name":"owner","type":"address"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"}],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"}],"name":"recordExists","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"}],"name":"resolver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"address","name":"owner","type":"address"}],"name":"setOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"resolver","type":"address"},{"internalType":"uint64","name":"ttl","type":"uint64"}],"name":"setRecord","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"address","name":"resolver","type":"address"}],"name":"setResolver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"bytes32","name":"label","type":"bytes32"},{"internalType":"address","name":"owner","type":"address"}],"name":"setSubnodeOwner","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"bytes32","name":"label","type":"bytes32"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"resolver","type":"address"},{"internalType":"uint64","name":"ttl","type":"uint64"}],"name":"setSubnodeRecord","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"uint64","name":"ttl","type":"uint64"}],"name":"setTTL","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"}],"name":"ttl","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@ensdomains/registry/FIFSRegistrar.js b/src/common/generated/@ensdomains/registry/FIFSRegistrar.js deleted file mode 100644 index 3ecb0b06..00000000 --- a/src/common/generated/@ensdomains/registry/FIFSRegistrar.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[{"internalType":"contract ENS","name":"ensAddr","type":"address"},{"internalType":"bytes32","name":"node","type":"bytes32"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"bytes32","name":"label","type":"bytes32"},{"internalType":"address","name":"owner","type":"address"}],"name":"register","outputs":[],"stateMutability":"nonpayable","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@ensdomains/registry/ReverseRegistrar.js b/src/common/generated/@ensdomains/registry/ReverseRegistrar.js deleted file mode 100644 index 239c2d99..00000000 --- a/src/common/generated/@ensdomains/registry/ReverseRegistrar.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[{"internalType":"contract ENS","name":"ensAddr","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"controller","type":"address"},{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"ControllerChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"contract NameResolver","name":"resolver","type":"address"}],"name":"DefaultResolverChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"addr","type":"address"},{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"}],"name":"ReverseClaimed","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"claim","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"resolver","type":"address"}],"name":"claimForAddr","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"resolver","type":"address"}],"name":"claimWithResolver","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"controllers","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultResolver","outputs":[{"internalType":"contract NameResolver","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ens","outputs":[{"internalType":"contract ENS","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"node","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"controller","type":"address"},{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setController","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"resolver","type":"address"}],"name":"setDefaultResolver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"name","type":"string"}],"name":"setName","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"resolver","type":"address"},{"internalType":"string","name":"name","type":"string"}],"name":"setNameForAddr","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@ensdomains/resolvers/PublicResolver.js b/src/common/generated/@ensdomains/resolvers/PublicResolver.js deleted file mode 100644 index f8c7c3e7..00000000 --- a/src/common/generated/@ensdomains/resolvers/PublicResolver.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[{"internalType":"contract ENS","name":"_ens","type":"address"},{"internalType":"contract INameWrapper","name":"wrapperAddress","type":"address"},{"internalType":"address","name":"_trustedETHController","type":"address"},{"internalType":"address","name":"_trustedReverseRegistrar","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":true,"internalType":"uint256","name":"contentType","type":"uint256"}],"name":"ABIChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":false,"internalType":"address","name":"a","type":"address"}],"name":"AddrChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"coinType","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"newAddress","type":"bytes"}],"name":"AddressChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":true,"internalType":"address","name":"delegate","type":"address"},{"indexed":true,"internalType":"bool","name":"approved","type":"bool"}],"name":"Approved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"hash","type":"bytes"}],"name":"ContenthashChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"name","type":"bytes"},{"indexed":false,"internalType":"uint16","name":"resource","type":"uint16"},{"indexed":false,"internalType":"bytes","name":"record","type":"bytes"}],"name":"DNSRecordChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"name","type":"bytes"},{"indexed":false,"internalType":"uint16","name":"resource","type":"uint16"}],"name":"DNSRecordDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"lastzonehash","type":"bytes"},{"indexed":false,"internalType":"bytes","name":"zonehash","type":"bytes"}],"name":"DNSZonehashChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":true,"internalType":"bytes4","name":"interfaceID","type":"bytes4"},{"indexed":false,"internalType":"address","name":"implementer","type":"address"}],"name":"InterfaceChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":false,"internalType":"string","name":"name","type":"string"}],"name":"NameChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"x","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"y","type":"bytes32"}],"name":"PubkeyChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":true,"internalType":"string","name":"indexedKey","type":"string"},{"indexed":false,"internalType":"string","name":"key","type":"string"},{"indexed":false,"internalType":"string","name":"value","type":"string"}],"name":"TextChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"node","type":"bytes32"},{"indexed":false,"internalType":"uint64","name":"newVersion","type":"uint64"}],"name":"VersionChanged","type":"event"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"uint256","name":"contentTypes","type":"uint256"}],"name":"ABI","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"}],"name":"addr","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"uint256","name":"coinType","type":"uint256"}],"name":"addr","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"address","name":"delegate","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"approve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"}],"name":"clearRecords","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"}],"name":"contenthash","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint16","name":"resource","type":"uint16"}],"name":"dnsRecord","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"bytes32","name":"name","type":"bytes32"}],"name":"hasDNSRecords","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"bytes4","name":"interfaceID","type":"bytes4"}],"name":"interfaceImplementer","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"address","name":"delegate","type":"address"}],"name":"isApprovedFor","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes[]","name":"data","type":"bytes[]"}],"name":"multicall","outputs":[{"internalType":"bytes[]","name":"results","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"nodehash","type":"bytes32"},{"internalType":"bytes[]","name":"data","type":"bytes[]"}],"name":"multicallWithNodeCheck","outputs":[{"internalType":"bytes[]","name":"results","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"}],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"}],"name":"pubkey","outputs":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"recordVersions","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"uint256","name":"contentType","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"setABI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"uint256","name":"coinType","type":"uint256"},{"internalType":"bytes","name":"a","type":"bytes"}],"name":"setAddr","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"address","name":"a","type":"address"}],"name":"setAddr","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"bytes","name":"hash","type":"bytes"}],"name":"setContenthash","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"setDNSRecords","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"bytes4","name":"interfaceID","type":"bytes4"},{"internalType":"address","name":"implementer","type":"address"}],"name":"setInterface","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"string","name":"newName","type":"string"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}],"name":"setPubkey","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"string","name":"key","type":"string"},{"internalType":"string","name":"value","type":"string"}],"name":"setText","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"bytes","name":"hash","type":"bytes"}],"name":"setZonehash","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceID","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"},{"internalType":"string","name":"key","type":"string"}],"name":"text","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"node","type":"bytes32"}],"name":"zonehash","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@iexec/poco/App.js b/src/common/generated/@iexec/poco/App.js deleted file mode 100644 index 9b55a20e..00000000 --- a/src/common/generated/@iexec/poco/App.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[{"internalType":"string","name":"_appName","type":"string"},{"internalType":"string","name":"_appType","type":"string"},{"internalType":"bytes","name":"_appMultiaddr","type":"bytes"},{"internalType":"bytes32","name":"_appChecksum","type":"bytes32"},{"internalType":"bytes","name":"_appMREnclave","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"m_appChecksum","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"m_appMREnclave","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"m_appMultiaddr","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"m_appName","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"m_appType","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_ens","type":"address"},{"internalType":"string","name":"_name","type":"string"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@iexec/poco/AppRegistry.js b/src/common/generated/@iexec/poco/AppRegistry.js deleted file mode 100644 index a734dd0d..00000000 --- a/src/common/generated/@iexec/poco/AppRegistry.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"approved","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"approve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"baseURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_appOwner","type":"address"},{"internalType":"string","name":"_appName","type":"string"},{"internalType":"string","name":"_appType","type":"string"},{"internalType":"bytes","name":"_appMultiaddr","type":"bytes"},{"internalType":"bytes32","name":"_appChecksum","type":"bytes32"},{"internalType":"bytes","name":"_appMREnclave","type":"bytes"}],"name":"createApp","outputs":[{"internalType":"contract App","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_previous","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_entry","type":"address"}],"name":"isRegistered","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"master","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_appOwner","type":"address"},{"internalType":"string","name":"_appName","type":"string"},{"internalType":"string","name":"_appType","type":"string"},{"internalType":"bytes","name":"_appMultiaddr","type":"bytes"},{"internalType":"bytes32","name":"_appChecksum","type":"bytes32"},{"internalType":"bytes","name":"_appMREnclave","type":"bytes"}],"name":"predictApp","outputs":[{"internalType":"contract App","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"previous","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxyCode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxyCodeHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_baseURI","type":"string"}],"name":"setBaseURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_ens","type":"address"},{"internalType":"string","name":"_name","type":"string"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"tokenByIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"tokenOfOwnerByIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@iexec/poco/Dataset.js b/src/common/generated/@iexec/poco/Dataset.js deleted file mode 100644 index 4aeebc92..00000000 --- a/src/common/generated/@iexec/poco/Dataset.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[{"internalType":"string","name":"_datasetName","type":"string"},{"internalType":"bytes","name":"_datasetMultiaddr","type":"bytes"},{"internalType":"bytes32","name":"_datasetChecksum","type":"bytes32"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"m_datasetChecksum","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"m_datasetMultiaddr","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"m_datasetName","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_ens","type":"address"},{"internalType":"string","name":"_name","type":"string"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@iexec/poco/DatasetRegistry.js b/src/common/generated/@iexec/poco/DatasetRegistry.js deleted file mode 100644 index fcc1d749..00000000 --- a/src/common/generated/@iexec/poco/DatasetRegistry.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"approved","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"approve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"baseURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_datasetOwner","type":"address"},{"internalType":"string","name":"_datasetName","type":"string"},{"internalType":"bytes","name":"_datasetMultiaddr","type":"bytes"},{"internalType":"bytes32","name":"_datasetChecksum","type":"bytes32"}],"name":"createDataset","outputs":[{"internalType":"contract Dataset","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_previous","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_entry","type":"address"}],"name":"isRegistered","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"master","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_datasetOwner","type":"address"},{"internalType":"string","name":"_datasetName","type":"string"},{"internalType":"bytes","name":"_datasetMultiaddr","type":"bytes"},{"internalType":"bytes32","name":"_datasetChecksum","type":"bytes32"}],"name":"predictDataset","outputs":[{"internalType":"contract Dataset","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"previous","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxyCode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxyCodeHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_baseURI","type":"string"}],"name":"setBaseURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_ens","type":"address"},{"internalType":"string","name":"_name","type":"string"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"tokenByIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"tokenOfOwnerByIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@iexec/poco/ERC1538Proxy.js b/src/common/generated/@iexec/poco/ERC1538Proxy.js deleted file mode 100644 index e9a9fa6f..00000000 --- a/src/common/generated/@iexec/poco/ERC1538Proxy.js +++ /dev/null @@ -1,4 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[{"internalType":"address","name":"_erc1538Delegate","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"message","type":"string"}],"name":"CommitMessage","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes4","name":"functionId","type":"bytes4"},{"indexed":true,"internalType":"address","name":"oldDelegate","type":"address"},{"indexed":true,"internalType":"address","name":"newDelegate","type":"address"},{"indexed":false,"internalType":"string","name":"functionSignature","type":"string"}],"name":"FunctionUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"stateMutability":"payable","type":"fallback","payable":true},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","constant":true},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive","payable":true}]; -export const networks = {"1":{"address":"0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f"},"3":{"address":"0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f"},"4":{"address":"0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f"},"5":{"address":"0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f"},"42":{"address":"0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f"},"133":{"address":"0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f"},"134":{"address":"0x3eca1B216A7DF1C7689aEb259fFB83ADFB894E7f"}}; -export default { abi, networks }; \ No newline at end of file diff --git a/src/common/generated/@iexec/poco/IexecInterfaceNative.js b/src/common/generated/@iexec/poco/IexecInterfaceNative.js deleted file mode 100644 index 3c152b90..00000000 --- a/src/common/generated/@iexec/poco/IexecInterfaceNative.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"worker","type":"address"},{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"}],"name":"AccurateContribution","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"indexed":false,"internalType":"struct IexecLibOrders_v5.AppOrder","name":"apporder","type":"tuple"}],"name":"BroadcastAppOrder","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"indexed":false,"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"datasetorder","type":"tuple"}],"name":"BroadcastDatasetOrder","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"indexed":false,"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"requestorder","type":"tuple"}],"name":"BroadcastRequestOrder","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"indexed":false,"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"workerpoolorder","type":"tuple"}],"name":"BroadcastWorkerpoolOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"appHash","type":"bytes32"}],"name":"ClosedAppOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"datasetHash","type":"bytes32"}],"name":"ClosedDatasetOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"requestHash","type":"bytes32"}],"name":"ClosedRequestOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"workerpoolHash","type":"bytes32"}],"name":"ClosedWorkerpoolOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"catid","type":"uint256"},{"indexed":false,"internalType":"string","name":"name","type":"string"},{"indexed":false,"internalType":"string","name":"description","type":"string"},{"indexed":false,"internalType":"uint256","name":"workClockTimeRef","type":"uint256"}],"name":"CreateCategory","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"dealId","type":"bytes32"},{"indexed":false,"internalType":"address","name":"sponsor","type":"address"}],"name":"DealSponsored","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"worker","type":"address"},{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"}],"name":"FaultyContribution","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Lock","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"dealid","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"appHash","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"datasetHash","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"workerpoolHash","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"requestHash","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"volume","type":"uint256"}],"name":"OrdersMatched","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"ref","type":"bytes32"}],"name":"Reward","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"workerpool","type":"address"},{"indexed":false,"internalType":"bytes32","name":"dealid","type":"bytes32"}],"name":"SchedulerNotice","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"ref","type":"bytes32"}],"name":"Seize","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"appHash","type":"bytes32"}],"name":"SignedAppOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"datasetHash","type":"bytes32"}],"name":"SignedDatasetOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"requestHash","type":"bytes32"}],"name":"SignedRequestOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"workerpoolHash","type":"bytes32"}],"name":"SignedWorkerpoolOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"}],"name":"TaskClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"consensus","type":"bytes32"}],"name":"TaskConsensus","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"},{"indexed":true,"internalType":"address","name":"worker","type":"address"},{"indexed":false,"internalType":"bytes32","name":"hash","type":"bytes32"}],"name":"TaskContribute","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"results","type":"bytes"}],"name":"TaskFinalize","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"},{"indexed":true,"internalType":"address","name":"workerpool","type":"address"}],"name":"TaskInitialize","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"}],"name":"TaskReopen","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"},{"indexed":true,"internalType":"address","name":"worker","type":"address"},{"indexed":false,"internalType":"bytes32","name":"digest","type":"bytes32"}],"name":"TaskReveal","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Unlock","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"appregistry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"approveAndCall","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrder","name":"","type":"tuple"}],"name":"broadcastAppOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"","type":"tuple"}],"name":"broadcastDatasetOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"","type":"tuple"}],"name":"broadcastRequestOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"","type":"tuple"}],"name":"broadcastWorkerpoolOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"callbackgas","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"","type":"bytes32[]"}],"name":"claimArray","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"string","name":"","type":"string"},{"internalType":"string","name":"","type":"string"},{"internalType":"uint8","name":"","type":"uint8"},{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"configure","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"address","name":"","type":"address"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"contribute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"address","name":"","type":"address"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"contributeAndFinalize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"contribution_deadline_ratio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"countCategory","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"","type":"string"},{"internalType":"string","name":"","type":"string"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"createCategory","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"datasetregistry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"deposit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"depositFor","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"},{"internalType":"address[]","name":"","type":"address[]"}],"name":"depositForArray","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"domain","outputs":[{"components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"verifyingContract","type":"address"}],"internalType":"struct IexecLibOrders_v5.EIP712Domain","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"eip712domain_separator","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"final_deadline_ratio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"finalize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"frozenOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"groupmember_purpose","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"importScore","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"initialize","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"","type":"bytes32[]"},{"internalType":"uint256[]","name":"","type":"uint256[]"}],"name":"initializeAndClaimArray","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"","type":"bytes32[]"},{"internalType":"uint256[]","name":"","type":"uint256[]"}],"name":"initializeArray","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"kitty_address","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"kitty_min","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"kitty_ratio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrder","name":"order","type":"tuple"},{"internalType":"enum IexecLibOrders_v5.OrderOperationEnum","name":"operation","type":"uint8"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrderOperation","name":"","type":"tuple"}],"name":"manageAppOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"order","type":"tuple"},{"internalType":"enum IexecLibOrders_v5.OrderOperationEnum","name":"operation","type":"uint8"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrderOperation","name":"","type":"tuple"}],"name":"manageDatasetOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"order","type":"tuple"},{"internalType":"enum IexecLibOrders_v5.OrderOperationEnum","name":"operation","type":"uint8"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrderOperation","name":"","type":"tuple"}],"name":"manageRequestOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"order","type":"tuple"},{"internalType":"enum IexecLibOrders_v5.OrderOperationEnum","name":"operation","type":"uint8"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrderOperation","name":"","type":"tuple"}],"name":"manageWorkerpoolOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"","type":"tuple"}],"name":"matchOrders","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"receiveApproval","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"recover","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"reopen","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"resultFor","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"reveal","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"reveal_deadline_ratio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"setCallbackGas","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"ens","type":"address"},{"internalType":"string","name":"name","type":"string"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"setTeeBroker","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"","type":"tuple"}],"name":"sponsorMatchOrders","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"teebroker","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"token","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"updateDomainSeparator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"verifyPresignature","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"verifyPresignatureOrSignature","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"verifySignature","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"viewAccount","outputs":[{"components":[{"internalType":"uint256","name":"stake","type":"uint256"},{"internalType":"uint256","name":"locked","type":"uint256"}],"internalType":"struct IexecLibCore_v5.Account","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"viewCategory","outputs":[{"components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"description","type":"string"},{"internalType":"uint256","name":"workClockTimeRef","type":"uint256"}],"internalType":"struct IexecLibCore_v5.Category","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"viewConsumed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"address","name":"","type":"address"}],"name":"viewContribution","outputs":[{"components":[{"internalType":"enum IexecLibCore_v5.ContributionStatusEnum","name":"status","type":"uint8"},{"internalType":"bytes32","name":"resultHash","type":"bytes32"},{"internalType":"bytes32","name":"resultSeal","type":"bytes32"},{"internalType":"address","name":"enclaveChallenge","type":"address"},{"internalType":"uint256","name":"weight","type":"uint256"}],"internalType":"struct IexecLibCore_v5.Contribution","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"viewDeal","outputs":[{"components":[{"components":[{"internalType":"address","name":"pointer","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"price","type":"uint256"}],"internalType":"struct IexecLibCore_v5.Resource","name":"app","type":"tuple"},{"components":[{"internalType":"address","name":"pointer","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"price","type":"uint256"}],"internalType":"struct IexecLibCore_v5.Resource","name":"dataset","type":"tuple"},{"components":[{"internalType":"address","name":"pointer","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"price","type":"uint256"}],"internalType":"struct IexecLibCore_v5.Resource","name":"workerpool","type":"tuple"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"botFirst","type":"uint256"},{"internalType":"uint256","name":"botSize","type":"uint256"},{"internalType":"uint256","name":"workerStake","type":"uint256"},{"internalType":"uint256","name":"schedulerRewardRatio","type":"uint256"},{"internalType":"address","name":"sponsor","type":"address"}],"internalType":"struct IexecLibCore_v5.Deal","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"viewPresigned","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"viewScore","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"viewTask","outputs":[{"components":[{"internalType":"enum IexecLibCore_v5.TaskStatusEnum","name":"status","type":"uint8"},{"internalType":"bytes32","name":"dealid","type":"bytes32"},{"internalType":"uint256","name":"idx","type":"uint256"},{"internalType":"uint256","name":"timeref","type":"uint256"},{"internalType":"uint256","name":"contributionDeadline","type":"uint256"},{"internalType":"uint256","name":"revealDeadline","type":"uint256"},{"internalType":"uint256","name":"finalDeadline","type":"uint256"},{"internalType":"bytes32","name":"consensusValue","type":"bytes32"},{"internalType":"uint256","name":"revealCounter","type":"uint256"},{"internalType":"uint256","name":"winnerCounter","type":"uint256"},{"internalType":"address[]","name":"contributors","type":"address[]"},{"internalType":"bytes32","name":"resultDigest","type":"bytes32"},{"internalType":"bytes","name":"results","type":"bytes"},{"internalType":"uint256","name":"resultsTimestamp","type":"uint256"},{"internalType":"bytes","name":"resultsCallback","type":"bytes"}],"internalType":"struct IexecLibCore_v5.Task","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"withdraw","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"withdrawTo","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"workerpool_stake_ratio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"workerpoolregistry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@iexec/poco/IexecInterfaceToken.js b/src/common/generated/@iexec/poco/IexecInterfaceToken.js deleted file mode 100644 index 1942328e..00000000 --- a/src/common/generated/@iexec/poco/IexecInterfaceToken.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"worker","type":"address"},{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"}],"name":"AccurateContribution","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"indexed":false,"internalType":"struct IexecLibOrders_v5.AppOrder","name":"apporder","type":"tuple"}],"name":"BroadcastAppOrder","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"indexed":false,"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"datasetorder","type":"tuple"}],"name":"BroadcastDatasetOrder","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"indexed":false,"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"requestorder","type":"tuple"}],"name":"BroadcastRequestOrder","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"indexed":false,"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"workerpoolorder","type":"tuple"}],"name":"BroadcastWorkerpoolOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"appHash","type":"bytes32"}],"name":"ClosedAppOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"datasetHash","type":"bytes32"}],"name":"ClosedDatasetOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"requestHash","type":"bytes32"}],"name":"ClosedRequestOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"workerpoolHash","type":"bytes32"}],"name":"ClosedWorkerpoolOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"catid","type":"uint256"},{"indexed":false,"internalType":"string","name":"name","type":"string"},{"indexed":false,"internalType":"string","name":"description","type":"string"},{"indexed":false,"internalType":"uint256","name":"workClockTimeRef","type":"uint256"}],"name":"CreateCategory","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"dealId","type":"bytes32"},{"indexed":false,"internalType":"address","name":"sponsor","type":"address"}],"name":"DealSponsored","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"worker","type":"address"},{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"}],"name":"FaultyContribution","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Lock","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"dealid","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"appHash","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"datasetHash","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"workerpoolHash","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"requestHash","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"volume","type":"uint256"}],"name":"OrdersMatched","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"ref","type":"bytes32"}],"name":"Reward","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"workerpool","type":"address"},{"indexed":false,"internalType":"bytes32","name":"dealid","type":"bytes32"}],"name":"SchedulerNotice","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"ref","type":"bytes32"}],"name":"Seize","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"appHash","type":"bytes32"}],"name":"SignedAppOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"datasetHash","type":"bytes32"}],"name":"SignedDatasetOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"requestHash","type":"bytes32"}],"name":"SignedRequestOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"workerpoolHash","type":"bytes32"}],"name":"SignedWorkerpoolOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"}],"name":"TaskClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"consensus","type":"bytes32"}],"name":"TaskConsensus","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"},{"indexed":true,"internalType":"address","name":"worker","type":"address"},{"indexed":false,"internalType":"bytes32","name":"hash","type":"bytes32"}],"name":"TaskContribute","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"results","type":"bytes"}],"name":"TaskFinalize","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"},{"indexed":true,"internalType":"address","name":"workerpool","type":"address"}],"name":"TaskInitialize","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"}],"name":"TaskReopen","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"taskid","type":"bytes32"},{"indexed":true,"internalType":"address","name":"worker","type":"address"},{"indexed":false,"internalType":"bytes32","name":"digest","type":"bytes32"}],"name":"TaskReveal","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Unlock","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"UniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"appregistry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"approveAndCall","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrder","name":"","type":"tuple"}],"name":"broadcastAppOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"","type":"tuple"}],"name":"broadcastDatasetOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"","type":"tuple"}],"name":"broadcastRequestOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"","type":"tuple"}],"name":"broadcastWorkerpoolOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"callbackgas","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"","type":"bytes32[]"}],"name":"claimArray","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"string","name":"","type":"string"},{"internalType":"string","name":"","type":"string"},{"internalType":"uint8","name":"","type":"uint8"},{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"configure","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"address","name":"","type":"address"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"contribute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"address","name":"","type":"address"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"contributeAndFinalize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"contribution_deadline_ratio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"countCategory","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"","type":"string"},{"internalType":"string","name":"","type":"string"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"createCategory","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"datasetregistry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"deposit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"depositEth","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"depositEthFor","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"depositFor","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"},{"internalType":"address[]","name":"","type":"address[]"}],"name":"depositForArray","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"domain","outputs":[{"components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"verifyingContract","type":"address"}],"internalType":"struct IexecLibOrders_v5.EIP712Domain","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"eip712domain_separator","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"estimateDepositEthSent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"estimateDepositTokenWanted","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"estimateWithdrawEthWanted","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"estimateWithdrawTokenSent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"final_deadline_ratio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"finalize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"frozenOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"groupmember_purpose","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"importScore","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"initialize","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"","type":"bytes32[]"},{"internalType":"uint256[]","name":"","type":"uint256[]"}],"name":"initializeAndClaimArray","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"","type":"bytes32[]"},{"internalType":"uint256[]","name":"","type":"uint256[]"}],"name":"initializeArray","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"kitty_address","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"kitty_min","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"kitty_ratio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrder","name":"order","type":"tuple"},{"internalType":"enum IexecLibOrders_v5.OrderOperationEnum","name":"operation","type":"uint8"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrderOperation","name":"","type":"tuple"}],"name":"manageAppOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"order","type":"tuple"},{"internalType":"enum IexecLibOrders_v5.OrderOperationEnum","name":"operation","type":"uint8"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrderOperation","name":"","type":"tuple"}],"name":"manageDatasetOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"order","type":"tuple"},{"internalType":"enum IexecLibOrders_v5.OrderOperationEnum","name":"operation","type":"uint8"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrderOperation","name":"","type":"tuple"}],"name":"manageRequestOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"order","type":"tuple"},{"internalType":"enum IexecLibOrders_v5.OrderOperationEnum","name":"operation","type":"uint8"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrderOperation","name":"","type":"tuple"}],"name":"manageWorkerpoolOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"","type":"tuple"}],"name":"matchOrders","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"","type":"tuple"}],"name":"matchOrdersWithEth","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"receiveApproval","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"recover","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"reopen","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"requestToken","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"requestTokenFor","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"resultFor","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"reveal","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"reveal_deadline_ratio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"safeDepositEth","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"safeDepositEthFor","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"safeWithdrawEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"safeWithdrawEthTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"setCallbackGas","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"ens","type":"address"},{"internalType":"string","name":"name","type":"string"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"setTeeBroker","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"","type":"tuple"},{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"","type":"tuple"}],"name":"sponsorMatchOrders","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"teebroker","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"token","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"updateDomainSeparator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"verifyPresignature","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"verifyPresignatureOrSignature","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"verifySignature","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"viewAccount","outputs":[{"components":[{"internalType":"uint256","name":"stake","type":"uint256"},{"internalType":"uint256","name":"locked","type":"uint256"}],"internalType":"struct IexecLibCore_v5.Account","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"viewCategory","outputs":[{"components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"description","type":"string"},{"internalType":"uint256","name":"workClockTimeRef","type":"uint256"}],"internalType":"struct IexecLibCore_v5.Category","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"viewConsumed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"address","name":"","type":"address"}],"name":"viewContribution","outputs":[{"components":[{"internalType":"enum IexecLibCore_v5.ContributionStatusEnum","name":"status","type":"uint8"},{"internalType":"bytes32","name":"resultHash","type":"bytes32"},{"internalType":"bytes32","name":"resultSeal","type":"bytes32"},{"internalType":"address","name":"enclaveChallenge","type":"address"},{"internalType":"uint256","name":"weight","type":"uint256"}],"internalType":"struct IexecLibCore_v5.Contribution","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"viewDeal","outputs":[{"components":[{"components":[{"internalType":"address","name":"pointer","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"price","type":"uint256"}],"internalType":"struct IexecLibCore_v5.Resource","name":"app","type":"tuple"},{"components":[{"internalType":"address","name":"pointer","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"price","type":"uint256"}],"internalType":"struct IexecLibCore_v5.Resource","name":"dataset","type":"tuple"},{"components":[{"internalType":"address","name":"pointer","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"price","type":"uint256"}],"internalType":"struct IexecLibCore_v5.Resource","name":"workerpool","type":"tuple"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"botFirst","type":"uint256"},{"internalType":"uint256","name":"botSize","type":"uint256"},{"internalType":"uint256","name":"workerStake","type":"uint256"},{"internalType":"uint256","name":"schedulerRewardRatio","type":"uint256"},{"internalType":"address","name":"sponsor","type":"address"}],"internalType":"struct IexecLibCore_v5.Deal","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"viewPresigned","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"viewScore","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"viewTask","outputs":[{"components":[{"internalType":"enum IexecLibCore_v5.TaskStatusEnum","name":"status","type":"uint8"},{"internalType":"bytes32","name":"dealid","type":"bytes32"},{"internalType":"uint256","name":"idx","type":"uint256"},{"internalType":"uint256","name":"timeref","type":"uint256"},{"internalType":"uint256","name":"contributionDeadline","type":"uint256"},{"internalType":"uint256","name":"revealDeadline","type":"uint256"},{"internalType":"uint256","name":"finalDeadline","type":"uint256"},{"internalType":"bytes32","name":"consensusValue","type":"bytes32"},{"internalType":"uint256","name":"revealCounter","type":"uint256"},{"internalType":"uint256","name":"winnerCounter","type":"uint256"},{"internalType":"address[]","name":"contributors","type":"address[]"},{"internalType":"bytes32","name":"resultDigest","type":"bytes32"},{"internalType":"bytes","name":"results","type":"bytes"},{"internalType":"uint256","name":"resultsTimestamp","type":"uint256"},{"internalType":"bytes","name":"resultsCallback","type":"bytes"}],"internalType":"struct IexecLibCore_v5.Task","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"withdraw","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"withdrawEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"withdrawEthTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"withdrawTo","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"workerpool_stake_ratio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"workerpoolregistry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@iexec/poco/RegistryEntry.js b/src/common/generated/@iexec/poco/RegistryEntry.js deleted file mode 100644 index 0e8fa55e..00000000 --- a/src/common/generated/@iexec/poco/RegistryEntry.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_ens","type":"address"},{"internalType":"string","name":"_name","type":"string"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@iexec/poco/Workerpool.js b/src/common/generated/@iexec/poco/Workerpool.js deleted file mode 100644 index c82b819e..00000000 --- a/src/common/generated/@iexec/poco/Workerpool.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldWorkerStakeRatioPolicy","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newWorkerStakeRatioPolicy","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"oldSchedulerRewardRatioPolicy","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newSchedulerRewardRatioPolicy","type":"uint256"}],"name":"PolicyUpdate","type":"event"},{"inputs":[{"internalType":"uint256","name":"_newWorkerStakeRatioPolicy","type":"uint256"},{"internalType":"uint256","name":"_newSchedulerRewardRatioPolicy","type":"uint256"}],"name":"changePolicy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_workerpoolDescription","type":"string"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"m_schedulerRewardRatioPolicy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"m_workerStakeRatioPolicy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"m_workerpoolDescription","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_ens","type":"address"},{"internalType":"string","name":"_name","type":"string"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@iexec/poco/WorkerpoolRegistry.js b/src/common/generated/@iexec/poco/WorkerpoolRegistry.js deleted file mode 100644 index b7098efd..00000000 --- a/src/common/generated/@iexec/poco/WorkerpoolRegistry.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"approved","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"approve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"baseURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_workerpoolOwner","type":"address"},{"internalType":"string","name":"_workerpoolDescription","type":"string"}],"name":"createWorkerpool","outputs":[{"internalType":"contract Workerpool","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_previous","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_entry","type":"address"}],"name":"isRegistered","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"master","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_workerpoolOwner","type":"address"},{"internalType":"string","name":"_workerpoolDescription","type":"string"}],"name":"predictWorkerpool","outputs":[{"internalType":"contract Workerpool","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"previous","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxyCode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxyCodeHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_baseURI","type":"string"}],"name":"setBaseURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_ens","type":"address"},{"internalType":"string","name":"_name","type":"string"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"tokenByIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"tokenOfOwnerByIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@iexec/poco/package.js b/src/common/generated/@iexec/poco/package.js deleted file mode 100644 index 0f3e304e..00000000 --- a/src/common/generated/@iexec/poco/package.js +++ /dev/null @@ -1,5 +0,0 @@ -// this file is auto generated do not edit it -export const name = "@iexec/poco"; -export const version = "5.5.0"; -export const description = ""; -export default { name, version, description }; \ No newline at end of file diff --git a/src/common/generated/@iexec/rlc/RLC.js b/src/common/generated/@iexec/rlc/RLC.js deleted file mode 100644 index fc53cff4..00000000 --- a/src/common/generated/@iexec/rlc/RLC.js +++ /dev/null @@ -1,4 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"initialSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"locked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"refill","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_giver","type":"address"},{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"forceApprove","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_toburn","type":"address"},{"name":"_value","type":"uint256"}],"name":"forceBurn","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}]; -export const networks = {"1":{"address":"0x607F4C5BB672230e8672085532f7e901544a7375"},"3":{"address":"0x7314dc4d7794b5e7894212ca1556ae8e3de58621"},"4":{"address":"0xf1e6ad3a7ef0c86c915f0fedf80ed851809bea90"},"5":{"address":"0xe0d00540a3729B4fdB96f92534dA97DC7973Af8b"},"31":{"address":"0x88b37ff3c0df0692f982a28099a9999c4a422293"},"42":{"address":"0xc57538846ec405ea25deb00e0f9b29a432d53507"}}; -export default { abi, networks }; \ No newline at end of file diff --git a/src/common/generated/@iexec/voucher-contracts/Voucher.js b/src/common/generated/@iexec/voucher-contracts/Voucher.js deleted file mode 100644 index 95e92998..00000000 --- a/src/common/generated/@iexec/voucher-contracts/Voucher.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"InvalidInitialization","type":"error"},{"inputs":[],"name":"NotInitializing","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"AccountAuthorized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"AccountUnauthorized","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"expiration","type":"uint256"}],"name":"ExpirationUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint64","name":"version","type":"uint64"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"dealId","type":"bytes32"}],"name":"OrdersBoostMatchedWithVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"dealId","type":"bytes32"}],"name":"OrdersMatchedWithVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"taskId","type":"bytes32"}],"name":"TaskClaimedWithVoucher","type":"event"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"authorizeAccount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"}],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"dealId","type":"bytes32"},{"internalType":"uint256","name":"taskIndex","type":"uint256"}],"name":"claimBoost","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"drain","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getExpiration","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"dealId","type":"bytes32"}],"name":"getSponsoredAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getType","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getVoucherHub","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"voucherOwner","type":"address"},{"internalType":"address","name":"voucherHub","type":"address"},{"internalType":"uint256","name":"expiration","type":"uint256"},{"internalType":"uint256","name":"voucherTypeId","type":"uint256"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isAccountAuthorized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"}],"name":"isRefundedTask","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrder","name":"appOrder","type":"tuple"},{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"datasetOrder","type":"tuple"},{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"workerpoolOrder","type":"tuple"},{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"requestOrder","type":"tuple"}],"name":"matchOrders","outputs":[{"internalType":"bytes32","name":"dealId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.AppOrder","name":"appOrder","type":"tuple"},{"components":[{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"workerpoolrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.DatasetOrder","name":"datasetOrder","type":"tuple"},{"components":[{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolprice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"apprestrict","type":"address"},{"internalType":"address","name":"datasetrestrict","type":"address"},{"internalType":"address","name":"requesterrestrict","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.WorkerpoolOrder","name":"workerpoolOrder","type":"tuple"},{"components":[{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appmaxprice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetmaxprice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolmaxprice","type":"uint256"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"uint256","name":"volume","type":"uint256"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"uint256","name":"category","type":"uint256"},{"internalType":"uint256","name":"trust","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"callback","type":"address"},{"internalType":"string","name":"params","type":"string"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"bytes","name":"sign","type":"bytes"}],"internalType":"struct IexecLibOrders_v5.RequestOrder","name":"requestOrder","type":"tuple"}],"name":"matchOrdersBoost","outputs":[{"internalType":"bytes32","name":"dealId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"expiration","type":"uint256"}],"name":"setExpiration","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"unauthorizeAccount","outputs":[],"stateMutability":"nonpayable","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@iexec/voucher-contracts/VoucherHub.js b/src/common/generated/@iexec/voucher-contracts/VoucherHub.js deleted file mode 100644 index c90dbdd5..00000000 --- a/src/common/generated/@iexec/voucher-contracts/VoucherHub.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const abi = [{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AccessControlBadConfirmation","type":"error"},{"inputs":[{"internalType":"uint48","name":"schedule","type":"uint48"}],"name":"AccessControlEnforcedDefaultAdminDelay","type":"error"},{"inputs":[],"name":"AccessControlEnforcedDefaultAdminRules","type":"error"},{"inputs":[{"internalType":"address","name":"defaultAdmin","type":"address"}],"name":"AccessControlInvalidDefaultAdmin","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"neededRole","type":"bytes32"}],"name":"AccessControlUnauthorizedAccount","type":"error"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"AddressEmptyCode","type":"error"},{"inputs":[{"internalType":"address","name":"implementation","type":"address"}],"name":"ERC1967InvalidImplementation","type":"error"},{"inputs":[],"name":"ERC1967NonPayable","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"allowance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientAllowance","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC20InvalidApprover","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC20InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC20InvalidSender","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"ERC20InvalidSpender","type":"error"},{"inputs":[],"name":"FailedInnerCall","type":"error"},{"inputs":[],"name":"InvalidInitialization","type":"error"},{"inputs":[],"name":"NotInitializing","type":"error"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"SafeCastOverflowedUintDowncast","type":"error"},{"inputs":[],"name":"UUPSUnauthorizedCallContext","type":"error"},{"inputs":[{"internalType":"bytes32","name":"slot","type":"bytes32"}],"name":"UUPSUnsupportedProxiableUUID","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[],"name":"DefaultAdminDelayChangeCanceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint48","name":"newDelay","type":"uint48"},{"indexed":false,"internalType":"uint48","name":"effectSchedule","type":"uint48"}],"name":"DefaultAdminDelayChangeScheduled","type":"event"},{"anonymous":false,"inputs":[],"name":"DefaultAdminTransferCanceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newAdmin","type":"address"},{"indexed":false,"internalType":"uint48","name":"acceptSchedule","type":"uint48"}],"name":"DefaultAdminTransferScheduled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"asset","type":"address"}],"name":"EligibleAssetAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"asset","type":"address"}],"name":"EligibleAssetRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint64","name":"version","type":"uint64"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"voucher","type":"address"},{"indexed":false,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"voucherType","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"expiration","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"VoucherCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"voucher","type":"address"},{"indexed":false,"internalType":"uint256","name":"sponsoredAmount","type":"uint256"}],"name":"VoucherDebited","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"voucher","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"VoucherDrained","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"voucher","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"VoucherRefunded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"voucher","type":"address"},{"indexed":false,"internalType":"uint256","name":"expiration","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"VoucherToppedUp","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"string","name":"description","type":"string"},{"indexed":false,"internalType":"uint256","name":"duration","type":"uint256"}],"name":"VoucherTypeCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"string","name":"description","type":"string"}],"name":"VoucherTypeDescriptionUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"duration","type":"uint256"}],"name":"VoucherTypeDurationUpdated","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MANAGER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MINTER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"UPGRADER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"UPGRADE_INTERFACE_VERSION","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"acceptDefaultAdminTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"voucherTypeId","type":"uint256"},{"internalType":"address","name":"asset","type":"address"}],"name":"addEligibleAsset","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"beginDefaultAdminTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cancelDefaultAdminTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint48","name":"newDelay","type":"uint48"}],"name":"changeDefaultAdminDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"voucherType","type":"uint256"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"createVoucher","outputs":[{"internalType":"address","name":"voucherAddress","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"description","type":"string"},{"internalType":"uint256","name":"duration","type":"uint256"}],"name":"createVoucherType","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"voucherTypeId","type":"uint256"},{"internalType":"address","name":"app","type":"address"},{"internalType":"uint256","name":"appPrice","type":"uint256"},{"internalType":"address","name":"dataset","type":"address"},{"internalType":"uint256","name":"datasetPrice","type":"uint256"},{"internalType":"address","name":"workerpool","type":"address"},{"internalType":"uint256","name":"workerpoolPrice","type":"uint256"},{"internalType":"uint256","name":"volume","type":"uint256"}],"name":"debitVoucher","outputs":[{"internalType":"uint256","name":"sponsoredAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultAdminDelay","outputs":[{"internalType":"uint48","name":"","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultAdminDelayIncreaseWait","outputs":[{"internalType":"uint48","name":"","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"voucher","type":"address"}],"name":"drainVoucher","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getIexecPoco","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"getVoucher","outputs":[{"internalType":"address","name":"voucherAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getVoucherBeacon","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getVoucherProxyCodeHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getVoucherType","outputs":[{"components":[{"internalType":"string","name":"description","type":"string"},{"internalType":"uint256","name":"duration","type":"uint256"}],"internalType":"struct IVoucherHub.VoucherType","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getVoucherTypeCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"admin","type":"address"},{"internalType":"address","name":"manager","type":"address"},{"internalType":"address","name":"minter","type":"address"},{"internalType":"address","name":"iexecPoco","type":"address"},{"internalType":"address","name":"voucherBeacon","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"voucherTypeId","type":"uint256"},{"internalType":"address","name":"asset","type":"address"}],"name":"isAssetEligibleToMatchOrdersSponsoring","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isVoucher","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingDefaultAdmin","outputs":[{"internalType":"address","name":"newAdmin","type":"address"},{"internalType":"uint48","name":"schedule","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingDefaultAdminDelay","outputs":[{"internalType":"uint48","name":"newDelay","type":"uint48"},{"internalType":"uint48","name":"schedule","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"predictVoucher","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"refundVoucher","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"voucherTypeId","type":"uint256"},{"internalType":"address","name":"asset","type":"address"}],"name":"removeEligibleAsset","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rollbackDefaultAdminDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"voucher","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"topUpVoucher","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"description","type":"string"}],"name":"updateVoucherTypeDescription","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"duration","type":"uint256"}],"name":"updateVoucherTypeDuration","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]; -export default { abi }; \ No newline at end of file diff --git a/src/common/generated/@iexec/voucher-contracts/deployments/bellecour/VoucherHubERC1967Proxy.js b/src/common/generated/@iexec/voucher-contracts/deployments/bellecour/VoucherHubERC1967Proxy.js deleted file mode 100644 index 036c1650..00000000 --- a/src/common/generated/@iexec/voucher-contracts/deployments/bellecour/VoucherHubERC1967Proxy.js +++ /dev/null @@ -1,3 +0,0 @@ -// this file is auto generated do not edit it -export const address = "0x3137B6DF4f36D338b82260eDBB2E7bab034AFEda"; -export default { address }; \ No newline at end of file diff --git a/src/common/generated/sdk/package.js b/src/common/generated/sdk/package.js deleted file mode 100644 index 7a2b0dd8..00000000 --- a/src/common/generated/sdk/package.js +++ /dev/null @@ -1,5 +0,0 @@ -// this file is auto generated do not edit it -export const name = "iexec"; -export const version = "8.16.0"; -export const description = "iExec SDK"; -export default { name, version, description }; \ No newline at end of file From ab3a0cde461f6c16999ecef68290d9977e4853d2 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 10:57:47 +0200 Subject: [PATCH 30/52] ci: enable security-scan --- .github/workflows/pr-test.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 5d20cad4..3d7acbd9 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -68,4 +68,3 @@ jobs: with: image-name: 'iexechub/iexec-sdk' push: false - security-scan: false From 729cc9307804f39c4d731c85c920a638931cc483 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 11:07:37 +0200 Subject: [PATCH 31/52] chore: move to publish-npm-v1.5.0 --- .github/workflows/pr-test.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 3d7acbd9..8aa4c368 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -55,8 +55,7 @@ jobs: SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} npm-dry-run: - # TODO use tagged version - uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/publish-npm.yml@feat/npm-publish-dry-run + uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/publish-npm.yml@publish-npm-v1.5.0 with: install-command: npm ci build-command: npm run build From 371eb79465255fbf803c627f940a21a811b9b528 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 11:15:44 +0200 Subject: [PATCH 32/52] ci: security scan report in comment --- .github/workflows/pr-test.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 8aa4c368..d20fcf4d 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -67,3 +67,6 @@ jobs: with: image-name: 'iexechub/iexec-sdk' push: false + hadolint: true + security-scan: true + security-report: comment From 2702d65cc138a81aa8a59ae30f82d54797a17ca3 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 12:01:23 +0200 Subject: [PATCH 33/52] ci: test security-report sarif --- .github/workflows/pr-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index d20fcf4d..74d34ce7 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -69,4 +69,4 @@ jobs: push: false hadolint: true security-scan: true - security-report: comment + security-report: sarif From 5c533abc0a2be5a91c1baf53854c961d8fb9e614 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 12:13:24 +0200 Subject: [PATCH 34/52] ci: test security-report mode comment --- .github/workflows/pr-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 74d34ce7..d20fcf4d 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -69,4 +69,4 @@ jobs: push: false hadolint: true security-scan: true - security-report: sarif + security-report: comment From b310f48839980e4465bb51ad23250ce35e7d532b Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 12:18:20 +0200 Subject: [PATCH 35/52] ci: set deployment env to blank (not deployed in dry-run) --- .github/workflows/pr-test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index d20fcf4d..fc6c7cfd 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -60,6 +60,7 @@ jobs: install-command: npm ci build-command: npm run build dry-run: true + environment: '' docker-dry-run: # TODO use tagged version From 77eeaa18a17a122f94cfdcad07cc9e98b5c5bc34 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 14:34:18 +0200 Subject: [PATCH 36/52] refactor: add reusable npm --- .github/workflows/pr-test.yml | 5 +---- .github/workflows/reusable-npm.yml | 33 ++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/reusable-npm.yml diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index fc6c7cfd..5f238bf4 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -55,12 +55,9 @@ jobs: SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} npm-dry-run: - uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/publish-npm.yml@publish-npm-v1.5.0 + uses: ./.github/workflows/reusable-npm.yml with: - install-command: npm ci - build-command: npm run build dry-run: true - environment: '' docker-dry-run: # TODO use tagged version diff --git a/.github/workflows/reusable-npm.yml b/.github/workflows/reusable-npm.yml new file mode 100644 index 00000000..7ab7c964 --- /dev/null +++ b/.github/workflows/reusable-npm.yml @@ -0,0 +1,33 @@ +name: npm publish + +on: + workflow_call: + inputs: + dry-run: + description: 'Run in dry-run mode (the package will not be published)' + default: false + type: boolean + version: + description: 'Version to publish (leave empty to use package.json version)' + default: '' + type: string + tag: + description: 'npm publish tag (e.g., latest, nightly)' + default: '' + type: string + secrets: + npm-token: + description: 'NPM auth token (required unless `dry-run: true`)' + required: false + +jobs: + npm-publish: + uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/publish-npm.yml@publish-npm-v1.5.0 + with: + install-command: npm ci + build-command: npm run build + dry-run: ${{ inputs.dry-run }} + tag: ${{ inputs.tag }} + environment: ${{ (inputs.dry-run && '') || inputs.tag }} + secrets: + npm-token: ${{ secrets.npm-token }} From f4feef506fdd2977e8855106d52ac6c7d5ae7deb Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 14:34:42 +0200 Subject: [PATCH 37/52] refactor: rename test step --- .github/workflows/pr-test.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 5f238bf4..1c9b3c50 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -27,7 +27,7 @@ jobs: - name: Lint run: npm run lint - test-node-18: + test: uses: ./.github/workflows/reusable-test.yml with: node-version: '18' @@ -39,13 +39,13 @@ jobs: sonar: runs-on: ubuntu-latest - needs: test-node-18 + needs: test steps: - uses: actions/checkout@v4 - uses: actions/download-artifact@v4 with: - artifact-ids: ${{ needs.test-node-18.outputs.coverage-artifact-id }} + artifact-ids: ${{ needs.test.outputs.coverage-artifact-id }} path: coverage - name: SonarScanner From b44cd692090e19d677b0b2226783831c9f7b9ac6 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 14:49:05 +0200 Subject: [PATCH 38/52] refactor: reusable docker --- .github/workflows/pr-test.yml | 9 ++----- .github/workflows/reusable-docker.yml | 38 +++++++++++++++++++++++++++ 2 files changed, 40 insertions(+), 7 deletions(-) create mode 100644 .github/workflows/reusable-docker.yml diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 1c9b3c50..934ae90a 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -60,11 +60,6 @@ jobs: dry-run: true docker-dry-run: - # TODO use tagged version - uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/docker-build.yml@docker-build-fixes + uses: ./.github/workflows/reusable-docker.yml with: - image-name: 'iexechub/iexec-sdk' - push: false - hadolint: true - security-scan: true - security-report: comment + dry-run: true diff --git a/.github/workflows/reusable-docker.yml b/.github/workflows/reusable-docker.yml new file mode 100644 index 00000000..0eeff618 --- /dev/null +++ b/.github/workflows/reusable-docker.yml @@ -0,0 +1,38 @@ +name: docker publish + +on: + workflow_call: + inputs: + dry-run: + description: 'Run in dry-run mode (the docker image will not be published)' + default: false + type: boolean + tag: + description: 'Tag of Docker Image' + default: 'latest' + type: string + secrets: + docker-username: + description: 'Docker registry username (required unless `dry-run: true`)' + required: false + docker-password: + description: 'Docker registry password or PAT (required unless `dry-run: true`)' + required: false + +jobs: + docker-publish: + # TODO use tagged version + uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/docker-build.yml@docker-build-fixes + with: + image-name: 'iexechub/iexec-sdk' + registry: 'docker.io' + dockerfile: 'Dockerfile' + context: '.' + security-scan: true + security-report: 'sarif' + hadolint: true + push: ${{ !inputs.dry-run }} + image-tag: ${{ inputs.tag }} + secrets: + username: ${{ secrets.docker-username }} + password: ${{ secrets.docker-password }} From 1159ddab80ade3e2df3eb69516ca9eeeca2ea507 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 14:51:01 +0200 Subject: [PATCH 39/52] refactor: yml extensions consistency --- ...t-check-commits.yaml => conventional-commit-check-commits.yml} | 0 ...check-pr-title.yaml => conventional-commit-check-pr-title.yml} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename .github/workflows/{conventional-commit-check-commits.yaml => conventional-commit-check-commits.yml} (100%) rename .github/workflows/{conventional-commit-check-pr-title.yaml => conventional-commit-check-pr-title.yml} (100%) diff --git a/.github/workflows/conventional-commit-check-commits.yaml b/.github/workflows/conventional-commit-check-commits.yml similarity index 100% rename from .github/workflows/conventional-commit-check-commits.yaml rename to .github/workflows/conventional-commit-check-commits.yml diff --git a/.github/workflows/conventional-commit-check-pr-title.yaml b/.github/workflows/conventional-commit-check-pr-title.yml similarity index 100% rename from .github/workflows/conventional-commit-check-pr-title.yaml rename to .github/workflows/conventional-commit-check-pr-title.yml From e6da04bcb4075c3e73e670e62843d7fb7ea62cc6 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 15:22:02 +0200 Subject: [PATCH 40/52] ci: add dispatchable workflow npm-staging --- .github/workflows/npm-staging.yml | 35 ++++++++++++++++++++++++++++++ .github/workflows/reusable-npm.yml | 1 + 2 files changed, 36 insertions(+) create mode 100644 .github/workflows/npm-staging.yml diff --git a/.github/workflows/npm-staging.yml b/.github/workflows/npm-staging.yml new file mode 100644 index 00000000..a165ec12 --- /dev/null +++ b/.github/workflows/npm-staging.yml @@ -0,0 +1,35 @@ +name: npm publish staging +description: Publish a staging version on npm, dist-tag named after the branch name + +on: + workflow_dispatch: + +jobs: + compute-staging-version: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: Set up Node.js + uses: actions/setup-node@v4 + - name: Set publish version + id: set-publish-version + run: | + BRANCH=$(echo "${{ github.ref_name }}" | sed 's|/|-|g') + CURRENT_VERSION=$(npm pkg get version | tr -d '"') + STAGING_VERSION="${CURRENT_VERSION}-${BRANCH}-${GITHUB_SHA::7}" + echo "VERSION=${STAGING_VERSION}" >> $GITHUB_OUTPUT + echo "TAG=${BRANCH}" >> $GITHUB_OUTPUT + outputs: + version: ${{ steps.set-publish-version.outputs.VERSION }} + tag: ${{ steps.set-publish-version.outputs.TAG }} + + npm-dry-run: + uses: ./.github/workflows/reusable-npm.yml + needs: compute-staging-version + with: + dry-run: true # TODO set to false + version: ${{ needs.compute-staging-version.outputs.version }} + tag: ${{ needs.compute-staging-version.outputs.tag }} + secrets: + npm-token: ${{ secrets.NPM_TOKEN }} diff --git a/.github/workflows/reusable-npm.yml b/.github/workflows/reusable-npm.yml index 7ab7c964..e53162c0 100644 --- a/.github/workflows/reusable-npm.yml +++ b/.github/workflows/reusable-npm.yml @@ -29,5 +29,6 @@ jobs: dry-run: ${{ inputs.dry-run }} tag: ${{ inputs.tag }} environment: ${{ (inputs.dry-run && '') || inputs.tag }} + provenance: ${{ !inputs.dry-run }} secrets: npm-token: ${{ secrets.npm-token }} From 81914b701a6df769138b2f8a341890e9a86a4ddd Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 15:34:47 +0200 Subject: [PATCH 41/52] ci: add dispatchable workflow docker-staging --- .github/workflows/docker-staging.yml | 19 +++++++++++ .github/workflows/npm-staging.yml | 22 ++----------- .../reusable-compute-staging-version.yml | 32 +++++++++++++++++++ 3 files changed, 54 insertions(+), 19 deletions(-) create mode 100644 .github/workflows/docker-staging.yml create mode 100644 .github/workflows/reusable-compute-staging-version.yml diff --git a/.github/workflows/docker-staging.yml b/.github/workflows/docker-staging.yml new file mode 100644 index 00000000..e27a5ad9 --- /dev/null +++ b/.github/workflows/docker-staging.yml @@ -0,0 +1,19 @@ +name: docker publish staging +description: Publish a staging version on docker registry + +on: + workflow_dispatch: + +jobs: + compute-staging-version: + uses: ./.github/workflows/reusable-compute-staging-version.yml + + docker-publish: + uses: ./.github/workflows/reusable-docker.yml + needs: compute-staging-version + with: + dry-run: true # TODO set to false + tag: ${{ needs.compute-staging-version.outputs.version }} + secrets: + docker-username: ${{ secrets.DOCKERHUB_USERNAME }} # TODO ensure secret is set + docker-password: ${{ secrets.DOCKERHUB_TOKEN }} # TODO ensure secret is set diff --git a/.github/workflows/npm-staging.yml b/.github/workflows/npm-staging.yml index a165ec12..7b572888 100644 --- a/.github/workflows/npm-staging.yml +++ b/.github/workflows/npm-staging.yml @@ -6,30 +6,14 @@ on: jobs: compute-staging-version: - runs-on: ubuntu-latest - steps: - - name: Checkout code - uses: actions/checkout@v4 - - name: Set up Node.js - uses: actions/setup-node@v4 - - name: Set publish version - id: set-publish-version - run: | - BRANCH=$(echo "${{ github.ref_name }}" | sed 's|/|-|g') - CURRENT_VERSION=$(npm pkg get version | tr -d '"') - STAGING_VERSION="${CURRENT_VERSION}-${BRANCH}-${GITHUB_SHA::7}" - echo "VERSION=${STAGING_VERSION}" >> $GITHUB_OUTPUT - echo "TAG=${BRANCH}" >> $GITHUB_OUTPUT - outputs: - version: ${{ steps.set-publish-version.outputs.VERSION }} - tag: ${{ steps.set-publish-version.outputs.TAG }} + uses: ./.github/workflows/reusable-compute-staging-version.yml - npm-dry-run: + npm-publish: uses: ./.github/workflows/reusable-npm.yml needs: compute-staging-version with: dry-run: true # TODO set to false version: ${{ needs.compute-staging-version.outputs.version }} - tag: ${{ needs.compute-staging-version.outputs.tag }} + tag: ${{ needs.compute-staging-version.outputs.dist-tag }} secrets: npm-token: ${{ secrets.NPM_TOKEN }} diff --git a/.github/workflows/reusable-compute-staging-version.yml b/.github/workflows/reusable-compute-staging-version.yml new file mode 100644 index 00000000..99a823e4 --- /dev/null +++ b/.github/workflows/reusable-compute-staging-version.yml @@ -0,0 +1,32 @@ +name: Test SDK + +on: + workflow_call: + outputs: + version: + description: 'Coverage artifact id (if `upload-coverage: true`)' + value: ${{ jobs.compute-staging-version.outputs.version }} + dist-tag: + value: ${{ jobs.compute-staging-version.outputs.dist-tag }} + +jobs: + compute-staging-version: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: Set up Node.js + uses: actions/setup-node@v4 + - name: Set publish version + id: set-publish-version + run: | + BRANCH=$(echo "${{ github.ref_name }}" | sed 's|/|-|g') + CURRENT_VERSION=$(npm pkg get version | tr -d '"') + STAGING_VERSION="${CURRENT_VERSION}-${BRANCH}-${GITHUB_SHA::7}" + echo "VERSION=${STAGING_VERSION}" >> $GITHUB_OUTPUT + echo "DIST_TAG=${BRANCH}" >> $GITHUB_OUTPUT + echo "VERSION=${STAGING_VERSION}" + echo "DIST_TAG=${BRANCH}" + outputs: + version: ${{ steps.set-publish-version.outputs.VERSION }} + dist-tag: ${{ steps.set-publish-version.outputs.DIST_TAG }} From 179d35a1ded4d63f6aebfa36be172482712e4b2a Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 15:37:03 +0200 Subject: [PATCH 42/52] chore: clean migrated pipeline --- .drone.yml | 53 ----------------------------------------------------- 1 file changed, 53 deletions(-) diff --git a/.drone.yml b/.drone.yml index db614c75..1e1ee8c6 100644 --- a/.drone.yml +++ b/.drone.yml @@ -1,56 +1,3 @@ ---- -kind: pipeline -type: docker -name: publish dry-run - -trigger: - event: - exclude: - - promote - -steps: - - name: install - image: node:18 - pull: always - commands: - - node -v - - npm -v - - npm ci - - - name: build - image: node:18 - commands: - - npm run build - depends_on: - - install - - - name: format - image: node:18.19 - commands: - - npm run check-format - depends_on: - - build - - - name: lint - image: node:18.19 - commands: - - npm run lint - depends_on: - - build - - - name: npm publish dry-run - image: node:18 - commands: - - npm publish --dry-run - - - name: docker publish dry-run - image: plugins/docker - pull: always - settings: - repo: iexechub/iexec-sdk - dockerfile: Dockerfile - dry_run: true - --- kind: pipeline type: docker From e87a7c9f53568cdeac8ed2378a6739c22efeea3d Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 16:03:46 +0200 Subject: [PATCH 43/52] fix: coverage artifact not found sonar --- .github/workflows/pr-test.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 934ae90a..0935b61c 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -46,7 +46,6 @@ jobs: - uses: actions/download-artifact@v4 with: artifact-ids: ${{ needs.test.outputs.coverage-artifact-id }} - path: coverage - name: SonarScanner uses: SonarSource/sonarqube-scan-action@v5.1.0 From 9dd2343bceba50fda3900fe0c7cd592dce8146e6 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 16:15:23 +0200 Subject: [PATCH 44/52] docs: add workflow descriptions --- .github/workflows/conventional-commit-check-commits.yml | 1 + .github/workflows/conventional-commit-check-pr-title.yml | 1 + .github/workflows/npm-staging.yml | 2 +- .github/workflows/pr-test.yml | 1 + .github/workflows/release-please.yml | 5 +++-- .github/workflows/reusable-compute-staging-version.yml | 3 ++- .github/workflows/reusable-docker.yml | 1 + .github/workflows/reusable-npm.yml | 1 + .github/workflows/reusable-test.yml | 3 ++- 9 files changed, 13 insertions(+), 5 deletions(-) diff --git a/.github/workflows/conventional-commit-check-commits.yml b/.github/workflows/conventional-commit-check-commits.yml index ffdeea7e..11b58acc 100644 --- a/.github/workflows/conventional-commit-check-commits.yml +++ b/.github/workflows/conventional-commit-check-commits.yml @@ -1,4 +1,5 @@ name: Conventional Commit Check Commits +description: checks every commit in the PR respects the conventional commit on: [pull_request] diff --git a/.github/workflows/conventional-commit-check-pr-title.yml b/.github/workflows/conventional-commit-check-pr-title.yml index 2b8918ae..28a18f2a 100644 --- a/.github/workflows/conventional-commit-check-pr-title.yml +++ b/.github/workflows/conventional-commit-check-pr-title.yml @@ -1,4 +1,5 @@ name: Conventional Commit Check PR Title +description: checks the PR title respects the conventional commit on: pull_request_target: diff --git a/.github/workflows/npm-staging.yml b/.github/workflows/npm-staging.yml index 7b572888..c4f5bedc 100644 --- a/.github/workflows/npm-staging.yml +++ b/.github/workflows/npm-staging.yml @@ -1,5 +1,5 @@ name: npm publish staging -description: Publish a staging version on npm, dist-tag named after the branch name +description: Publish a staging version on npm on: workflow_dispatch: diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 0935b61c..7e76ee42 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -1,4 +1,5 @@ name: PR test +description: tests the PR on: [pull_request] diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml index f853cc30..0b4cf5a1 100644 --- a/.github/workflows/release-please.yml +++ b/.github/workflows/release-please.yml @@ -1,3 +1,6 @@ +name: release-please +description: triggers release-please to open the next release PR + on: push: branches: @@ -8,8 +11,6 @@ permissions: issues: write pull-requests: write -name: release-please - jobs: release-please: uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/release-please.yml@release-please-v2.1.0 diff --git a/.github/workflows/reusable-compute-staging-version.yml b/.github/workflows/reusable-compute-staging-version.yml index 99a823e4..331a8292 100644 --- a/.github/workflows/reusable-compute-staging-version.yml +++ b/.github/workflows/reusable-compute-staging-version.yml @@ -1,4 +1,5 @@ -name: Test SDK +name: Compute staging version +description: compute a staging version from the current version, branch name and commit on: workflow_call: diff --git a/.github/workflows/reusable-docker.yml b/.github/workflows/reusable-docker.yml index 0eeff618..7d29b9e0 100644 --- a/.github/workflows/reusable-docker.yml +++ b/.github/workflows/reusable-docker.yml @@ -1,4 +1,5 @@ name: docker publish +description: reusable docker workflow for this project on: workflow_call: diff --git a/.github/workflows/reusable-npm.yml b/.github/workflows/reusable-npm.yml index e53162c0..6009ea28 100644 --- a/.github/workflows/reusable-npm.yml +++ b/.github/workflows/reusable-npm.yml @@ -1,4 +1,5 @@ name: npm publish +description: reusable npm workflow for this project on: workflow_call: diff --git a/.github/workflows/reusable-test.yml b/.github/workflows/reusable-test.yml index 249b5131..a1a76c9f 100644 --- a/.github/workflows/reusable-test.yml +++ b/.github/workflows/reusable-test.yml @@ -1,4 +1,5 @@ -name: Test SDK +name: test SDK +description: reusable test workflow for this project on: workflow_call: From 8ab523628f655d92ec54752a6f02cb53c5857f48 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 16:20:21 +0200 Subject: [PATCH 45/52] fix: forward npm version --- .github/workflows/reusable-npm.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/reusable-npm.yml b/.github/workflows/reusable-npm.yml index 6009ea28..f36a54e4 100644 --- a/.github/workflows/reusable-npm.yml +++ b/.github/workflows/reusable-npm.yml @@ -29,6 +29,7 @@ jobs: build-command: npm run build dry-run: ${{ inputs.dry-run }} tag: ${{ inputs.tag }} + version: ${{ inputs.version }} environment: ${{ (inputs.dry-run && '') || inputs.tag }} provenance: ${{ !inputs.dry-run }} secrets: From b0f1743c3be07fd1c7c4430c93461d2d47a9795d Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 16:31:55 +0200 Subject: [PATCH 46/52] fix: coverage artifact name --- .github/workflows/reusable-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/reusable-test.yml b/.github/workflows/reusable-test.yml index a1a76c9f..66996dd6 100644 --- a/.github/workflows/reusable-test.yml +++ b/.github/workflows/reusable-test.yml @@ -66,6 +66,6 @@ jobs: if: ${{ inputs.upload-coverage }} uses: actions/upload-artifact@v4 with: - name: ${{ github.sha }}-${{github.run_id}}-coverage + name: coverage path: coverage overwrite: true From d2c8a12a5be62dbd5ddbd54b6e5bc03c67283eac Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 16:33:34 +0200 Subject: [PATCH 47/52] fix: run codegen for sonar --- .github/workflows/pr-test.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 7e76ee42..2eed8428 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -44,6 +44,15 @@ jobs: steps: - uses: actions/checkout@v4 + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '18' + cache: 'npm' + + - name: Install dependencies + run: npm ci && npm run codegen + - uses: actions/download-artifact@v4 with: artifact-ids: ${{ needs.test.outputs.coverage-artifact-id }} From b051a1a9cf47cd9c6f1501c60d38fccb3639fd27 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Wed, 2 Jul 2025 16:41:33 +0200 Subject: [PATCH 48/52] chore: use tagged version of docker-build --- .github/workflows/reusable-docker.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/reusable-docker.yml b/.github/workflows/reusable-docker.yml index 7d29b9e0..df1e9147 100644 --- a/.github/workflows/reusable-docker.yml +++ b/.github/workflows/reusable-docker.yml @@ -22,8 +22,7 @@ on: jobs: docker-publish: - # TODO use tagged version - uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/docker-build.yml@docker-build-fixes + uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/docker-build.yml@docker-build-v2.3.0 with: image-name: 'iexechub/iexec-sdk' registry: 'docker.io' From c3d8578256ce26b338a90e75a8403171cea74b3f Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Thu, 3 Jul 2025 09:20:19 +0200 Subject: [PATCH 49/52] refactor: get commit sha from github context --- .github/workflows/reusable-compute-staging-version.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/reusable-compute-staging-version.yml b/.github/workflows/reusable-compute-staging-version.yml index 331a8292..172d6dfc 100644 --- a/.github/workflows/reusable-compute-staging-version.yml +++ b/.github/workflows/reusable-compute-staging-version.yml @@ -22,8 +22,9 @@ jobs: id: set-publish-version run: | BRANCH=$(echo "${{ github.ref_name }}" | sed 's|/|-|g') + COMMIT_SHA="${{ github.sha }}" CURRENT_VERSION=$(npm pkg get version | tr -d '"') - STAGING_VERSION="${CURRENT_VERSION}-${BRANCH}-${GITHUB_SHA::7}" + STAGING_VERSION="${CURRENT_VERSION}-${BRANCH}-${COMMIT_SHA::7}" echo "VERSION=${STAGING_VERSION}" >> $GITHUB_OUTPUT echo "DIST_TAG=${BRANCH}" >> $GITHUB_OUTPUT echo "VERSION=${STAGING_VERSION}" From b1967a2757c889e058ece34ad396d6f4a5c5cd6d Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Thu, 3 Jul 2025 09:22:03 +0200 Subject: [PATCH 50/52] refactor: use tee instead of duplicating echo --- .github/workflows/reusable-compute-staging-version.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/reusable-compute-staging-version.yml b/.github/workflows/reusable-compute-staging-version.yml index 172d6dfc..4d80dd8d 100644 --- a/.github/workflows/reusable-compute-staging-version.yml +++ b/.github/workflows/reusable-compute-staging-version.yml @@ -25,10 +25,8 @@ jobs: COMMIT_SHA="${{ github.sha }}" CURRENT_VERSION=$(npm pkg get version | tr -d '"') STAGING_VERSION="${CURRENT_VERSION}-${BRANCH}-${COMMIT_SHA::7}" - echo "VERSION=${STAGING_VERSION}" >> $GITHUB_OUTPUT - echo "DIST_TAG=${BRANCH}" >> $GITHUB_OUTPUT - echo "VERSION=${STAGING_VERSION}" - echo "DIST_TAG=${BRANCH}" + echo "VERSION=${STAGING_VERSION}" | tee -a $GITHUB_OUTPUT + echo "DIST_TAG=${BRANCH}" | tee -a $GITHUB_OUTPUT outputs: version: ${{ steps.set-publish-version.outputs.VERSION }} dist-tag: ${{ steps.set-publish-version.outputs.DIST_TAG }} From 31871fbc1b7565d19ebd15ee2e5620979d1df48a Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Thu, 3 Jul 2025 10:26:19 +0200 Subject: [PATCH 51/52] feat: run cross version tests on release PR --- .github/workflows/pr-test.yml | 20 ++++++++++++++++--- .../reusable-compute-staging-version.yml | 2 ++ .github/workflows/reusable-test.yml | 4 ++-- 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 2eed8428..559745b1 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -13,10 +13,10 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Use Node.js 18 + - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '18' + node-version: '20' cache: 'npm' - name: Install dependencies @@ -38,6 +38,20 @@ jobs: etherscan-api-key: ${{ secrets.ETHERSCAN_API_KEY }} alchemy-api-key: ${{ secrets.ALCHEMY_API_KEY }} + test-node-versions: + uses: ./.github/workflows/reusable-test.yml + # for release PR run tests on all supported node versions + if: ${{ contains('release-please--', github.ref_name ) }} + strategy: + matrix: + node-version: ['20', '22', '24'] + with: + node-version: + secrets: + infura-project-id: ${{ secrets.INFURA_PROJECT_ID }} + etherscan-api-key: ${{ secrets.ETHERSCAN_API_KEY }} + alchemy-api-key: ${{ secrets.ALCHEMY_API_KEY }} + sonar: runs-on: ubuntu-latest needs: test @@ -47,7 +61,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '18' + node-version: '20' cache: 'npm' - name: Install dependencies diff --git a/.github/workflows/reusable-compute-staging-version.yml b/.github/workflows/reusable-compute-staging-version.yml index 4d80dd8d..d21bb1e3 100644 --- a/.github/workflows/reusable-compute-staging-version.yml +++ b/.github/workflows/reusable-compute-staging-version.yml @@ -18,6 +18,8 @@ jobs: uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v4 + with: + node-version: '20' - name: Set publish version id: set-publish-version run: | diff --git a/.github/workflows/reusable-test.yml b/.github/workflows/reusable-test.yml index 66996dd6..078e3c5a 100644 --- a/.github/workflows/reusable-test.yml +++ b/.github/workflows/reusable-test.yml @@ -6,7 +6,7 @@ on: inputs: node-version: description: 'Node version to use as specified in actions/setup-node@v4' - default: '18' + default: '20' type: string upload-coverage: description: 'Upload coverage data for later reuse' @@ -39,7 +39,7 @@ jobs: cache: 'npm' - name: Install dependencies - run: npm ci + run: npm ci && npm run - name: Build run: npm run build From b7cbc8a529204a294350c72e290a42df7c11555a Mon Sep 17 00:00:00 2001 From: Pierre Jeanjacquot <26487010+PierreJeanjacquot@users.noreply.github.com> Date: Thu, 3 Jul 2025 11:10:07 +0200 Subject: [PATCH 52/52] fix: remove bad description --- .github/workflows/reusable-compute-staging-version.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/reusable-compute-staging-version.yml b/.github/workflows/reusable-compute-staging-version.yml index d21bb1e3..c1d1848f 100644 --- a/.github/workflows/reusable-compute-staging-version.yml +++ b/.github/workflows/reusable-compute-staging-version.yml @@ -5,7 +5,6 @@ on: workflow_call: outputs: version: - description: 'Coverage artifact id (if `upload-coverage: true`)' value: ${{ jobs.compute-staging-version.outputs.version }} dist-tag: value: ${{ jobs.compute-staging-version.outputs.dist-tag }}