forked from forbole/callisto
-
Notifications
You must be signed in to change notification settings - Fork 0
146 lines (136 loc) · 5.29 KB
/
deploy-bdjuno-public-testnet.yml
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
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
name: Deploy BDJuno on public testnet
#on:
# push:
# branches:
# - main
on:
workflow_dispatch:
jobs:
deploy:
runs-on: cudos-public-testnet-explorer-02
steps:
- name: Checkout code
uses: actions/checkout@v2
# - name: Set up Docker
# uses: docker/setup-buildx-action@v1
- name: Stop and remove any existing containers
run: |
sudo docker stop cudos-bdjuno-hasura-1 || true
sudo docker rm cudos-bdjuno-hasura-1 || true
sudo docker stop cudos-bdjuno-bdjuno-1 || true
sudo docker rm cudos-bdjuno-bdjuno-1 || true
sudo docker stop cudos-bdjuno-hasura-actions-1 || true
sudo docker rm cudos-bdjuno-hasura-actions-1 || true
sudo docker stop cloudsql-proxy || true
sudo docker rm cloudsql-proxy || true
- name: Create bdjuno directory and download genesis file
run: |
mkdir bdjuno
wget https://storage.googleapis.com/private-testnet-genesis/pubtestnetkmd.json
mv pubtestnetkmd.json bdjuno/genesis.json
chmod 644 bdjuno/genesis.json
- name: Setup bdjuno config file
run: |
cat << EOF > bdjuno/config.yaml
chain:
bech32_prefix: cudos
modules:
- modules
- messages
- auth
- bank
- consensus
- gov
- slashing
- staking
- distribution
- history
- pricefeed
- cosmwasm
- gravity
- cudomint
- nft
- group
- cw20token
- marketplace
node:
type: remote
config:
rpc:
client_name: cudos-testnet-public-4
address: http://public-testnet-seed-02.hosts.cudos.org:26657
max_connections: 20
grpc:
address: http://public-testnet-seed-02.hosts.cudos.org:9090
insecure: true
parsing:
workers: 4
listen_new_blocks: true
parse_old_blocks: false
parse_genesis: true
start_height: 1
fast_sync: false
genesis_file_path: /usr/local/bdjuno/bdjuno/genesis.json
database:
name: \${{ secrets.POSTGRES_DB }}
host: host.docker.internal
port: 5432
user: \${{ secrets.POSTGRES_USER }}
password: \${{ secrets.POSTGRES_PASSWORD }}
schema: public
max_open_connections: 10
max_idle_connections: 10
logging:
level: debug
format: text
telemetry:
port: 5000
pricefeed:
tokens:
- name: Cudos
units:
- denom: cudos
exponent: 0
price_id: cudos
distribution:
rewards_frequency: 1000
workers:
- name: fix_blocks_worker
interval: 10m
- name: migrate_nfts_worker
interval: 1m
- name: blocks_monitoring_worker
interval: 30s
cudomint:
stats_service_url: https://stats.testnet.cudos.org
crypto-compare:
crypto_compare_prod_api_key: \${{ secrets.CRYPTO_COMPARE_PROD_API_KEY }}
crypto_compare_free_api_key: \${{ secrets.CRYPTO_COMPARE_FREE_API_KEY }}
EOF
chmod 644 bdjuno/config.yaml
- name: Setup .env for Hasura
run: |
cat << EOF > .env
HASURA_GRAPHQL_DATABASE_URL=postgres://\${{ secrets.POSTGRES_USER }}:\${{ secrets.POSTGRES_PASSWORD }}@host.docker.internal:5432/\${{ secrets.POSTGRES_DB }}
HASURA_GRAPHQL_ENABLE_CONSOLE="true"
HASURA_GRAPHQL_DEV_MODE="false"
HASURA_GRAPHQL_ENABLED_LOG_TYPES=startup, http-log, webhook-log, websocket-log, query-log
HASURA_GRAPHQL_ADMIN_SECRET=\${{ secrets.HASURA_GRAPHQL_ADMIN_SECRET }}
HASURA_GRAPHQL_ENDPOINT_URL=\${{ secrets.HASURA_GRAPHQL_ENDPOINT_URL }}
HASURA_GRAPHQL_UNAUTHORIZED_ROLE="anonymous"
HASURA_ACTIONS_GRPC="http://public-testnet-seed-02.hosts.cudos.org:9090"
HASURA_ACTIONS_RPC="http://public-testnet-seed-02.hosts.cudos.org:26657"
HASURA_ACTIONS_PORT=4000
GCLOUD_INSTANCE_CONNECTION_NAME=cudos-testnet:us-central1:public-testnet
CRYPTO_COMPARE_PROD_API_KEY="\${{ secrets.CRYPTO_COMPARE_PROD_API_KEY }}"
CRYPTO_COMPARE_FREE_API_KEY="\${{ secrets.CRYPTO_COMPARE_FREE_API_KEY }}"
EOF
chmod 644 .env
- name: Deploy with Docker Compose
run: |
sudo docker compose --file=docker-compose-prod.yml up --build -d
- name: Apply Hasura metadata
run: |
cd hasura
curl -L https://github.com/hasura/graphql-engine/raw/stable/cli/get.sh | bash
hasura metadata apply --endpoint \${{ secrets.HASURA_GRAPHQL_ENDPOINT_URL }} --admin-secret "\${{ secrets.HASURA_GRAPHQL_ADMIN_SECRET }}"