look at GitLab CI pipeline results from the command line
Project description
Sometimes I want to look at the GitLab CI build status from my terminal
$ gitlab-trace GitLab project: Foretagsdeklaration/foretagsdeklaration Available jobs for pipeline #84214: --job=500786 - success - build_server --job=500787 - success - build_client --job=500788 - success - test_safety --job=500789 - success - test_dev_safety --job=500790 - success - test_bandit --job=500791 - success - test_crontabs --job=500792 - success - test_newrelic --job=500793 - success - unittests_server --job=500794 - success - unittests_client --job=500795 - success - build_docker_image --job=500796 - failed - test_robot --job=500797 - success - test_robot_bolfin
You can take a closer look at a failed job by passing the job ID
$ gitlab-trace --job=500796 ... Uploading artifacts... robottests/output: found 540 matching files Uploading artifacts to coordinator... ok id=500796 responseStatus=201 Created token=6yaRqQPr ERROR: Job failed: exit code 1
You can look at a different branch
$ gitlab-trace --branch=master GitLab project: Foretagsdeklaration/foretagsdeklaration https://git.vaultit.org/Foretagsdeklaration/foretagsdeklaration/pipelines/84185 Available jobs for pipeline #84185: --job=500692 - success - build_server --job=500693 - success - build_client --job=500694 - success - test_safety --job=500695 - success - test_dev_safety --job=500696 - success - test_bandit --job=500697 - success - test_crontabs --job=500698 - success - test_newrelic --job=500699 - success - unittests_server --job=500700 - success - unittests_client --job=500701 - success - build_docker_image --job=500702 - failed - test_robot --job=500703 - success - test_robot_bolfin --job=500704 - success - tag_docker_image --job=500705 - manual - deploy_stv_managedkube_alpha --job=500706 - manual - deploy_id06_alpha --job=500707 - manual - deploy_id06_alpha_fs31 --job=500708 - manual - deploy_id06_beta --job=500709 - manual - deploy_id06_beta_fs31 --job=500710 - manual - deploy_stv_alpha --job=500747 - success - test_robot
You can look at a specific pipeline by ID
$ gitlab-trace 84185
You can look at a specific job in that pipeline
$ gitlab-trace 84185 test_robot
If a job has been retried several times you can look at a specific run
$ gitlab-trace 84185 test_robot 1
Installation
pip3 install --user gitlab-trace should take care of everything, just make sure ~/.local/bin is on your $PATH.
Or you may want to use a script installer like pipx (my favourite).
Configuration
Create a ~/.python-gitlab.cfg like this:
[global] default = mygitlab [mygitlab] url = https://gitlab.example.com/ private_token = ...
You can create a private access token in your GitLab profile settings. It’ll need the “read_api” access scope.
Usage
Help is available via
$ gitlab-trace --help usage: gitlab-trace [-h] [--version] [-v] [--debug] [-g NAME] [-p ID] [--job ID] [-b NAME] [-a] [PIPELINE-ID] [JOB-NAME] [NTH-JOB-OF-THAT-NAME] gitlab-trace: show the status/trace of a GitLab CI pipeline/job. positional arguments: PIPELINE-ID select a GitLab CI pipeline by ID (default: the last pipeline of a git branch) JOB-NAME select a GitLab CI pipeline job by name NTH-JOB-OF-THAT-NAME select n-th GitLab CI pipeline job by this name (default: the last one) optional arguments: -h, --help show this help message and exit --version show program's version number and exit -v, --verbose print more information --debug print even more information, for debugging -g NAME, --gitlab NAME select configuration section in ~/.python-gitlab.cfg -p ID, --project ID select GitLab project ('group/project' or the numeric ID) --job ID show the trace of GitLab CI job with this ID -b NAME, --branch NAME, --ref NAME show the last pipeline of this git branch (default: the currently checked out branch) -a, --artifacts download build artifacts
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for gitlab_trace-0.5.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c14fcc7eda6541d05543fb9a0ce4c43e1fe05a134af82ccd04465f1994da6216 |
|
MD5 | c83828be4c9a018eee70cb970a27f00b |
|
BLAKE2b-256 | 954f4490e4b4d46ff4e8c601f38606e754fe3e2db20acbb0f15561d8e9d2eb34 |