Skip to content

Merge pull request #1427 from edenia/dev #89

Merge pull request #1427 from edenia/dev

Merge pull request #1427 from edenia/dev #89

Workflow file for this run

name: Build images for mainnet environment
on:
push:
tags:
- mainnet-v*
jobs:
create-mainnet-image:
runs-on: ubuntu-latest
environment: mainnet
steps:
- name: Checkout Repo
uses: actions/checkout@v4
- name: Log in to GitHub Container Registry
uses: docker/[email protected]
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build new images and push
run: |
make \
build-docker-images \
push-docker-images
env:
DOCKER_USERNAME: ${{ secrets.DOCKER_HUB_USER }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
# webapp
PORT: '80'
REACT_APP_TITLE: 'EOS Network Monitor'
REACT_APP_VERSION: ${{ github.ref }}
REACT_APP_DEFAULT_PRODUCER_LOGO: 'https://antelope.tools/images/eos.png'
REACT_APP_FOOTER_LINKS: '[{"text":"EOS Community Website","src":"https://eoscommunity.org/"},{"text":"Block Explorer","src":"https://bloks.io"},{"text":"EOS Developer Docs","src":"https://guide.eoscostarica.io"},{"text": "EOS Network Monitor","src": "https://antelope.tools"}]'
REACT_APP_EOS_RATE_LINK: 'https://eosrate.io'
REACT_APP_USE_REWARDS: 'true'
REACT_APP_USE_VOTES: 'true'
REACT_APP_HASURA_URL: 'https://graphql-eos.antelope.tools/v1/graphql'
REACT_APP_EOS_API_HOSTS: '[\"api.main.alohaeos.com\",\"eos.eosusa.io\",\"eos.api.eosnation.io\",\"eos.greymass.com\",\"eos.eosphere.io\",\"api.eosrio.io\"]'
REACT_APP_EOS_API_PORT: '443'
REACT_APP_EOS_API_PROTOCOL: 'https'
REACT_APP_EOS_CHAIN_ID: 'aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e906'
REACT_APP_EOS_USE_BP_JSON_ON_CHAIN: 'false'
REACT_APP_EOS_BP_JSON_ON_CHAIN_CONTRACT: ${{ secrets.REACT_APP_EOS_BP_JSON_ON_CHAIN_CONTRACT }}
REACT_APP_EOS_BP_JSON_ON_CHAIN_TABLE: ${{ secrets.REACT_APP_EOS_BP_JSON_ON_CHAIN_TABLE }}
REACT_APP_EOS_BP_JSON_ON_CHAIN_SCOPE: ${{ secrets.REACT_APP_EOS_BP_JSON_ON_CHAIN_SCOPE }}
REACT_APP_EOS_API_NETWORK_NAME: 'mainnet'
REACT_APP_EOS_API_NETWORK_LABEL: 'EOS Mainnet'
REACT_APP_SYNC_TOLERANCE_INTERVAL: 180000
REACT_APP_EOS_API_NETWORK_LOGO: 'https://antelope.tools/images/eos.png'
REACT_APP_TOKEN_SYMBOL: 'EOS'
REACT_APP_NETWORK_URL: '[{"label":"EOS","value":"https://eos.antelope.tools","mainnet":true,"icon":"eos","order":1},{"label":"FIO","value":"https://fio.antelope.tools","mainnet":true,"icon":"fio","order":2},{"label":"Libre","value":"https://libre.antelope.tools","mainnet":true,"icon":"libre","order":3},{"label":"Telos","value":"https://telos.antelope.tools","mainnet":true,"icon":"telos","order":4},{"label":"WAX","value":"https://wax.antelope.tools","mainnet":true,"icon":"wax","order":5},{"label":"XPR Network","value":"https://xpr.antelope.tools","mainnet":true,"icon":"xpr","order":6},{"label":"Jungle4 Testnet","value":"https://jungle.antelope.tools","mainnet":false,"icon":"jungle","order":1},{"label":"FIO Testnet","value":"https://fio-testnet.antelope.tools","mainnet":false,"icon":"fio","order":2},{"label":"Libre Testnet","value":"https://libre-testnet.antelope.tools","mainnet":false,"icon":"libre","order":3},{"label":"Telos Testnet","value":"https://telos-testnet.antelope.tools","mainnet":false,"icon":"telos","order":4},{"label":"WAX Testnet","value":"https://wax-testnet.antelope.tools","mainnet":false,"icon":"wax","order":5},{"label":"XPR Testnet","value":"https://xpr-testnet.antelope.tools","mainnet":false,"icon":"xpr","order":6}]'
REACT_APP_DISABLED_MENU_ITEMS: '["/missed-blocks", "/cpu-benchmark","/block-distribution","/stress-test"]'
REACT_APP_BLOCK_EXPLORER_URL: '{"url": "https://bloks.io", "tx": "/transaction/(transaction)", "account": {"url":"/account/","abi":"?loadContract=true&tab=ABI","actions":"?loadContract=true&tab=Actions"}}'
REACT_APP_STATE_HISTORY_ENABLED: 'false'
REACT_APP_GOOGLE_ANALITIC_PAGE_ID: 'G-E6Y0EC9FT8'
REACT_APP_PUBLIC_RE_CAPTCHA_KEY: ${{ secrets.REACT_APP_PUBLIC_RE_CAPTCHA_KEY }}
REACT_APP_EVM_ENDPOINT: 'https://api.evm.eosnetwork.com'
REACT_APP_EVM_BLOCK_EXPLORER_URL: 'https://explorer.evm.eosnetwork.com/block/(block)/transactions'
REACT_APP_EVM_ENDPOINTS: '["https://api.evm.eosnetwork.com"]'
- name: Build and deploy kubernetes files
id: build_kubernetes_files
run: |
make \
build-kubernetes \
build-kubernetes-evm
env:
# general
NAMESPACE: mainnet-dashboard
INGRESS_HOST: eos.antelope.tools
INGRESS_GRAPHQL_HOST: graphql-eos.antelope.tools
# webapp
REACT_APP_EOS_API_NETWORK_NAME: 'mainnet'
# postgres
POSTGRES_USER: ${{ secrets.POSTGRES_USER }}
POSTGRES_PASSWORD: ${{ secrets.POSTGRES_PASSWORD }}
POSTGRES_DB: ${{ secrets.POSTGRES_DB }}
POSTGRES_DATA: ${{ secrets.POSTGRES_DATA }}
# hapi
HAPI_EOS_API_ENDPOINTS: '["https://eos.eosusa.io","https://api.main.alohaeos.com","https://eos.api.eosnation.io","https://eos.greymass.com","https://eos.eosphere.io","https://api.eosrio.io"]'
HAPI_EOS_API_CHAIN_ID: 'aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e906'
HAPI_EOS_BASE_ACCOUNT: ${{ secrets.HAPI_EOS_BASE_ACCOUNT }}
HAPI_EOS_BASE_ACCOUNT_PASSWORD: ${{ secrets.HAPI_EOS_BASE_ACCOUNT_PASSWORD }}
HAPI_EOS_WALLET_URL: http://dashboard-wallet:8888
HAPI_EOS_BP_JSON_ON_CHAIN: 'false'
HAPI_EOS_BP_JSON_ON_CHAIN_CONTRACT: ''
HAPI_EOS_BP_JSON_ON_CHAIN_TABLE: ''
HAPI_EOS_BP_JSON_ON_CHAIN_SCOPE: ''
HAPI_HASURA_URL: 'http://dashboard-hasura:8080/v1/graphql'
HAPI_HASURA_ADMIN_SECRET: ${{ secrets.HAPI_HASURA_ADMIN_SECRET }}
HAPI_SERVER_PORT: '9090'
HAPI_SERVER_ADDRESS: '0.0.0.0'
HAPI_DATABASE_URL: ${{ secrets.HAPI_DATABASE_URL }}
HAPI_SYNC_PRODUCERS_INTERVAL: '14400'
HAPI_SYNC_PRODUCER_INFO_INTERVAL: '1'
HAPI_SYNC_PRODUCER_CPU_INTERVAL: '6'
HAPI_SYNC_SCHEDULE_HISTORY_INTERVAL: 86400
HAPI_EOS_EXCHANGE_RATE_API: https://api.coingecko.com/api/v3/simple/price?ids=eos&vs_currencies=usd
HAPI_COINGECKO_API_TOKEN_ID: eos
HAPI_REWARDS_TOKEN: EOS
HAPI_RE_CAPTCHA_PROJECT_ID: ${{ secrets.HAPI_RE_CAPTCHA_PROJECT_ID }}
HAPI_PUBLIC_RE_CAPTCHA_KEY: ${{ secrets.HAPI_PUBLIC_RE_CAPTCHA_KEY }}
HAPI_EOSRATE_GET_STATS_URL: ${{ secrets.HAPI_EOSRATE_GET_STATS_URL }}
HAPI_EOSRATE_GET_STATS_USER: ${{ secrets.HAPI_EOSRATE_GET_STATS_USER }}
HAPI_EOSRATE_GET_STATS_PASSWORD: ${{ secrets.HAPI_EOSRATE_GET_STATS_PASSWORD }}
# hapi-evm
HAPI_EVM_SERVER_PORT: '9090'
HAPI_EVM_SERVER_ADDRESS: '0.0.0.0'
HAPI_EVM_HASURA_URL: 'http://dashboard-hasura:8080/v1/graphql'
HAPI_EVM_HASURA_ADMIN_SECRET: ${{ secrets.HAPI_EVM_HASURA_ADMIN_SECRET }}
HAPI_EVM_DATABASE_URL: ${{ secrets.HAPI_EVM_DATABASE_URL }}
HAPI_EVM_ENDPOINT: 'https://api.evm.eosnetwork.com'
HAPI_EVM_API_ENDPOINTS: '["https://eos.eosusa.io","https://api.main.alohaeos.com","https://eos.api.eosnation.io","https://eos.greymass.com","https://eos.eosphere.io","https://api.eosrio.io"]'
HAPI_EVM_NETWORK: EOSIO
HAPI_EVM_NETWORK_CHAIN_ID: aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e906
HAPI_EVM_EOS_EVM_ACCOUNT: eosio.evm
HAPI_EVM_BLOCK_INTERVAL_SEC: 1
HAPI_EVM_OLD_BLOCK_INTERVAL_SEC: 0.1
HAPI_EVM_ATH_INTERVAL_SEC: 900
HAPI_EVM_CLEAN_OLD_BLOCK_INTERVAL_SEC: 86400
HAPI_EVM_CLEAN_OLD_TRANSFER_INTERVAL_SEC: 86400
HAPI_EVM_KEEP_HISTORY_FOR_YEARS: 1
HAPI_EVM_HYPERION_API: https://eos.eosusa.io
HAPI_EVM_HYPERION_START_AT: 2022-01-01T00:00:00.000+00:00
# hasura
HASURA_GRAPHQL_ENABLE_CONSOLE: 'true'
HASURA_GRAPHQL_DATABASE_URL: ${{ secrets.HASURA_GRAPHQL_DATABASE_URL }}
HASURA_GRAPHQL_ADMIN_SECRET: ${{ secrets.HASURA_GRAPHQL_ADMIN_SECRET }}
HASURA_GRAPHQL_UNAUTHORIZED_ROLE: guest
HASURA_GRAPHQL_ACTION_BASE_URL: http://dashboard-hapi:9090
HASURA_GRAPHQL_ACTION_EVM_URL: http://dashboard-hapi-evm:9091
- name: Setup and deploy kubernetes environment
uses: steebchen/[email protected]
env:
KUBE_CONFIG_DATA: ${{ secrets.KUBE_CONFIG_DATA }}
NAMESPACE: mainnet-dashboard
K8S_BUILD_DIR: build_k8s
with:
args: version && make deploy-kubernetes