Skip to content

Commit 588747f

Browse files
committed
feat(ci): add GitHub Actions workflow to validate tokens
1 parent b347050 commit 588747f

File tree

3 files changed

+38
-8
lines changed

3 files changed

+38
-8
lines changed

.github/workflows/check-tokens.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Check Tokens
2+
3+
on:
4+
workflow_dispatch:
5+
6+
jobs:
7+
check:
8+
runs-on: ubuntu-latest
9+
10+
env:
11+
RPC_URL_ETHEREUM: ${{ secrets.RPC_URL_ETHEREUM }}
12+
RPC_URL_BOB: ${{ secrets.RPC_URL_BOB }}
13+
RPC_URL_CORN: ${{ secrets.RPC_URL_CORN }}
14+
15+
steps:
16+
- name: Checkout repository
17+
uses: actions/checkout@v3
18+
19+
- name: Set up Rust
20+
uses: actions/setup-rust@v1
21+
with:
22+
rust-version: stable
23+
24+
- name: Build project
25+
run: cargo build
26+
working-directory: scripts/validate-tokens
27+
28+
- name: Run token verification
29+
run: cargo run
30+
working-directory: scripts/validate-tokens

flake.nix

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@
2121
devShell = pkgs.mkShell {
2222
buildInputs = with pkgs; [
2323
rust
24-
openssl # ✅ para o openssl-sys
25-
pkg-config # ✅ para encontrar a instalação do OpenSSL
24+
openssl
25+
pkg-config
2626
jq
2727
bun
2828
just

scripts/validate-tokens/src/main.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ use alloy::transports::http::reqwest::Url;
55
use alloy::transports::http::{Client, Http};
66
use base64::{engine::general_purpose, Engine as _};
77
use serde::Deserialize;
8+
use std::env;
89
use std::fs;
910
use std::str::FromStr;
1011

@@ -38,7 +39,7 @@ struct TokenInfo {
3839
decimals: u8,
3940
}
4041

41-
#[tokio::main] // <- ADICIONA ISTO
42+
#[tokio::main]
4243
async fn main() -> Result<(), Box<dyn std::error::Error>> {
4344
let files = vec![
4445
("ethereum", "../../data/ethereum.1/tokenlist.json"),
@@ -79,7 +80,6 @@ async fn verify_on_ethereum(
7980
if token.address.to_lowercase() == "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee" {
8081
println!("ℹ️ Skipping native placeholder token: {}", token.symbol);
8182
return Ok(());
82-
8383
}
8484

8585
let address = Address::from_str(&token.address)?;
@@ -124,13 +124,13 @@ async fn verify_on_ethereum(
124124

125125
fn get_ethereum_provider(network: &str) -> Option<RootProvider<Http<Client>>> {
126126
let url = match network {
127-
"ethereum" => "x",
128-
"bob" => "x",
129-
"corn" => "x",
127+
"ethereum" => env::var("RPC_URL_ETHEREUM").ok()?,
128+
"bob" => env::var("RPC_URL_BOB").ok()?,
129+
"corn" => env::var("RPC_URL_CORN").ok()?,
130130
_ => return None,
131131
};
132132

133-
let provider = ProviderBuilder::new().on_http(Url::parse(url).ok()?);
133+
let provider = ProviderBuilder::new().on_http(Url::parse(&url).ok()?);
134134

135135
Some(provider)
136136
}

0 commit comments

Comments
 (0)