stages: - prepare - build - deploy workflow: rules: - if: $CI_EXTERNAL_PULL_REQUEST_IID - if: $CI_COMMIT_TAG - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH variables: GIT_SUBMODULE_STRATEGY: recursive simpleCheck: stage: prepare script: echo PREPARE tags: - linuxX64 # ---- Linux builds ---- buildLinux: stage: build when: manual allow_failure: false script: - ./linuxBuild.sh tags: - linuxX64 linuxPublishToSnapshot: stage: deploy script: - ./linuxBuild.sh - ./linuxBuildAndPublish.sh rules: - if: '$CI_COMMIT_BRANCH == "master"' - allow_failure: false needs: - job: buildLinux tags: - linuxX64 # ---- Mac builds ---- buildMac: stage: build when: manual allow_failure: false script: - ./macBuild.sh tags: - macos macPublishToSnapshot: stage: deploy script: - ./macBuild.sh - ./macBuildAndPublishSnapshot-bindings.sh - ./macBuildAndPublishSnapshot-delegated.sh rules: - if: '$CI_COMMIT_BRANCH == "master"' - allow_failure: false needs: - job: buildMac tags: - macos # ---- Windows builds ---- buildWindows: stage: build when: manual allow_failure: false script: - C:\msys64\msys2_shell.cmd -msys -here windowsBuild-delegated.sh - C:\msys64\msys2_shell.cmd -msys -here windowsBuild-pure.sh tags: - windowsX64 windowsPublishToSnapshot: stage: deploy script: - C:\msys64\msys2_shell.cmd -msys -here windowsBuildAndPublish-delegated.sh - C:\msys64\msys2_shell.cmd -msys -here windowsBuildAndPublish-pure.sh rules: - if: '$CI_COMMIT_BRANCH == "master"' - allow_failure: false needs: - job: buildWindows tags: - windowsX64