default: artifacts: expire_in: 1 day stages: - build - test - testcov - build_emscripten - deploy build_code: stage: build image: "registry.gitlab.com/mergul/bubel-ecs:latest" script: - /bin/bash /compile_ecs.sh artifacts: expire_in: 1h paths: - binaries allow_failure: true test_dmd_debug: stage: test image: frolvlad/alpine-glibc script: - binaries/dmd_debug_unittest artifacts: reports: junit: test_report.xml test_dmd: stage: test image: frolvlad/alpine-glibc script: - binaries/dmd_release_unittest artifacts: reports: junit: test_report.xml test_dmd_betterC: stage: test image: frolvlad/alpine-glibc script: - binaries/dmd_release_unittest_bc artifacts: reports: junit: test_report.xml coverage_test_dmd: stage: testcov image: "registry.gitlab.com/mergul/bubel-ecs/curl:latest" needs: ["test_dmd_debug", "build_code"] dependencies: - build_code script: - mkdir reports - binaries/dmd_unittest_cov after_script: - bash <(curl -s https://codecov.io/bash) -s reports -t 1a0c0169-a721-4085-8252-fed4755dcd8c build_wasm: stage: build image: "registry.gitlab.com/mergul/bubel-ecs:latest" script: - /bin/bash /compile_wasm.sh - /bin/bash /gen_doc.sh artifacts: expire_in: 1h paths: - build rules: - if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "master" || $CI_COMMIT_BRANCH == "master"' when: always allow_failure: true emscripten: stage: build_emscripten image: "registry.gitlab.com/mergul/bubel-ecs/emscripten:latest" dependencies: - build_wasm script: - /bin/bash /build.sh rules: - if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "master" || $CI_COMMIT_BRANCH == "master"' when: always artifacts: expire_in: 1h paths: - wasm pages: stage: deploy image: frolvlad/alpine-glibc dependencies: - emscripten script: - mkdir public - cp -r wasm/* public/ - cp -r build/public/* public/ rules: - if: '$CI_COMMIT_BRANCH == "master"' when: always artifacts: expire_in: 1h paths: - public