stages: - build - test - deploy variables: GIT_SUBMODULE_STRATEGY: normal .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