Run npm install as part of build.rs too
This commit is contained in:
parent
2c71cc1dbb
commit
b2c241c3d8
2 changed files with 29 additions and 21 deletions
6
.github/workflows/test.yml
vendored
6
.github/workflows/test.yml
vendored
|
|
@ -21,9 +21,6 @@ jobs:
|
|||
rustup toolchain install ${{ matrix.rust_version }}
|
||||
- uses: actions/checkout@v4
|
||||
- run: rustup override set ${{ matrix.rust_version }}
|
||||
- name: npm install (librqbit/webui)
|
||||
working-directory: crates/librqbit/webui
|
||||
run: npm install
|
||||
- name: cargo check
|
||||
run: cargo check
|
||||
test:
|
||||
|
|
@ -32,8 +29,5 @@ jobs:
|
|||
- uses: actions/checkout@v4
|
||||
- run: rustup toolchain install stable --profile minimal
|
||||
- uses: Swatinem/rust-cache@v2
|
||||
- name: npm install (librqbit/webui)
|
||||
working-directory: crates/librqbit/webui
|
||||
run: npm install
|
||||
- name: Run tests
|
||||
run: cargo test
|
||||
|
|
|
|||
|
|
@ -9,22 +9,36 @@ fn main() {
|
|||
|
||||
println!("cargo:rerun-if-changed={}", webui_src_dir.to_str().unwrap());
|
||||
|
||||
// Run "npm run build" in the webui directory
|
||||
let output = Command::new("npm")
|
||||
.arg("run")
|
||||
.arg("build")
|
||||
.current_dir(webui_dir)
|
||||
.output()
|
||||
.expect("Failed to execute npm run build");
|
||||
// Run "npm install && npm run build" in the webui directory
|
||||
for (cmd, args) in [
|
||||
("npm", ["install"].as_slice()),
|
||||
("npm", ["run", "build"].as_slice()),
|
||||
] {
|
||||
// Run "npm install" in the webui directory
|
||||
let output = Command::new(cmd)
|
||||
.args(args)
|
||||
.current_dir(webui_dir)
|
||||
.output()
|
||||
.unwrap_or_else(|_| {
|
||||
panic!(
|
||||
"Failed to execute {} {} in {:?}",
|
||||
cmd,
|
||||
args.join(" "),
|
||||
webui_dir
|
||||
)
|
||||
});
|
||||
|
||||
if !output.status.success() {
|
||||
panic!(
|
||||
"npm run build failed with output: {}",
|
||||
String::from_utf8_lossy(&output.stderr)
|
||||
);
|
||||
if !output.status.success() {
|
||||
panic!(
|
||||
"{} {} failed with output: {}",
|
||||
cmd,
|
||||
args.join(" "),
|
||||
String::from_utf8_lossy(&output.stderr)
|
||||
);
|
||||
}
|
||||
|
||||
// Optionally print the stdout output if you want to see the build logs
|
||||
println!("{}", String::from_utf8_lossy(&output.stdout));
|
||||
}
|
||||
|
||||
// Optionally print the stdout output if you want to see the build logs
|
||||
println!("{}", String::from_utf8_lossy(&output.stdout));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue