Added basic CI workflow (#13)

This commit is contained in:
activecoder10
2025-05-12 13:00:13 +03:00
committed by GitHub
parent 38b42560ec
commit ae1174febe
7 changed files with 80 additions and 15 deletions
+65
View File
@@ -0,0 +1,65 @@
name: Test
on:
push:
branches:
- main
pull_request:
branches:
- main
types:
- opened
- synchronize
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
env:
CARGO_TERM_COLOR: always
jobs:
ci:
name: CI on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-24.04
- macos-14
steps:
- name: Checkout repo
uses: actions/checkout@v4
- name: Setup Rust toolchain
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
rustflags: ""
# ────────────── Install geth ──────────────
- name: Install Geth on Ubuntu
if: matrix.os == 'ubuntu-24.04'
run: |
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install -y ethereum
- name: Install Geth on macOS
if: matrix.os == 'macos-14'
run: |
brew tap ethereum/ethereum
brew install ethereum
- name: Machete
uses: bnjbvr/cargo-machete@v0.7.1
- name: Format
run: make format
- name: Clippy
run: make clippy
- name: Test cargo workspace
run: make test
Generated
-7
View File
@@ -3032,11 +3032,7 @@ dependencies = [
"revive-dt-format",
"revive-dt-node",
"revive-dt-node-interaction",
"revive-dt-solc-binaries",
"revive-solc-json-interface",
"semver 1.0.26",
"serde",
"serde_json",
"temp-dir",
]
@@ -3061,7 +3057,6 @@ dependencies = [
"log",
"revive-dt-config",
"revive-dt-node-interaction",
"serde_json",
"temp-dir",
]
@@ -3071,10 +3066,8 @@ version = "0.1.0"
dependencies = [
"alloy",
"anyhow",
"hex",
"log",
"once_cell",
"serde_json",
"tokio",
]
+14
View File
@@ -0,0 +1,14 @@
.PHONY: format clippy test machete
format:
cargo fmt --all -- --check
clippy:
cargo clippy --all-features --workspace -- --deny warnings
test:
cargo test --workspace -- --nocapture
machete:
cargo install cargo-machete
cargo machete
-4
View File
@@ -18,7 +18,6 @@ revive-dt-config = { workspace = true }
revive-dt-format = { workspace = true }
revive-dt-node = { workspace = true }
revive-dt-node-interaction = { workspace = true }
revive-dt-solc-binaries = { workspace = true }
alloy = { workspace = true }
anyhow = { workspace = true }
@@ -27,7 +26,4 @@ log = { workspace = true }
env_logger = { workspace = true }
rayon = { workspace = true }
revive-solc-json-interface = { workspace = true }
semver = { workspace = true }
serde = { workspace = true, features = [ "derive" ] }
serde_json = { workspace = true }
temp-dir = { workspace = true }
-2
View File
@@ -11,8 +11,6 @@ rust-version.workspace = true
[dependencies]
alloy = { workspace = true }
anyhow = { workspace = true }
hex = { workspace = true }
log = { workspace = true }
once_cell = { workspace = true }
serde_json = { workspace = true }
tokio = { workspace = true }
-1
View File
@@ -12,7 +12,6 @@ rust-version.workspace = true
anyhow = { workspace = true }
alloy = { workspace = true }
log = { workspace = true }
serde_json = { workspace = true }
revive-dt-node-interaction = { workspace = true }
revive-dt-config = { workspace = true }
+1 -1
View File
@@ -60,7 +60,7 @@ fn download_to_file(path: &Path, downloader: &GHDownloader) -> anyhow::Result<()
std::process::Command::new("xattr")
.arg("-d")
.arg("com.apple.quarantine")
.arg(&path)
.arg(path)
.stderr(std::process::Stdio::null())
.stdout(std::process::Stdio::null())
.stdout(std::process::Stdio::null())