.cirrus.yml -rw-r--r-- 2 KiB
1# Check that formatting is correct using nightly rust.
2fmt_task:
3 container:
4 image: rustlang/rust:nightly
5 install_script: rustup component add rustfmt-preview
6 check_script: cargo fmt -- --check
7
8# Run clippy.
9clippy_task:
10 container:
11 image: rust:latest
12 cargo_cache:
13 folder: $CARGO_HOME/registry
14 fingerprint_script: cat Cargo.lock
15 install_script: rustup component add clippy
16 check_script: cargo clippy
17 before_cache_script: rm -rf $CARGO_HOME/registry/index
18
19# Build and test.
20test_task:
21 matrix:
22 - container:
23 image: rust:latest
24 - allow_failures: true
25 container:
26 image: rustlang/rust:nightly
27 cargo_cache:
28 folder: $CARGO_HOME/registry
29 fingerprint_script: cat Cargo.lock
30 build_script: cargo build
31 test_script: cargo test
32 before_cache_script: rm -rf $CARGO_HOME/registry/index
33
34# Publish Cargo releases
35publish_task:
36 only_if: $CIRRUS_TAG != ''
37 depends_on:
38 - fmt
39 - clippy
40 - test
41 container:
42 image: rust:latest
43 env:
44 CARGO_TOKEN: ENCRYPTED[24c3996bcead2ad8411ef58926d1efd19a08dcdfd99dbf21f900155bd676908db322dec354b026f9ba3e5094e789c6d1]
45 cargo_cache:
46 folder: $CARGO_HOME/registry
47 fingerprint_script: cat Cargo.lock
48 publish_script: cargo publish --no-verify --token "$CARGO_TOKEN"
49
50# Build releases
51tag_docker_builder:
52 only_if: $CIRRUS_TAG != ''
53 env:
54 DOCKER_USERNAME: ENCRYPTED[e27aa1f15f278868b84497fd0fbd007127251ed44de671de28cee8c0669ff5b886980a409da9bae8c5cff6dbe88fe289]
55 DOCKER_PASSWORD: ENCRYPTED[491d248564335b8760a65f9c69f970d3ba6bf9ba169f9e6f93836e8a7360d13f421afd4630f71d8981182da0bf26c2dd]
56 build_script: docker build --tag jasonwhite0/rudolfs:$CIRRUS_TAG --tag jasonwhite0/rudolfs:latest .
57 login_script: echo "$DOCKER_PASSWORD" | docker login --username "$DOCKER_USERNAME" --password-stdin
58 push_script: docker push jasonwhite0/rudolfs:$CIRRUS_TAG && docker push jasonwhite0/rudolfs:latest
59
60# Build the dockerfile, but don't publish it.
61build_docker_builder:
62 only_if: $CIRRUS_TAG == ''
63 build_script: docker build .