diff options
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r-- | .gitlab-ci.yml | 181 |
1 files changed, 181 insertions, 0 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..d561626 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,181 @@ +stages: + - build + - test + - deploy + +.build_template: &build_definition + stage: build + artifacts: + paths: + - build/ + - .lock-waf* + +.test_template: &test_definition + stage: test + artifacts: + paths: + - build/coverage + + +arm32_dbg: + <<: *build_definition + image: lv2plugin/debian-arm32 + script: python ./waf configure build -dsT + variables: + CC: "arm-linux-gnueabihf-gcc" + CXX: "arm-linux-gnueabihf-g++" + +test:arm32_dbg: + <<: *test_definition + image: lv2plugin/debian-arm32 + script: python ./waf test --wrapper=qemu-arm + dependencies: + - arm32_dbg + + +arm32_rel: + <<: *build_definition + image: lv2plugin/debian-arm32 + script: python ./waf configure build -sT + variables: + CC: "arm-linux-gnueabihf-gcc" + CXX: "arm-linux-gnueabihf-g++" + +test:arm32_rel: + <<: *test_definition + image: lv2plugin/debian-arm32 + script: python ./waf test --wrapper=qemu-arm + dependencies: + - arm32_rel + + +arm64_dbg: + <<: *build_definition + image: lv2plugin/debian-arm64 + script: python ./waf configure build -dsT + variables: + CC: "aarch64-linux-gnu-gcc" + CXX: "aarch64-linux-gnu-g++" + +test:arm64_dbg: + <<: *test_definition + image: lv2plugin/debian-arm64 + script: python ./waf test --wrapper=qemu-aarch64 + dependencies: + - arm64_dbg + + +arm64_rel: + <<: *build_definition + image: lv2plugin/debian-arm64 + script: python ./waf configure build -sT + variables: + CC: "aarch64-linux-gnu-gcc" + CXX: "aarch64-linux-gnu-g++" + +test:arm64_rel: + <<: *test_definition + image: lv2plugin/debian-arm64 + script: python ./waf test --wrapper=qemu-aarch64 + dependencies: + - arm64_rel + + +x64_dbg: + <<: *build_definition + image: lv2plugin/debian-x64 + script: python ./waf configure build -dsT + +test:x64_dbg: + <<: *test_definition + image: lv2plugin/debian-x64 + script: python ./waf test + dependencies: + - x64_dbg + + +x64_rel: + <<: *build_definition + image: lv2plugin/debian-x64 + script: python ./waf configure build -sT + +test:x64_rel: + <<: *test_definition + image: lv2plugin/debian-x64 + script: python ./waf test + dependencies: + - x64_rel + + +mac_dbg: + <<: *build_definition + script: python ./waf configure build -dsT --no-coverage + tags: + - macos + +test:mac_dbg: + <<: *test_definition + script: python ./waf test + dependencies: + - mac_dbg + tags: + - macos + + +mac_rel: + <<: *build_definition + script: python ./waf configure build -sT --no-coverage + tags: + - macos + +test:mac_rel: + <<: *test_definition + script: python ./waf test + dependencies: + - mac_rel + tags: + - macos + + +win_dbg: + <<: *build_definition + script: + - python ./waf configure build -dT --no-coverage + tags: + - windows + +test:win_dbg: + <<: *test_definition + script: python ./waf test + dependencies: + - win_dbg + tags: + - windows + + +win_rel: + <<: *build_definition + script: python ./waf configure build -T --no-coverage + tags: + - windows + +test:win_rel: + <<: *test_definition + script: python ./waf test + dependencies: + - win_rel + tags: + - windows + + +pages: + stage: deploy + script: mv build/coverage/ public/ + dependencies: + - test:x64_dbg + artifacts: + expire_in: 30 days + paths: + - public + only: + - master |