Skip to content

Commit e193428

Browse files
committed
Update dependencies in Cargo.lock and enhance GitHub workflows
This commit adds several new dependencies, including `assert_cmd`, `bstr`, `difflib`, `predicates`, `predicates-core`, `predicates-tree`, `termtree`, and `wait-timeout` to the Cargo.lock file. Additionally, it updates the GitHub workflows for CLI tests and parity tests to include new runtime end-to-end tests, environment variables for update checks, and caching for cargo dependencies. The helix-cli's Cargo.toml is also updated to include `assert_cmd` and `tempfile` as development dependencies.
1 parent 933af88 commit e193428

7 files changed

Lines changed: 638 additions & 6 deletions

File tree

.github/workflows/cli_tests.yml

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@ on:
2121
env:
2222
CARGO_TERM_COLOR: always
2323
RUST_BACKTRACE: 1
24+
HELIX_NO_UPDATE_CHECK: "1"
25+
HELIX_DISABLE_UPDATE_CHECK: "1"
26+
NO_COLOR: "1"
2427

2528
jobs:
2629
test:
@@ -66,3 +69,43 @@ jobs:
6669

6770
- name: Clippy helix-cli
6871
run: cargo clippy -p helix-cli -- -D warnings
72+
73+
runtime-e2e:
74+
name: CLI Runtime E2E
75+
runs-on: ubuntu-latest
76+
timeout-minutes: 30
77+
78+
steps:
79+
- name: Checkout repository
80+
uses: actions/checkout@v4
81+
82+
- name: Setup Rust toolchain
83+
uses: dtolnay/rust-toolchain@stable
84+
85+
- name: Cache cargo dependencies
86+
uses: actions/cache@v4
87+
continue-on-error: true
88+
with:
89+
path: |
90+
~/.cargo/registry
91+
~/.cargo/git
92+
target
93+
key: ${{ runner.os }}-cargo-runtime-e2e-${{ hashFiles('**/Cargo.lock') || 'fallback' }}
94+
restore-keys: |
95+
${{ runner.os }}-cargo-
96+
97+
- name: Verify Docker daemon
98+
run: docker info
99+
100+
- name: Run Docker-backed CLI e2e
101+
env:
102+
HELIX_E2E_KEEP_TMP: "1"
103+
run: cargo test -p helix-cli --test e2e_runtime -- --ignored --nocapture
104+
105+
- name: Upload runtime e2e artifacts on failure
106+
if: failure()
107+
uses: actions/upload-artifact@v4
108+
with:
109+
name: cli-runtime-e2e-artifacts
110+
path: /tmp/helix-cli-e2e-*
111+
if-no-files-found: ignore

.github/workflows/parity_tests.yml

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,17 @@ on:
44
pull_request:
55
branches: [main, dev]
66
paths:
7+
- 'helix-cli/**'
8+
- 'metrics/**'
79
- 'sdks/**'
810
- 'Cargo.toml'
911
- 'Cargo.lock'
1012
- '.github/workflows/parity_tests.yml'
1113
push:
1214
branches: [main, dev]
1315
paths:
16+
- 'helix-cli/**'
17+
- 'metrics/**'
1418
- 'sdks/**'
1519
- 'Cargo.toml'
1620
- 'Cargo.lock'
@@ -19,6 +23,9 @@ on:
1923
env:
2024
CARGO_TERM_COLOR: always
2125
RUST_BACKTRACE: 1
26+
HELIX_NO_UPDATE_CHECK: "1"
27+
HELIX_DISABLE_UPDATE_CHECK: "1"
28+
NO_COLOR: "1"
2229

2330
jobs:
2431
parity:
@@ -54,14 +61,12 @@ jobs:
5461
go-version: '1.22'
5562
cache-dependency-path: sdks/go/go.mod
5663

57-
# --- helix CLI (released binary) ---
58-
# install.sh lives under helix-cli/ on main (not the repo root); installs to ~/.local/bin
59-
# and is non-interactive on Linux (the Docker Desktop prompt is macOS-only).
60-
- name: Install helix CLI
64+
# --- helix CLI (this checkout) ---
65+
- name: Build helix CLI from this checkout
6166
working-directory: .
6267
run: |
63-
curl -fsSL https://raw.githubusercontent.com/HelixDB/helix-db/main/helix-cli/install.sh | bash
64-
echo "$HOME/.local/bin" >> "$GITHUB_PATH"
68+
cargo build -p helix-cli
69+
echo "$PWD/target/debug" >> "$GITHUB_PATH"
6570
6671
- name: Verify toolchain
6772
run: |

Cargo.lock

Lines changed: 76 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

helix-cli/Cargo.toml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,7 @@ path = "src/lib.rs"
3939
[[bin]]
4040
name = "helix"
4141
path = "src/main.rs"
42+
43+
[dev-dependencies]
44+
assert_cmd = "2"
45+
tempfile = "3"

0 commit comments

Comments
 (0)