1 # CI is organized into stages so that if early stages fail
2 # the later ones are not run.
4 # Initial test build for checking simple compilation and getting regressiontest repo
6 # Configuration for building and testing
8 # Build GROMACS in multiple configurations
10 # Test each configuration, perhaps in multiple ways
12 # Generate documentation files
14 # Check documentation from source code for errors
16 # Linting, docs, static analysis, coverage, code analysis...
18 # Nightly work to configure builds
22 # Nightly deploy stage
24 # Release work for packaging code
26 # Release checksum verification
28 # Configure code for release builds
30 # Release work for packaging code
32 # Tests for release code
34 # Prepare for deploying artifacts
35 - release-prepare-deploy
36 # Deploy stage for release builds
44 # Mix-in helper job definitions of general utility.
45 - local: '/admin/gitlab-ci/global.gitlab-ci.yml'
46 # Various composable job definitions.
47 - local: '/admin/ci-templates/.build-template.yml'
48 - local: '/admin/ci-templates/.test-runner-template.yml'
49 - local: '/admin/ci-templates/.gcc-before-script.yml'
50 - local: '/admin/ci-templates/.gcc-build-template.yml'
51 - local: '/admin/ci-templates/.gcc-test-template.yml'
52 - local: '/admin/ci-templates/.clang-build-template.yml'
53 - local: '/admin/ci-templates/.clang-test-template.yml'
54 - local: '/admin/ci-templates/.clang-before-script.yml'
55 - local: '/admin/ci-templates/.test-script-template.yml'
56 - local: '/admin/ci-templates/.cuda-template.yml'
57 - local: '/admin/ci-templates/.build-gmxapi-template.yml'
58 - local: '/admin/ci-templates/.regressiontest-template.yml'
59 # Build and test in a variety of environments and configurations.
60 # To do: expand matrix here to improve transparency and reduce file sizes.
61 # E.g. '/admin/gitlab-ci/matrix/clang-8.gitlab-ci.yml
62 - local: '/admin/gitlab-ci/testing-matrix.gitlab-ci.yml'
63 # Repository cleanliness. Source tidiness, linting, and policy compliance.
64 - local: '/admin/gitlab-ci/lint.gitlab-ci.yml'
65 # Web page and manual.
66 - local: '/admin/gitlab-ci/documentation.gitlab-ci.yml'
67 # Prepare release archives.
68 - local: '/admin/gitlab-ci/archive.gitlab-ci.yml'