Improve handling of CUDA API errors
[gromacs.git] / .gitlab-ci.yml
blobee10cc660d7d4d405288c21090725d6811f9588a
1 # Declare and sequence the stages to which jobs may be assigned.
2 # The pipeline is organized into stages so that if early stages fail
3 # the later ones are not run.
4 stages:
5   # Initial test build for checking simple compilation and getting regressiontest repo
6   - pre-build
7   # Configuration for building and testing
8   - configure-build
9   # Build GROMACS in multiple configurations
10   - build
11   # Unit test each configuration, perhaps in multiple ways
12   - test
13   # Generate documentation files
14   - documentation
15   # Check documentation from source code for errors
16   - source-check
17   # Linting, docs, static analysis, coverage, code analysis...
18   - post-test
19   # Nightly work to configure builds
20   - nightly-configure
21   # Nightly build stage
22   - nightly-build
23   # Nightly deploy stage
24   - nightly-deploy
25   # Release work for packaging code
26   - release-package
27   # Release checksum verification
28   - release-verify
29   # Configure code for release builds
30   - release-configure
31   # Release work for packaging code
32   - release-build
33   # Tests for release code
34   - release-tests
35   # Prepare for deploying artifacts
36   - release-prepare-deploy
37   # Deploy stage for release builds
38   - release-deploy
40 include:
41   # Mix-in helper job definitions of general utility.
42   - local: '/admin/gitlab-ci/global.gitlab-ci.yml'
43   - local: '/admin/gitlab-ci/rules.gitlab-ci.yml'
44   # gmxapi Python package.
45   - local: '/admin/gitlab-ci/python-gmxapi.gitlab-ci.yml'
46   # Further API validation and usability of sample gmxapi extension package.
47   - local: '/admin/gitlab-ci/sample_restraint.gitlab-ci.yml'
48   # API regression testing using sample gmxapi extension package.
49   - local: '/admin/gitlab-ci/sample_restraint-regression.gitlab-ci.yml'
50   # Build and test GROMACS in a variety of environments and configurations.
51   # To do: Consider expanding matrix here to improve transparency and reduce file sizes.
52   # E.g. '/admin/gitlab-ci/matrix/clang-8.gitlab-ci.yml
53   - local: '/admin/gitlab-ci/gromacs.gitlab-ci.yml'
54   # Repository cleanliness. Source tidiness, linting, and policy compliance.
55   - local: '/admin/gitlab-ci/lint.gitlab-ci.yml'
56   # Web page and manual.
57   - local: '/admin/gitlab-ci/documentation.gitlab-ci.yml'
58   # Prepare release archives.
59   - local: '/admin/gitlab-ci/archive.gitlab-ci.yml'