Commit Graph

31 Commits

Author SHA1 Message Date
cyqsimon
3f649590f7 CI: Enable more cross-compiled builds (#401)
* CI: Enable more aarch64 builds

* Use cross for linux-aarch64-* builds

* Use `macos-14` explicitly for now

- https://github.com/orgs/community/discussions/116911
- https://github.blog/changelog/2024-04-01-macos-14-sonoma-is-generally-available-and-the-latest-macos-runner-image/

* Add targets in release.yaml

* Write changelog

* Fix typo

* Passthrough `BANDWHICH_GEN_DIR` into cross container

* Add armv7 targets
2024-04-16 14:39:35 +08:00
cyqsimon
d9fa0894a3 Temporarily disable UI tests (#406)
* Temporarily disable UI tests

- Too many sporadic errors occlude actual problems; see #400
- These tests will be re-enabled once the big refactor is complete

* Write changelog
2024-04-16 10:36:32 +08:00
dependabot[bot]
4c595b7a79 chore(deps): bump actions/upload-artifact in the github-actions group (#404)
Bumps the github-actions group with 1 update: [actions/upload-artifact](https://github.com/actions/upload-artifact).


Updates `actions/upload-artifact` from 3 to 4
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-15 22:58:15 +08:00
cyqsimon
1ce0311c23 CI: Remove musl-tools install step (#402)
* Test: what if we don't install MUSL tools?

* Write changelog
2024-04-15 18:04:55 +08:00
cyqsimon
86a17cb002 CI refactor (#399)
* CI refactor

* Don't error when no bandwhich stderr files are found

* Specify explicit target when running tests

* Fix typo

* Set `--color never` correctly for tests

* Unset `--color never`

- because the extraneous escape characters don't seem to be related to colours

* Write changelog
2024-04-15 15:07:54 +08:00
Felix Obenhuber
9354683481 Enable Android build (#384)
* Support build for target_os android

The target_os `android` is quite similar to `linux` but must be
mentioned in the guards explicitly. Tested for target
`aarch64-linux-android`.

* Add target aarch64-linux-android to ci

Use `cross` for building target `aarch64-linux-android`. In the `ci`
workflow the matrix branch of `os` `ubuntu-latest` is used because the
matrix organization is host os centric instead of target.

Releases are build with `cross` for target `aarch64-linux-android`.

Install `cross` if needed for a run. At the time of writing the latest
release of `cross` can't build binaries for target
`aarch64-linux-android` and it's common sense that the latest git tag or
`master` shall be used [1].

[1] https://github.com/cross-rs/cross/issues/1222

* Add android related readme section
2024-04-02 17:39:24 +08:00
cyqsimon
53cfcd0c15 Upload changed snapshots from all dirs 2023-12-08 16:44:36 +08:00
cyqsimon
5d2ee96900 CI: amend #306
- I only installed npcap, but forgot to run the actual tests 🤦
2023-10-16 17:06:00 +08:00
cyqsimon
df171725cc CI: allow Windows tests to run if PR source is own repo (#306) 2023-10-16 16:37:44 +08:00
cyqsimon
4a27da5d56 CI: upload binaries as long as build step succeeds 2023-10-09 01:47:01 +08:00
cyqsimon
6989ce222a CI: allow manual triggering 2023-10-09 01:26:19 +08:00
cyqsimon
8c6be282a5 CI: make insta generate new snapshots in CI
See https://github.com/mitsuhiko/insta/issues/411
2023-10-08 10:25:54 +08:00
cyqsimon
18721fcef6 CI: set --color=never for cargo-insta 2023-10-08 02:30:04 +08:00
cyqsimon
138af25943 CI: test using cargo-insta 2023-10-08 01:19:16 +08:00
cyqsimon
47158ac3c7 CI: override default run condition for failed test snapshots upload step 2023-10-07 23:52:03 +08:00
cyqsimon
53f6feae17 CI: upload failed test snapshots 2023-10-07 23:43:19 +08:00
cyqsimon
4d1f62b46a CI: Use checkout v4 2023-10-07 23:18:56 +08:00
cyqsimon
e618fea18e CI: Auto fetch MSRV from Cargo.toml (#300)
* CI: Auto fetch MSRV from Cargo.toml

* CI: Forgot to checkout before fetching MSRV
2023-10-07 23:16:51 +08:00
cyqsimon
e1bdc4c475 Disable tests on Windows for PRs 2023-08-31 21:58:32 +08:00
cyqsimon
dab58d18f7 Fix stuck CI on Windows 2023-08-30 11:09:29 +08:00
cyqsimon
872c7a286e Set correct MSRV (1.70.0) 2023-08-30 11:09:29 +08:00
cyqsimon
a8cdf18c9c Test MSRV 2023-08-30 11:09:29 +08:00
cyqsimon
9338067b0b Install pcap on Windows 2023-08-30 11:09:29 +08:00
cyqsimon
f37f70b074 Don't use mapfile to be compatible with Bash 3 on MacOS
This does assume that the path `target/*/build/bandwhich-*/stderr` contains no
spaces, but it should be fine.
2023-08-30 11:09:29 +08:00
cyqsimon
9c11b59c55 Improve build.rs STDERR logging
- Remove `set +x`
- Use GitHub Action's log grouping feature
  - See https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions
2023-08-30 11:09:29 +08:00
cyqsimon
e57bb52981 Show build.rs STDERR for all targets 2023-08-30 11:09:29 +08:00
cyqsimon
04e3a2aac6 CI: switch to dtolnay/rust-toolchain 2023-08-25 14:46:11 +08:00
cyqsimon
ef67b325d5 CI: disable fail fast 2023-08-25 14:06:56 +08:00
cyqsimon
552d982c8f CI: build should come before clippy 2023-08-25 11:38:44 +08:00
cyqsimon
ff044d42e2 Update CI 2023-08-25 11:33:02 +08:00
remgodow
58187b49d1 chore(ci): build binaries using Github actions. (#181)
* Remove connections vector from OpenSockets, use common OpenSockets implementation based on sysinfo and netstat2.

* Replace termion backend with crossterm, which works on Windows as well.

* More fixes for windows build.

* Remove tui default-features (termion), update unit tests for crossterm.

* Windows compilation fixes.

* Remove unused get_open_sockets implementations for linux and mac. Fix formatting.

* Add build.rs for windows to download and extract Packet.lib from npcap SDK.

* Resolve Cargo.lock after merging main.

* fix(tests): adjust snapshots new location of the dns resolution

* style(clippy): clippy

* style(clippy): remove dead code

* Test github actions.

* Fix action syntax.

* Fix "Show build.rs stderr" step.

* Add artifact upload step.

* style(clippy): use write_all in build.rs

* Fix path in upload binary step

* style(clippy): remove unused import added by Intellij

* Separate upload artifacts actions for Windows.

* Troubleshooting windows artifacts upload.

* Fix typo

* Bump upload-artifact to v2.

* fix(review): change branch name to main, remove nightly

* feat(infra): test builds on nightly rust

* fix(infra): remove debug logs from ci action

* feat(infra): release github action

* fix: merge issues

* fix(release): add linux generic

* feat(infra): build musl on release

* feat(infra): fix release verioning

* feat(infra): another try for fixing versioning

* fix(infra): use version from version step instead of release id

* fix(infra): fix add macos target variable, use --target for cargo build

* fix(infra): add musl-tools required by musl target

* fix(infra): fix action

* fix(infra): fix action

* fix(build): trigger build-release action when release has been created on github, tar executable without directories

* fix(debug): remove actions branch

Co-authored-by: Aram Drevekenin <aram@poor.dev>
2020-09-20 12:22:53 +02:00