zuul-jobs/zuul.d/general-jobs.yaml
Pierre-Louis Bonicoli 0eb09e7b4f
explicit error when test_command is undef
Don't use a shell builtin: shell builtins aren't available since
'command' ansible module is used. Instead, fail with an explicit
error when the required test_command variable is not set.

Fix this error:

    Ansible output: b'failed: [host] (item=exit 1) => {
        "ansible_loop_var": "item",
        "changed": false,
        "cmd": "exit 1",
        "item": "exit 1",
        "msg": "[Errno 2] No such file or directory: 'exit': 'exit'",
        "rc": 2
    }

Change-Id: I88303f7302d7354ffc8b18e607b28349a9860a57
2020-09-22 13:39:22 +02:00

127 lines
3.3 KiB
YAML

# Jobs listed in general-jobs.rst.
- job:
name: dco-license
description: |
A job to validate all new commits have been signed using --signoff.
run: playbooks/dco-license/run.yaml
- job:
name: unittests
abstract: true
description: |
Perform setup common to all unit test jobs.
This performs basic host and general project setup tasks common
to all types of unit test jobs.
pre-run: playbooks/unittests/pre.yaml
post-run: playbooks/unittests/post.yaml
- job:
name: multinode
abstract: true
description: |
Do additional setup needed for multi-node jobs such as setting up
overlay networks and setting up known-hosts and ssh keys
pre-run: playbooks/multinode/pre.yaml
- job:
name: run-test-command
parent: unittests
description: |
Run simple command as test.
To use this, set the ``test_command`` variable to a single command or
a list of commands. For complex list of commands, it is recommended to
use a single command that runs a proper script.
.. zuul:jobvar:: zuul_work_dir
:default: {{ zuul.project.src_dir }}
Path to operate in.
run: playbooks/run-test-command/run.yaml
- job:
name: upload-git-mirror
description: |
Mirrors a tested project repository to a remote git server.
.. zuul:jobvar:: git_mirror_credentials
:type: dict
This is expected to be a Zuul Secret with these keys:
.. zuul:jobvar:: user
SSH user for the remote git repository
.. zuul:jobvar:: host
SSH host for the remote git repository
.. zuul:jobvar:: ssh_key
Literal private key contents.
Should start with something like ``-----BEGIN RSA PRIVATE KEY-----``.
.. zuul:jobvar:: host_key
SSH host key of the remote git server.
Can be obtained with ``ssh-keyscan -H <host>``.
.. zuul:jobvar:: git_mirror_repository
Path of the remote git repository
run: playbooks/upload-git-mirror/run.yaml
- job:
name: validate-zone-db
description: |
Validate zone.db files in project.
Responds to these variables:
.. zuul:jobvar:: zone_files
:default: {{ ansible_user_dir }}/{{ zuul.project.src_dir }}
Search for zone.db files recursively in this directory.
Format should be domain.xyz/zone.db, where the parent
directory is named for the zone described.
.. zuul:jobvar:: zone_db_list
:default: []
Override the default searching above with explicit
domain/path references (see validate-zone-db role)
run: playbooks/validate-zone-db/run.yaml
- job:
name: dhall-diff
description: |
Ensure that generated configuration files are idempotent.
This job runs a render command and check that no files are
modified.
.. zuul:jobvar:: dhall_render_command
:default: make
The command that render the configuration files.
.. zuul:jobvar:: dhall_version
:default: 1.31.1
The dhall version.
pre-run: playbooks/dhall/prepare.yaml
run: playbooks/dhall/diff.yaml
- job:
name: shake-build
description: |
Run the shake build system command.
This job produces a shake.html report.
pre-run: playbooks/shake/pre.yaml
run: playbooks/shake/run.yaml