diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml new file mode 100644 index 0000000..77295b7 --- /dev/null +++ b/.github/workflows/checks.yml @@ -0,0 +1,79 @@ +name: "Checks" + +on: + pull_request: + +jobs: + check: + name: "Cargo check" + runs-on: "ubuntu-latest" + steps: + - name: "Check out the repo" + uses: actions/checkout@v3 + + - uses: "actions-rs/toolchain@v1" + with: + profile: "minimal" + toolchain: "stable" + override: true + + - uses: "actions-rs/cargo@v1" + with: + command: "check" + + test: + name: "Cargo test" + runs-on: "ubuntu-latest" + steps: + - name: "Check out the repo" + uses: actions/checkout@v3 + + - uses: "actions-rs/toolchain@v1" + with: + profile: "minimal" + toolchain: "stable" + override: true + + - uses: "actions-rs/cargo@v1" + with: + command: "test" + + fmt: + name: "Cargo format" + runs-on: "ubuntu-latest" + steps: + - name: "Check out the repo" + uses: actions/checkout@v3 + + - uses: "actions-rs/toolchain@v1" + with: + profile: "minimal" + toolchain: "stable" + override: true + + - run: "rustup component add rustfmt" + + - uses: "actions-rs/cargo@v1" + with: + command: "fmt" + args: "--all -- --check" + + clippy: + name: "Cargo clippy" + runs-on: "ubuntu-latest" + steps: + - name: "Check out the repo" + uses: actions/checkout@v3 + + - uses: "actions-rs/toolchain@v1" + with: + profile: "minimal" + toolchain: "stable" + override: true + + - run: "rustup component add clippy" + + - uses: "actions-rs/cargo@v1" + with: + command: "clippy" + args: "-- -D warnings" \ No newline at end of file diff --git a/src/lib.rs b/src/lib.rs index 7df6779..af449c4 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -56,11 +56,11 @@ pub async fn run() -> Result<(), &'static str> { timeout(my_duration, wait_for(args.addresses)).await }); - if let Err(_) = thread.join().unwrap().await { + if thread.join().unwrap().await.is_err() { return Err("Connection timeout, could not connect to the addresses."); } - Command::new(args.cmd[0].to_string()) + Command::new(&args.cmd[0]) .args(&args.cmd[1..]) .spawn() .expect("Failed to run the command.");