Skip to content

Merge pull request #1354 from edenia/dev #77

Merge pull request #1354 from edenia/dev

Merge pull request #1354 from edenia/dev #77

name: Build images for lacchain environment
on:
push:
tags:
- lacchain-v*
jobs:
create-lacchain-image:
runs-on: ubuntu-latest
environment: lacchain
steps:
- name: Checkout Repo
uses: actions/checkout@v3
- name: Log in to the Container registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build new images and push
run: |
make \
build-docker-images \
push-docker-images
env:
# General
DOCKER_USERNAME: ${{ secrets.DOCKER_HUB_USER }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
# webapp
PORT: '80'
REACT_APP_TITLE: 'LACChain EOSIO Network Dashboard'
REACT_APP_VERSION: ${{ github.ref }}
REACT_APP_DEFAULT_PRODUCER_LOGO: 'https://antelope.tools/images/lacchain.jpg'
REACT_APP_FOOTER_LINKS: '[{"text":"LACChain Website","src":"https://eosio.lacchain.net"},{"text":"Block Explorer","src":"https://eosio-explorer.lacchain.net"},{"text":"LACChain Developer Docs","src":"https://eosio.lacchain.net/en/docs/eosio/"},{"text": "LACChain Network Monitor","src": "https://antelope.tools"}]'
REACT_APP_EOS_RATE_LINK: ''
REACT_APP_USE_REWARDS: 'false'
REACT_APP_USE_VOTES: 'false'
REACT_APP_HASURA_URL: 'https://graphql-lacchain.antelope.tools/v1/graphql'
REACT_APP_EOS_API_NETWORK_NAME: 'lacchain'
REACT_APP_EOS_API_NETWORK_LABEL: 'LACChain EOSIO'
REACT_APP_EOS_API_NETWORK_LOGO: 'https://antelope.tools/images/lacchain.jpg'
REACT_APP_EOS_API_HOSTS: '[\"lacchain.edenia.cloud\"]'
REACT_APP_EOS_API_PORT: '443'
REACT_APP_EOS_API_PROTOCOL: 'https'
REACT_APP_EOS_CHAIN_ID: '5821525c6588037e2b066b992fcac34909a5b7f1ea8d5a393f6720fca3750d61'
REACT_APP_EOS_INCLUDE_TRANSACTION: '{"account":"writer","name":"run","authorization":[{"actor":"costarica","permission":"writer"}],"data":{}}'
REACT_APP_EOS_USE_BP_JSON_ON_CHAIN: 'false'
REACT_APP_EOS_BP_JSON_ON_CHAIN_CONTRACT: 'producerjson'
REACT_APP_EOS_BP_JSON_ON_CHAIN_TABLE: 'producerjson'
REACT_APP_EOS_BP_JSON_ON_CHAIN_SCOPE: 'producerjson'
REACT_APP_SYNC_TOLERANCE_INTERVAL: 180000
REACT_APP_TOKEN_SYMBOL: ''
REACT_APP_NETWORK_URL: '[{"label":"EOS","value":"https://eos.antelope.tools","mainnet":true,"icon":"eos","order":5},{"label":"XPR Network","value":"https://xpr.antelope.tools","mainnet":true,"icon":"xpr","order":3},{"label":"WAX","value":"https://wax.antelope.tools","mainnet":true,"icon":"wax","order":4},{"label":"Telos","value":"https://telos.antelope.tools","mainnet":true,"icon":"telos","order":1},{"label":"Libre","value":"https://libre.antelope.tools","mainnet":true,"icon":"libre","order":2},{"label":"LACChain EOSIO","value":"https://lacchain.antelope.tools","mainnet":true,"icon":"lacchain","order":6},{"label":"Jungle4 Testnet","value":"https://jungle.antelope.tools","mainnet":false,"icon":"jungle","order":5},{"label":"XPR Testnet","value":"https://xpr-testnet.antelope.tools","mainnet":false,"icon":"xpr","order":3},{"label":"WAX Testnet","value":"https://wax-testnet.antelope.tools","mainnet":false,"icon":"wax","order":4},{"label":"Telos Testnet","value":"https://telos-testnet.antelope.tools","mainnet":false,"icon":"telos","order":1},{"label":"Libre Testnet","value":"https://libre-testnet.antelope.tools","mainnet":false,"icon":"libre","order":2},{"label":"Ultra Testnet","value":"https://ultra-testnet.antelope.tools","mainnet":false,"icon":"ultra","order":6}]'
REACT_APP_DISABLED_MENU_ITEMS: '["/undiscoverable-bps","/stress-test","/evm","/evm-rpc-endpoints"]'
REACT_APP_BLOCK_EXPLORER_URL: 'https://eosio-explorer.lacchain.net/transaction/(transaction)'
REACT_APP_STATE_HISTORY_ENABLED: 'true'
REACT_APP_GOOGLE_ANALITIC_PAGE_ID: 'G-E6Y0EC9FT8'
REACT_APP_PUBLIC_RE_CAPTCHA_KEY: ${{ secrets.REACT_APP_PUBLIC_RE_CAPTCHA_KEY }}
- name: Build and deploy kubernetes files
id: build_kubernetes_files
run: |
make \
build-kubernetes
env:
# general
NAMESPACE: lacchain-dashboard
INGRESS_HOST: lacchain.antelope.tools
INGRESS_GRAPHQL_HOST: graphql-lacchain.antelope.tools
# webapp
REACT_APP_EOS_API_NETWORK_NAME: 'lacchain'
# 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_CHAIN_ID: '5821525c6588037e2b066b992fcac34909a5b7f1ea8d5a393f6720fca3750d61'
HAPI_EOS_API_ENDPOINTS: '["https://lacchain.edenia.cloud"]'
HAPI_EOS_API_NETWORK_NAME: 'lacchain'
HAPI_EOS_BP_JSON_ON_CHAIN: 'false'
HAPI_EOS_BP_JSON_ON_CHAIN_CONTRACT: ''
HAPI_EOS_BP_JSON_ON_CHAIN_SCOPE: ''
HAPI_EOS_BP_JSON_ON_CHAIN_TABLE: ''
HAPI_EOS_BASE_ACCOUNT: ${{ secrets.HAPI_EOS_BASE_ACCOUNT }}
HAPI_EOS_BASE_ACCOUNT_PASSWORD: ${{ secrets.HAPI_EOS_BASE_ACCOUNT_PASSWORD }}
HAPI_EOS_MECHANICS_ACCOUNT: ${{ secrets.HAPI_EOS_MECHANICS_ACCOUNT }}
HAPI_EOS_MECHANICS_INCLUDE_TRANSACTION: '{"account":"writer","name":"run","authorization":[{"actor":"costarica","permission":"writer"}],"data":{}}'
HAPI_EOS_MECHANICS_PASSWORD: ${{ secrets.HAPI_EOS_MECHANICS_PASSWORD }}
HAPI_EOS_WALLET_URL: http://dashboard-wallet:8888
HAPI_HASURA_ADMIN_SECRET: ${{ secrets.HAPI_HASURA_ADMIN_SECRET }}
HAPI_EOS_STATE_HISTORY_PLUGIN_ENDPOINT: 'ws://observer.edenia.cloud:8888'
HAPI_HASURA_URL: 'http://dashboard-hasura:8080/v1/graphql'
HAPI_SERVER_ADDRESS: '0.0.0.0'
HAPI_SERVER_PORT: '9090'
HAPI_DATABASE_URL: ${{ secrets.HAPI_DATABASE_URL }}
HAPI_SYNC_PRODUCERS_INTERVAL: '14400'
HAPI_SYNC_PRODUCER_CPU_INTERVAL: '6'
HAPI_SYNC_PRODUCER_INFO_INTERVAL: '1'
HAPI_SYNC_SCHEDULE_HISTORY_INTERVAL: 86400
# 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
- name: Setup and deploy kubernetes environment
uses: steebchen/[email protected]
env:
KUBE_CONFIG_DATA: ${{ secrets.KUBE_CONFIG_DATA }}
NAMESPACE: lacchain-dashboard
K8S_BUILD_DIR: build_k8s
with:
args: version && make deploy-kubernetes