-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.gitlab-ci.yml
86 lines (75 loc) · 2.18 KB
/
.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# This file is a template, and might need editing before it works on your project.
# Official language image. Look for the different tagged releases at:
# https://hub.docker.com/r/library/rust/tags/
image: "rust:latest"
stages:
- build
- test
- image
# Optional: Pick zero or more services to be used on all builds.
# Only needed when using a docker container to run your tests in.
# Check out: http://docs.gitlab.com/ce/ci/docker/using_docker_images.html#what-is-a-service
#services:
# - mysql:latest
# - redis:latest
# - postgres:latest
# Optional: Install a C compiler, cmake and git into the container.
# You will often need this when you (or any of your dependencies) depends on C code.
before_script:
- apt-get update -yqq
- apt-get install -yqq optipng imagemagick
build:
stage: build
script:
- rustc --version && cargo --version # Print version info for debugging
- cargo build
- cargo build --examples
- cargo build --release
- cargo build --examples --release
artifacts:
paths:
- target/
unit-tests-release:
stage: test
script:
- rustc --version && cargo --version # Print version info for debugging
- cargo test --all --verbose --release
artifacts:
paths:
- image.ray_not_black.png
- lib.png_test.png
- lib.png_test_2.png
- lib.sparse_png_test.png
unit-tests-debug:
stage: test
script:
- rustc --version && cargo --version # Print version info for debugging
- cargo test --all --verbose
example-dawn:
stage: test
script:
- rustc --version && cargo --version # Print version info for debugging
- cargo run --example dawn --release
artifacts:
paths:
- dawn.png
example-laser-rainbow:
stage: test
script:
- rustc --version && cargo --version # Print version info for debugging
- cargo run --example laser-rainbow --release
artifacts:
paths:
- laser-rainbow.png
image-compression:
stage: image
script: "mkdir image; for i in *.png; do optipng $i -out image/$i ; done"
artifacts:
paths:
- image/
image-thumbnailing:
stage: image
script: "mkdir image; for i in *.png; do convert $i -resize 1680x720 image/${i%.*}.jpg ; done"
artifacts:
paths:
- image/