summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
Commit message (Collapse)AuthorAgeFilesLines
* add integration test and fill semver_statustrinity-1686a2022-03-141-2/+2
|
* tests/chutney: Merge chutney-launching scriptsNick Mathewson2022-03-101-1/+1
| | | | | | | | | Formerly, the "launch a chutney network" code was duplicated in "setup" and "arti-bench", since "setup" always launched an arti proxy, while "arti-bench" didn't want that functionality. Now the "setup" script launches an arti proxy conditionally, depending on whether the "proxy" argument is given.
* Reproducible build: Bump to Rust 1.59 and Alpine 3.15Nick Mathewson2022-03-041-1/+2
| | | | | | | | | | | | | | The Rust upgrade is necessary since our Cargo.lock file now requires `ed25519` 1.4.0, which requires edition2021, which requires Rust 1.56 or later. The Alpine upgrade is opportunistic: we might as well. I've also added comments to remind us to keep the .gitlab-ci.yml and docker_reproducible_build files in sync, since my first version of this commit messed that up. Closes #376.
* attempt at making CI fastertrinity-1686a2022-02-251-6/+7
| | | | | | | | | Move rust-nightly to stage test so it runs in parallel with coverage, which are the two longest jobs, and currently run in sequence. Don't document dependancies, should make the step about 50% faster Use about 12M of cache to not recompile grcov each time Don't compile grcov with coverage, we don't need it, it's probably slower both to compile and execute
* rename *.sh scripts to bare nameIan Jackson2022-02-181-7/+7
| | | | | | | | | As per #309 Update all references. There is one remaining hit for git-grep '\.sh\b' namely "build.sh" in maint/reproducible_build, which I think is the build script for osxcross - ie, an external project.
* Temporarily allow failures in the coverage CI.Nick Mathewson2022-02-091-0/+1
| | | | Right now it's failing on nightly through no fault of our own.
* Merge branch 'eta/arti-bench-ci' into 'main'eta2022-02-031-1/+7
|\ | | | | | | | | arti-bench: run the benchmarks in CI, and keep the results See merge request tpo/core/arti!283
| * arti-bench: run the benchmarks in CI, and keep the resultseta2022-02-031-1/+7
| | | | | | | | | | This adds `arti-bench` to the `integration` job in the CI pipelines, and keeps around the JSON benchmark output for later comparison.
* | Remove file ending of shellcheck_all and downgrade_dependencies scriptDaniel Schischkin2022-02-031-2/+3
|/
* Merge branch 'add-final-newline-force' into 'main'Nick Mathewson2022-02-031-1/+8
|\ | | | | | | | | Add editorconfig to force some rules (Final Newline) See merge request tpo/core/arti!289
| * Add editorconfig to force some rules (Final Newline)Daniel Schischkin2022-02-031-1/+8
| |
* | Temporarily disable some clippy lints on nightlyIan Jackson2022-02-021-1/+5
|/
* Merge branch 'ci-rustup-show' into 'main'eta2022-01-311-0/+4
|\ | | | | | | | | CI: Add "rustup show" to show compiler versions in logs See merge request tpo/core/arti!276
| * CI: Add "rustup show" to show compiler versions in logsIan Jackson2022-01-311-0/+4
| | | | | | | | | | | | Trying to debug the nightly failure here https://gitlab.torproject.org/Diziet/arti/-/pipelines/25417 and I can't seem to repro it.
* | Merge branch 'dedup-cobertura' into 'main'Nick Mathewson2022-01-311-1/+1
|\ \ | |/ |/| | | | | add postprocessing script to deduplicate cobertura reports See merge request tpo/core/arti!272
| * add postprocessing script to deduplicate cobertura reportstrinity-1686a2022-01-281-1/+1
| |
* | Remove redundancy/code duplication and switch to shellcheck_all.sh scriptDaniel Schischkin2022-01-291-1/+1
| |
* | Undo remove document-private-items argDaniel Schischkin2022-01-281-1/+1
| |
* | Remove argument document-private-items from nightly buildDaniel Schischkin2022-01-281-1/+1
| |
* | Add missing file ending for downgrade_dependencies in gitlab ciDaniel Schischkin2022-01-281-1/+1
| |
* | Add shellcheck step into build stageDaniel Schischkin2022-01-281-0/+6
|/
* Improve `coverage` job in CIarturomf942022-01-281-4/+1
|
* Merge branch 'rtcompat-refactor' into 'main'eta2022-01-271-2/+3
|\ | | | | | | | | | | | | Refactor the tor-rtcompat API. Closes #301 and #300 See merge request tpo/core/arti!263
| * CI: Fix async-std taskNick Mathewson2022-01-261-2/+3
| | | | | | | | | | | | | | | | | | Previously it didn't enable any TLS provider, since we made native-tls optional a few commits ago. Now it enables rustls, so that rustls also gets a quick check along with async-std. I've also switched this test to use "cargo clippy" in place of "cargo test" because it's a strict superset.
* | Merge branch 'coverage-tracking' into 'main'eta2022-01-271-0/+25
|\ \ | |/ |/| | | | | | | | | Add test coverage tracking with CI/CD Closes #250 See merge request tpo/core/arti!221
| * Install bs4 in coverage jobArturo Marquez2022-01-261-0/+2
| |
| * Use `maint/with_coverage.sh` in coverage jobArturo Marquez2022-01-261-5/+6
| |
| * Remove lcov from coverage jobArturo Marquez2022-01-071-3/+0
| |
| * Change output type to `cobertura`Arturo Marquez2022-01-071-8/+4
| |
| * Use python3.9 in coverage jobArturo Marquez2022-01-061-1/+1
| |
| * Add pip3 show to coverage jobArturo Marquez2022-01-061-0/+1
| |
| * Add pip3 to coverage jobArturo Marquez2022-01-061-1/+2
| |
| * Remove build in coverage jobArturo Marquez2022-01-061-1/+0
| |
| * Use stable image and download nightly in coverageArturo Marquez2022-01-061-1/+3
| | | | | | | | | | Following suggestion here: `https://gitlab.torproject.org/tpo/core/arti/-/issues/250#note_2764010`
| * Add cargo build to coverage jobArturo Marquez2022-01-061-0/+1
| |
| * Change targetArturo Marquez2022-01-061-3/+3
| |
| * Add `coverage` jobArturo Marquez2022-01-061-0/+25
| | | | | | | | | | | | Following instructions at: `https://www.collabora.com/news-and-blog/blog/2021/03/24/rust-integrating-llvm-source-base-code-coverage-with-gitlab/`
* | Move our "minimal versions" code to a script.Nick Mathewson2022-01-071-2/+1
|/ | | | | | | | | | Previously this code was in .gitlab-ci.yml, but for the purposes of testing my fix for #275, it turned out to be much better to have it in a script of its own. Also, we now need to update our "quote" second-order dependency, since otherwise our minimal first-order dependencies won't build correctly.
* don't deny 'println' in examples in CIDaniel Eades2021-12-091-2/+2
|
* update CI to test all targetsDaniel Eades2021-12-091-2/+2
|
* update rusqlite and revert minimal version changeTrinity Pointard2021-12-091-2/+1
|
* Temporarily change minimal-versions CI to use Rust 1.56Nick Mathewson2021-12-081-1/+2
| | | | | | Because of arti#257, compatibility with earlier versions of rust are broken: we hope this is temporary, but fixing it will probably require a new version of rusqlite.
* normalize --target to better reuse build artifactsTrinity Pointard2021-11-121-3/+3
| | | | | | | testing was done on a different target than building, so everything was compiled twice (actually, it's the same target, but rust doesn't realize that) makes build+test about 20% faster
* try to cache cargo-auditTrinity Pointard2021-11-121-1/+5
|
* In rust-nightly CI, forbid debugging prints.Nick Mathewson2021-11-041-1/+2
| | | | | | | | | | | | | | | | | | | | This patch makes the rust-nightly CI task fail if it detects any dbg!(), println!(), or eprintln!() calls in production code. Because of clippy limitations, it may also gripe about calls to these macros in our tests. The preferred workarounds are to either instead. Both are acceptable. We're doing this check in CI rather than unconditionally with clippy directives, since we often want to have these calls in our code temporarily while we're developing. Some day we might want this test to go into a pre-push hook. This patch also adds #![allow()] directives for println!() and eprintln!() in the arti crate. Since that one isn't a library, it's okay for it to speak to stdout/stderr. Closes #218.
* minimal-versions: switch to 1.53.Nick Mathewson2021-10-311-1/+1
|
* add ci check for deps minimal versions and msrvTrinity Pointard2021-10-311-0/+12
|
* move integration tests to scriptsTrinity Pointard2021-10-281-8/+2
|
* Improve and future-proof the `arti` CLIeta2021-10-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* Rename tor_client/arti_tor_client to arti_client.Nick Mathewson2021-10-211-1/+1
| | | | | | Solves a name conflict with the existing tor_client create. Closes #130.