Skip to content

Commit

Permalink
feat: add dataset info
Browse files Browse the repository at this point in the history
  • Loading branch information
mo4islona committed Oct 29, 2024
1 parent 4f94e04 commit 2e25da6
Show file tree
Hide file tree
Showing 14 changed files with 368 additions and 250 deletions.
31 changes: 12 additions & 19 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
name: docker
on:
workflow_dispatch: # manually run
inputs:
tag:
description: image tag
required: true

env:
CI: true
Expand All @@ -20,32 +16,29 @@ jobs:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- uses: SebRollen/[email protected]
id: read_toml
with:
file: 'Cargo.toml'
field: 'package.version'

- name: Docker login
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_LOGIN }}
password: ${{ secrets.DOCKER_TOKEN }}

- name: Build query gateway
uses: docker/build-push-action@v5
with:
context: .
load: true
tags: subsquid/query-gateway:test
cache-from: type=gha
cache-to: type=gha,mode=max

- name: Get query gateway version
run: echo "GATEWAY_VERSION=$(docker run --rm subsquid/query-gateway:test subsquid-query-gateway --version | cut -d ' ' -f2)" >> $GITHUB_ENV

- name: Build & publish query gateway
uses: docker/build-push-action@v5
env:
VERSION: ${{ steps.read_toml.outputs.value }}
with:
context: .
platforms: linux/amd64,linux/arm/v7,linux/arm64/v8,linux/386
# Build only for Linux AMD64 now, uncomment and re-build before public release
platforms: linux/amd64
# platforms: linux/amd64,linux/arm/v7,linux/arm64/v8,linux/386
push: true
tags: |
subsquid/query-gateway:${{ env.GATEWAY_VERSION }}
subsquid/query-gateway:${{ inputs.tag }}
subsquid/sqd-portal:${{ env.VERSION }}
cache-from: type=gha
cache-to: type=gha,mode=max
21 changes: 18 additions & 3 deletions Cargo.lock

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

5 changes: 3 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "sqd-portal"
version = "0.1.0"
version = "0.2.9"
edition = "2021"

[dependencies]
Expand All @@ -16,7 +16,7 @@ itertools = "0.12"
lazy_static = "1.4.0"
parking_lot = "0.12"
prometheus-client = "0.22"
reqwest = { version = "0.12.7", features = ["stream", "gzip"] }
reqwest = { version = "0.12.7", features = ["stream", "gzip", "json"] }
scopeguard = "1.2"
semver = "1"
serde = { version = "1", features = ["derive"] }
Expand All @@ -31,6 +31,7 @@ tokio-util = "0.7.11"
tracing = { version = "0.1", features = ["async-await"] }
tracing-futures = { version = "0.2.5", features = ["tokio", "futures-03"] }
tracing-subscriber = { version = "0.3.18", features = ["env-filter", "json"] }
tower-http = { version = "0.6.1", features = ["cors"] }
uuid = { version = "1", features = ["v4", "fast-rng"] }

sqd-contract-client = { git = "https://github.com/subsquid/sqd-network.git", version = "1.0.7" }
Expand Down
184 changes: 3 additions & 181 deletions mainnet.config.yml
Original file line number Diff line number Diff line change
@@ -1,182 +1,4 @@
hostname: http://0.0.0.0:8000
available_datasets:
0g-testnet: s3://0g-testnet-traceless-1
aleph-zero-evm-mainnet: s3://aleph-zero-evm-mainnet
arbitrum-nova: s3://arbitrum-nova-1
arbitrum-one: s3://arbitrum-one
arbitrum-sepolia: s3://arbitrum-sepolia-traceless
arthera-mainnet: s3://arthera-mainnet
astar-mainnet: s3://astar-mainnet-traceless-1
astar-zkyoto: s3://astar-zkyoto-1-traceless
astar-zkevm-mainnet: s3://astar-zkevm-mainnet-1-traceless
avalanche-mainnet: s3://ava-mainnet-1
avalanche-testnet: s3://ava-testnet-1
b3-sepolia: s3://b3-sepolia
b3-mainnet: s3://b3-mainnet
base-mainnet: s3://base
base-sepolia: s3://base-sepolia
berachain-bartio: s3://berachain-bartio
binance-mainnet: s3://binance-mainnet
binance-testnet: s3://binance-testnet-traceless-1
bitfinity-mainnet: s3://bitfinity-mainnet
bitfinity-testnet: s3://bitfinity-testnet
blast-l2-mainnet: s3://blast-l2-mainnet-1
blast-sepolia: s3://blast-sepolia-1-traceless
bitgert-mainnet: s3://bitgert-mainnet-1
bitgert-testnet: s3://bitgert-testnet-1
bob-mainnet: s3://bob-mainnet
canto: s3://canto-traceless
canto-testnet: s3://canto-testnet-traceless
core-mainnet: s3://core-mainnet-1
cyberconnect-l2-testnet: s3://cyber-l2-testnet-2
cyber-mainnet: s3://cyber-mainnet-1
crossfi-testnet: s3://crossfi-testnet-traceless
dfk-chain: s3://dfk-chain-traceless-1
dogechain-mainnet: s3://dogechain-mainnet-traceless-1
dogechain-testnet: s3://dogechain-testnet-traceless-1
ethereum-holesky: s3://ethereum-holesky-1
ethereum-mainnet: s3://ethereum-mainnet-1
ethereum-sepolia: s3://ethereum-sepolia-1
etherlink-mainnet: s3://etherlink-mainnet-traceless
etherlink-testnet: s3://etherlink-testnet-3-traceless
exosama: s3://exosama-1
fantom-mainnet: s3://fantom-mainnet-traceless
fantom-testnet: s3://fantom-testnet-traceless-1
flare-mainnet: s3://flare-mainnet-traceless-1
galxe-gravity: s3://galxe-gravity
gelato-arbitrum-blueberry: s3://arbitrum-blueberry-1
gelato-opcelestia-raspberry: s3://opcelestia-raspberry-traceless
gnosis-mainnet: s3://gnosis-mainnet-1
immutable-zkevm-mainnet: s3://immutable-zkevm-mainnet-traceless-1
immutable-zkevm-testnet: s3://immutable-zkevm-testnet-traceless-1
kyoto-testnet: s3://kyoto-testnet-traceless
linea-mainnet: s3://linea-mainnet-1
manta-pacific: s3://manta-pacific-traceless
manta-pacific-sepolia: s3://manta-pacific-sepolia
mantle-mainnet: s3://mantle-mainnet-1-traceless
mantle-sepolia: s3://mantle-sepolia-1-traceless
merlin-mainnet: s3://merlin-mainnet-traceless
merlin-testnet: s3://merlin-testnet-traceless
metis-mainnet: s3://metis-mainnet-3
mode-mainnet: s3://mode-mainnet-traceless
moonbase-testnet: s3://moonbase-testnet-1
moonbeam-mainnet: s3://moonbeam-evm-2
moonriver-mainnet: s3://moonriver-mainnet-1
moonsama: s3://moonsama-traceless-1
nakachain: s3://nakachain
neon-mainnet: s3://neon-mainnet-traceless
neon-devnet: s3://neon-devnet-traceless-1
neox-testnet: s3://neox-testnet
opbnb-mainnet: s3://opbnb-mainnet-traceless-1
opbnb-testnet: s3://opbnb-testnet-traceless-1
optimism-mainnet: s3://optimism-2
optimism-sepolia: s3://optimism-sepolia-traceless
peaq-mainnet: s3://peaq-mainnet-traceless-1
plume-testnet: s3://plume-testnet
plume-devnet: s3://plume-devnet
polygon-mainnet: s3://polygon-mainnet-1
polygon-amoy-testnet: s3://polygon-amoy-testnet-traceless
polygon-zkevm-mainnet: s3://polygon-zkevm-mainnet-traceless
polygon-zkevm-cardona-testnet: s3://polygon-zkevm-cardona-testnet-traceless-1
prom-testnet: s3://prom-testnet-1-traceless
prom-testnet-v2: s3://prom-testnet-v2
puppynet: s3://puppynet
scroll-mainnet: s3://scroll-mainnet
scroll-sepolia: s3://scroll-sepolia
shiden-mainnet: s3://shiden-mainnet
shibarium: s3://shibarium
shibuya-testnet: s3://shibuya-testnet-traceless-1
skale-nebula: s3://skale-nebula-traceless-1
stratovm-sepolia: s3://stratovm-sepolia
superseed-sepolia: s3://superseed-sepolia-traceless
taiko-mainnet: s3://taiko-mainnet-traceless
tanssi: s3://tanssi-traceless-1
x1-testnet: s3://x1-testnet-traceless
xlayer-mainnet: s3://xlayer-mainnet-traceless
xlayer-testnet: s3://xlayer-testnet-traceless
zksync-mainnet: s3://zksync-mainnet-1
zksync-sepolia: s3://zksync-sepolia-2
zora-mainnet: s3://zora-mainnet
zora-sepolia: s3://zora-sepolia-traceless-1
acala: s3://acala-4
acurast-canary: s3://acurast-canary
agung: s3://agung-4
aleph-zero: s3://aleph-zero
aleph-zero-testnet: s3://aleph-zero-testnet
amplitude: s3://amplitude-4
asset-hub-kusama: s3://asset-hub-kusama-4
asset-hub-polkadot: s3://asset-hub-polkadot-4
asset-hub-rococo: s3://asset-hub-rococo-4
astar-substrate: s3://astar-substrate
avail: s3://avail-1
basilisk: s3://basilisk-4
bifrost-kusama: s3://bifrost-kusama-4
bifrost-polkadot: s3://bifrost-polkadot-4
bittensor-testnet: s3://bittensor-testnet
bittensor: s3://bittensor-4
bridge-hub-kusama: s3://bridge-hub-kusama-4
bridge-hub-polkadot: s3://bridge-hub-polkadot-4
bridge-hub-rococo: s3://bridge-hub-rococo-4
bridge-hub-westend: s3://bridge-hub-westend-4
centrifuge: s3://centrifuge-4
cere: s3://cere-4
chainflip: s3://chainflip-4
collectives-polkadot: s3://collectives-polkadot-4
collectives-westend: s3://collectives-westend-4
crust: s3://crust-4
clover: s3://clover-4
data-avail: s3://data-avail-4
dancebox: s3://dancebox-4
darwinia-crab: s3://darwinia-crab-4
darwinia: s3://darwinia-4
degen-chain: s3://degen-traceless
eden: s3://eden-4
enjin-matrix: s3://enjin-matrix-4
enjin-canary-matrix: s3://enjin-canary-matrix
equilibrium: s3://equilibrium
foucoco: s3://foucoco-5
frequency: s3://frequency-4
gemini-3h: s3://gemini-3h
hydradx: s3://hydradx-4
integritee: s3://integritee
interlay: s3://interlay-4
invarch-parachain: s3://invarch-parachain-4
invarch-tinkernet: s3://invarch-tinkernet-5
joystream: s3://joystream-4
karura: s3://karura-4
khala: s3://khala-4
kilt: s3://kilt-4
kintsugi: s3://kintsugi-4
kusama: s3://kusama-4
litentry: s3://litentry-4
moonbeam-substrate: s3://moonbeam-substrate-4
moonbase-substrate: s3://moonbase-substrate-4
moonriver-substrate: s3://moonriver-substrate-4
paseo: s3://paseo-5
peaq-mainnet-substrate: s3://peaq-mainnet-5
pendulum: s3://pendulum-4
phala-testnet: s3://phala-testnet-4
phala: s3://phala-4
picasso: s3://picasso
polimec: s3://polimec-4
polkadex: s3://polkadex
polkadot: s3://polkadot-4
polymesh: s3://polymesh-4
reef-testnet: s3://reef-testnet-4-1
reef: s3://reef-4
robonomics: s3://robonomics-4
rococo: s3://rococo-4
rolimec: s3://rolimec-4
shiden-substrate: s3://shiden-substrate-4
shibuya-substrate: s3://shibuya-substrate
sora-mainnet: s3://sora-mainnet-4
subsocial-parachain: s3://subsocial-parachain-4-1
ternoa: s3://ternoa-4
turing-avail: s3://avail-turing
turing-mainnet: s3://turing-mainnet
vara: s3://vara-4
vara-testnet: s3://vara-testnet-4
westend: s3://westend-4
zeitgeist-testnet: s3://zeitgeist-testnet-4
zeitgeist: s3://zeitgeist-4
zkverify-testnet: s3://zkverify-testnet
sqd_network:
datasets: https://cdn.subsquid.io/sqd-network/datasets.yml
serve: "all"
13 changes: 13 additions & 0 deletions src/api_types.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
use sqd_contract_client::PeerId;

#[derive(serde::Serialize)]
pub(crate) struct PortalConfigApiResponse {
pub libp2p_key: PeerId,
}

#[derive(serde::Serialize)]
pub(crate) struct AvailableDatasetApiResponse {
pub slug: String,
pub aliases: Vec<String>,
pub real_time: bool,
}
Loading

0 comments on commit 2e25da6

Please sign in to comment.