Commit Graph

35 Commits

Author SHA1 Message Date
Trinity Pointard 0438a3da93 move integration tests to scripts 2021-10-28 11:28:22 -04:00
eta 4fa0122dde Improve and future-proof the `arti` CLI
This switches out `arti`'s argument-parsing library with `clap`, which
is a lot more featureful (and very widely used within the Rust
ecosystem). We also now use a lot of `clap`'s features to improve the
CLI experience:

- The CLI now expects a subcommand (currently, either "help", or "proxy"
  for the existing SOCKS proxy behaviour). This should let us add
  additional non-SOCKS-proxy features to arti in future.
- `clap` supports default values determined at runtime, so the way the
  default config file is loaded was changed: now, we determine the
  OS-specific path for said file before invoking `clap`, so the help
  command can show it properly.
  - The behaviour of `tor_config` was also changed; now, one simply
    specifies a list of configuration files to load, together with
    whether they're required.
  - That function also way overused generics; this has been fixed.
- Instead of using the ARTI_LOG environment variable to configure
  logging, one now uses the `-l, --log-level` CLI option.
  (The intent is for this option to be more discoverable by users.)
- The `proxy` subcommand allows the user to override the SOCKS port used
  on the CLI without editing the config file.
2021-10-27 19:11:48 +01:00
Nick Mathewson 7c7a388e28 Rename tor_client/arti_tor_client to arti_client.
Solves a name conflict with the existing tor_client create.

Closes #130.
2021-10-21 14:22:11 -04:00
Nick Mathewson 290fe83671 Move "cargo audit" invocation into a script. 2021-10-17 10:41:52 -04:00
Trinity Pointard 9c275a04ee update ctrlc and der
ctrlc had rustsec issues, der was yanked
2021-10-06 23:55:08 +02:00
Nick Mathewson 0c0a057bef In CI, *temporarily* ignore RUSTSEC-2021-0119 in nix crate.
The affected API (getgrouplist) isn't one that we use, directly or
transitively.  We can't just upgrade immediately, since the ctrlc
crate is currently stuck on the older version of nix.
2021-10-01 09:24:38 -04:00
Trinity Pointard e05a2ae51d add basic integration test 2021-09-27 17:35:32 +02:00
Trinity Pointard 0493c2b830 try use cache and make MacOS bin available as artifact 2021-09-20 17:48:13 +02:00
Trinity Pointard 78b6a36671 add reproducible builds for MacOS 2021-09-20 17:48:12 +02:00
Nick Mathewson 8bf394b0d5 Move version-controlled Cargo.lock to /.
Previously I'd hoped to have it only apply to reproducible builds,
but the work of keeping it up-to-date and checking it for drift
seems to have been tripping us up.  Let's try doing it the other way
for now, and we'll see how that goes.
2021-09-20 11:37:11 -04:00
Trinity Pointard 193f518b6b CI: make fail when new deps not in misc/Cargo.lock
Currently adding new deps can cause builds to not be reproducibles
because that new dependancies don't have their versions frozen in
misc/Cargo.lock.
This make so CI reject commits in that situation, with a message telling
what to do to fix the issue.
2021-09-12 10:20:53 +02:00
Trinity Pointard e69d2d45bc run CI only on amd64 runners 2021-09-08 22:15:20 +02:00
Daniel Eades c2c6a04309 run clippy on test modules 2021-09-08 17:28:40 +02:00
Trinity Pointard 9db9c0c90f use a TPA runner so shm is big enough 2021-08-31 18:28:53 +02:00
Trinity Pointard 3df2fd7a54 build repro only on schedule
build takes about 23 minutes, it's quiet long for something that is
usefull mostly on releases
2021-08-29 16:36:28 +02:00
Trinity Pointard 33474537ab make reproducible Windows build
Linux hash   : c024778da162cda77869c46d162729d012a7758bee973bc83fa78c964d080903
Windows hash : e97e171740b889b7e3722b79c3763177174baac7fa34a5c3615c999298e1bc48
2021-08-29 13:48:33 +02:00
Nick Mathewson 25d058e074 Fix for CI script.
It looks like there was a directory here I didn't update when I
moved all the crates into crates/
2021-08-27 10:18:20 -04:00
Trinity Pointard eb0522fe63 fix segfault on static bin
see https://github.com/rusqlite/rusqlite/issues/914

sha256: 684ebc4b8c270fc63beba185f6c54ceeb98734f13aa7aeca9b64acb33432a21c
2021-08-25 20:37:58 +02:00
Trinity Pointard 540302851e make arti availlable as build artifact
and make builds reproducible
sha256sum: f141c54929a43a31b9ed6b529f6f863aace87f7406818b2f8ffe2b7a5e2803fb
2021-08-25 18:16:45 +02:00
Nick Mathewson 9f61a392be Use cargo audit with "-D warnings". 2021-07-21 09:33:32 -04:00
Trinity Pointard c6fef98a83 attempt to add cargo audit to CI 2021-07-20 23:39:23 +02:00
Nick Mathewson 5a3e735e4b Try some tweaks to .gitlab-ci.yml
The "--all" flag is deprecated in favor of "--workspace", which
isn't actually needed here.

"--all-features" catches a few things that we want to make sure
we're catching.

Let's try out cargo doc and make sure that passes too.
2021-05-25 16:18:00 -04:00
Nick Mathewson 0cfff7e0e4 CI target to build with async-std. Running tests is harder, alas 2021-03-02 12:21:38 -05:00
Nick Mathewson b33bc268d5 My rustfmt is up-to-date with the gitlab ci one again 2021-03-01 07:42:45 -05:00
Nick Mathewson 66c901265d Disable our cargo fmt test on CI for now. 2021-02-26 09:59:23 -05:00
Nick Mathewson 8301ae699b gitlab-ci.yml -- on rust-latest, turn all clippy warnings into errors. 2020-12-07 16:18:21 -05:00
Nick Mathewson 6f286ba7c2 fixup! fixup! fixup! Try adding "test --all" and "fmt" and "clippy". 2020-12-07 14:04:05 -05:00
Nick Mathewson b5f17167c2 fixup! fixup! Try adding "test --all" and "fmt" and "clippy". 2020-12-07 12:51:03 -05:00
Nick Mathewson 09849c64f8 fixup! Try adding "test --all" and "fmt" and "clippy". 2020-12-07 12:41:28 -05:00
Nick Mathewson fd74f6c13f Try adding "test --all" and "fmt" and "clippy". 2020-12-07 12:16:00 -05:00
Alexander Færøy 1923c7820f Let's try explicit target? 2020-12-07 08:35:02 -05:00
Alexander Færøy dee4d7bf72 No need to install Husky hooks on CI. 2020-12-07 08:35:02 -05:00
Alexander Færøy 6fa8f2c0f5 No need to install libsqlite3-dev on CI servers. 2020-12-06 16:01:06 +00:00
Alexander Færøy 3bccafd6b9 Also install libsqlite3-dev. 2020-12-06 01:05:15 +00:00
Alexander Færøy 128f8c31c0 Add Gitlab CI support. 2020-12-06 00:16:34 +00:00