-
Notifications
You must be signed in to change notification settings - Fork 16
122 lines (116 loc) · 5.78 KB
/
deploy-airwire-testnet.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
name: Build images for airwire testnet environment
on:
push:
tags:
- airwire-testnet-v*
jobs:
create-airwire-image:
runs-on: ubuntu-latest
environment: airwire-testnet
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: 'step-log'
run: |
echo "github.ref: ${{github.ref}}"
- 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: 'Airwire Testnet Dashboard'
REACT_APP_VERSION: ${{github.ref}}
REACT_APP_DEFAULT_PRODUCER_LOGO: 'https://ipfs.airwire.io/ipfs/QmayDiE47WtUfHJEdh2kFfq6Hdx9i5oTUUeiy4UiQbAEst'
REACT_APP_FOOTER_LINKS: '[{ "text": "Airwire Website", "src": "https://airwire.app/" },{ "text": "Block Explorer", "src": "https://testnet-explorer.airwire.io" },{"text": "Airwire Mainnet Dashboard","src": "https://dashboard.airwire.io"}]'
REACT_APP_EOS_RATE_LINK: ''
REACT_APP_USE_REWARDS: 'false'
REACT_APP_USE_VOTES: 'false'
REACT_APP_HASURA_URL: 'https://graphql-testnet-dashboard.airwire.io/v1/graphql'
REACT_APP_EOS_API_NETWORK_NAME: 'airwire-testnet'
REACT_APP_EOS_API_NETWORK_LABEL: 'Airwire Testnet'
REACT_APP_EOS_API_NETWORK_LOGO: 'https://ipfs.airwire.io/ipfs/QmayDiE47WtUfHJEdh2kFfq6Hdx9i5oTUUeiy4UiQbAEst'
REACT_APP_EOS_API_HOST: 'airwire-testnet.edenia.cloud'
REACT_APP_EOS_API_PORT: '443'
REACT_APP_EOS_API_PROTOCOL: 'https'
REACT_APP_EOS_CHAIN_ID: 'a3c9333f9c86df607ec7e63a52e031f4969cfd30dfab5e044b0752fd4b95d99f'
REACT_APP_EOS_USE_BP_JSON_ON_CHAIN: 'true'
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_TOKEN_SYMBOL: ''
REACT_APP_NETWORK_URL: '[{"label":"Airwire Mainnet","value":"https://dashboard.airwire.io","mainnet":true,"pair":"airwire","icon":"airwire","order":1},{"label":"Airwire Testnet","value":"https://testnet-dashboard.airwire.io","mainnet":false,"pair":"airwire","icon":"airwire","order":1}]'
REACT_APP_DISABLED_MENU_ITEMS: '["/rewards-distribution"]'
REACT_APP_BLOCK_EXPLORER_URL: 'https://testnet-explorer.airwire.io/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: airwire-dashboard
INGRESS_HOST: testnet-dashboard.airwire.io
INGRESS_GRAPHQL_HOST: graphql-testnet-dashboard.airwire.io
# webapp
REACT_APP_EOS_API_NETWORK_NAME: airwire-testnet
# 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_ENDPOINT: https://airwire-testnet.edenia.cloud
HAPI_EOS_API_NETWORK_NAME: airwire-testnet
HAPI_EOS_API_CHAIN_ID: a3c9333f9c86df607ec7e63a52e031f4969cfd30dfab5e044b0752fd4b95d99f
HAPI_EOS_BASE_ACCOUNT: ${{ secrets.HAPI_EOS_BASE_ACCOUNT }}
HAPI_EOS_BASE_ACCOUNT_PASSWORD: ${{ secrets.HAPI_EOS_BASE_ACCOUNT_PASSWORD }}
HAPI_EOS_MECHANICS_ACCOUNT: cpumechanics
HAPI_EOS_MECHANICS_INCLUDE_TRANSACTION: ''
HAPI_EOS_MECHANICS_PASSWORD: ${{ secrets.HAPI_EOS_MECHANICS_PASSWORD }}
HAPI_EOS_STATE_HISTORY_PLUGIN_ENDPOINT: 'ws://api-node.airwire-testnet:8080'
HAPI_EOS_WALLET_URL: http://dashboard-wallet:8888
HAPI_EOS_BP_JSON_ON_CHAIN: 'true'
HAPI_EOS_BP_JSON_ON_CHAIN_CONTRACT: producerjson
HAPI_EOS_BP_JSON_ON_CHAIN_TABLE: producerjson
HAPI_EOS_BP_JSON_ON_CHAIN_SCOPE: producerjson
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: '86400'
HAPI_SYNC_PRODUCER_CPU_INTERVAL: '6'
HAPI_SYNC_PRODUCER_INFO_INTERVAL: '1'
HAPI_SYNC_SCHEDULE_HISTORY_INTERVAL: 86400
HAPI_SYNC_STATS_INTERVAL: ''
HAPI_EOS_EXCHANGE_RATE_API: ''
HAPI_COINGECKO_API_TOKEN_ID: ''
HAPI_REWARDS_TOKEN: ''
# 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: airwire-testnet-dashboard
K8S_BUILD_DIR: build_k8s
with:
args: version && make deploy-kubernetes