Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
111 changes: 0 additions & 111 deletions .github/workflows/dapp-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,7 @@ on:
required: true
type: choice
options:
# dev environments
- bellecour-dev
- arbitrum-sepolia-dev
# prod environments (requires a tag starting with dapp-v)
- bellecour-prod
- arbitrum-sepolia-prod
- arbitrum-prod

Expand All @@ -24,10 +20,6 @@ jobs:
steps:
- name: Checkout code
uses: actions/checkout@v4
# ref should be a tag beginning with dapp-v if not exit error
# use unique clean-tag: <tag>-<timestamp>
# else
# use rolling clean-tag: dev
- name: Check and extract tag
id: tag
run: |
Expand Down Expand Up @@ -71,36 +63,7 @@ jobs:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PAT }}

sconify:
if: startsWith(github.event.inputs.environment, 'bellecour-')
uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/sconify.yml@sconify-v2.0.0
needs: [docker-publish, extract-tag]
with:
image-name: 'iexechub/web3telegram-dapp'
image-tag: ${{ needs.extract-tag.outputs.clean_tag }}
sconify-debug: false
sconify-prod: true
docker-registry: docker.io
sconify-version: ${{ vars.SCONIFY_VERSION }}
binary: /usr/local/bin/node
command: node
host-path: |
/etc/hosts
/etc/resolv.conf
binary-fs: true
fs-dir: /app
heap: 1G
dlopen: 1
mprotect: 0
secrets:
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_PAT }}
scontain-username: ${{ secrets.SCONTAIN_REGISTRY_USERNAME }}
scontain-password: ${{ secrets.SCONTAIN_REGISTRY_PAT }}
scone-signing-key: ${{ secrets.SCONIFY_SIGNING_PRIVATE_KEY }}

deploy-tdx-dapp:
if: startsWith(github.event.inputs.environment, 'arbitrum-')
needs: [extract-tag, docker-publish]
runs-on: ubuntu-latest
environment: ${{ inputs.environment }}
Expand Down Expand Up @@ -161,77 +124,3 @@ jobs:
cd node_modules/whitelist-smart-contract
export ADDRESS_TO_ADD=$(cat ../../deployment-dapp/.app-address)
npm run addResourceToWhitelist -- --network ${{ vars.WHITELIST_NETWORK_NAME }}

deploy-scone-dapp:
if: startsWith(github.event.inputs.environment, 'bellecour-')
needs: [extract-tag, sconify]
runs-on: ubuntu-latest
environment: ${{ inputs.environment }}
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'

- name: Install dependencies
run: |
npm ci
cd node_modules/whitelist-smart-contract
npm install --save-dev ts-node
cd ../../deployment-dapp
npm ci

- name: Deploy SCONE dapp contract
env:
WALLET_PRIVATE_KEY: ${{ secrets.WEB3TELEGRAM_APP_OWNER_PRIVATEKEY }}
DOCKER_IMAGE_TAG: ${{ needs.sconify.outputs.prod-image-tag }}
CHECKSUM: ${{ needs.sconify.outputs.prod-checksum }}
FINGERPRINT: ${{ needs.sconify.outputs.prod-mrenclave }}
RPC_URL: ${{ secrets.RPC_URL }}
SCONIFY_VERSION: ${{ vars.SCONIFY_VERSION }}
run: |
cd deployment-dapp
npm run deploy-dapp

- name: Push dapp secret
env:
WALLET_PRIVATE_KEY: ${{ secrets.WEB3TELEGRAM_APP_OWNER_PRIVATEKEY }}
TELEGRAM_BOT_TOKEN: ${{ secrets.TELEGRAM_BOT_TOKEN }}
RPC_URL: ${{ secrets.RPC_URL }}
run: |
cd deployment-dapp
npm run push-dapp-secret

- name: Publish free sell order
env:
WALLET_PRIVATE_KEY: ${{ secrets.WEB3TELEGRAM_APP_OWNER_PRIVATEKEY }}
PRICE: ${{ vars.SELL_ORDER_PRICE }}
VOLUME: ${{ vars.SELL_ORDER_VOLUME }}
RPC_URL: ${{ secrets.RPC_URL }}
TEE_FRAMEWORK: ${{ vars.TEE_FRAMEWORK }}
run: |
cd deployment-dapp
npm run publish-sell-order

- name: Add resource to whitelist
env:
CONTRACT_ADDRESS: ${{ vars.WEB3TELEGRAM_WHITELIST_CONTRACT_ADDRESS }}
PRIVATE_KEY: ${{ secrets.WEB3TELEGRAM_APP_OWNER_PRIVATEKEY }}
RPC_URL: ${{ secrets.RPC_URL }}
run: |
cd node_modules/whitelist-smart-contract
export ADDRESS_TO_ADD=$(cat ../../deployment-dapp/.app-address)
npm run addResourceToWhitelist -- --network ${{ vars.WHITELIST_NETWORK_NAME }}

- name: Configure ENS
if: ${{ vars.DAPP_ENS_NAME }}
env:
WALLET_PRIVATE_KEY: ${{ secrets.WEB3TELEGRAM_APP_OWNER_PRIVATEKEY }}
DAPP_ENS_NAME: ${{ vars.DAPP_ENS_NAME }}
run: |
cd deployment-dapp
npm run configure-ens
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ import { IExecWeb3telegram, getWeb3Provider } from '@iexec/web3telegram';

const { PRIVATE_KEY } = process.env;

const web3Provider = getWeb3Provider(PRIVATE_KEY);
const web3Provider = getWeb3Provider(PRIVATE_KEY, 421614);
const web3telegram = new IExecWeb3telegram(web3Provider);
```

Expand Down
8 changes: 4 additions & 4 deletions dapp/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion dapp/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
"eslint-config-prettier": "^9.0.0",
"eslint-plugin-import": "^2.28.1",
"eslint-plugin-sonarjs": "^0.21.0",
"iexec": "^8.24.0",
"iexec": "^9.0.0",
"jest": "^29.7.0",
"prettier": "^2.8.8"
}
Expand Down
2 changes: 1 addition & 1 deletion dapp/tests/e2e/app.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ describe('sendTelegram', () => {
process.env.IEXEC_DATASET_FILENAME = 'data-chatId.zip';
process.env.WEB3TELEGRAM_IPFS_GATEWAY =
process.env.WEB3TELEGRAM_IPFS_GATEWAY ||
'https://ipfs-gateway.v8-bellecour.iex.ec';
'https://ipfs-gateway.arbitrum-sepolia-testnet.iex.ec';
// developer secret setup
process.env.IEXEC_APP_DEVELOPER_SECRET = JSON.stringify({
TELEGRAM_BOT_TOKEN: process.env.TELEGRAM_BOT_TOKEN,
Expand Down
5 changes: 3 additions & 2 deletions dapp/tests/unit/decryptContent.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,13 @@ import {
resolveIpfsGatewayUrl,
} from '../../src/decryptContent';

const TEST_IPFS_GATEWAY = 'https://ipfs-gateway.v8-bellecour.iex.ec';
const TEST_IPFS_GATEWAY =
'https://ipfs-gateway.arbitrum-sepolia-testnet.iex.ec';

describe('decryptContent', () => {
it('should decrypt message correctly', async () => {
const iexec = new IExec({
ethProvider: 'bellecour',
ethProvider: 'arbitrum-sepolia-testnet',
});

const encryptionKey = iexec.dataset.generateEncryptionKey();
Expand Down
Loading
Loading