Skip to main content

Gentoo Build Publisher Command-Line Interface

Project description

CLI for Gentoo Build Publisher

asciicast

Introduction

This is a command-line interface for Gentoo Build Publisher, a system that combines Gentoo Linux and CI/CD so that updating a Gentoo predictable and consistent.

This is a pip-installable Python package:

$ pip install gbpcli

Usage

The full command set supported:

usage: gbp [-h] [--url URL]
           {build,diff,keep,latest,list,logs,machines,notes,packages,publish,pull,status} ...

positional arguments:
  {build,diff,keep,latest,list,logs,machines,notes,packages,publish,pull,status}

options:
  -h, --help            show this help message and exit
  --url URL             GBP url

The URL for the Gentoo Build Publisher may be provided via the command line or by using the BUILD_PUBLISHER_URL environment variable.

To list the machines which have builds:

$ gbp machines
babette          10
blackwidow       45
gbp              45
jenkins           8
lighthouse       43
pgadmin           7
postgres          8
rabbitmq          8
teamplayer        2
testing          43

To list the available builds for a given machine:

$ gbp list babette
[ K  ]   104 04/25/21 08:51:19
[    ]   132 05/21/21 13:27:50
[*  N]   412 02/27/22 06:42:08
[*   ]   413 02/28/22 06:43:32
[*   ]   430 03/16/22 08:49:15
[*   ]   431 03/17/22 08:54:43
[*   ]   434 03/21/22 16:37:30
[*   ]   435 03/22/22 12:01:48
[* P ]   437 03/22/22 13:28:13
[*   ]   438 03/23/22 13:09:26

In the above example, the PN output for build 302 signifies that this build is currently published (P) and there is a user note for that build (N). The * means that the respective build has new binary packages.

$ gbp status babette 412
Build: babette/412
BuildDate: Sun Feb 27 06:38:30 2022 -0500
Submitted: Sun Feb 27 06:42:08 2022 -0500
Completed: Sun Feb 27 06:45:00 2022 -0500
Published: no
Keep: no
Packages-built:
    app-text/opensp-1.5.2-r7

This is a build note.

Edit/delete build notes using the gbp notes command.

The status subcommand displays metadata about a given build. If the build number is not given, it defaults to the latest build for that machine.

The diff subcommand display differences between two build.

$ gbp diff babette 437 438
diff -r babette/437 babette/438
--- a/babette/437 Tue Mar 22 13:28:13 2022 -0500
+++ b/babette/438 Wed Mar 23 13:09:26 2022 -0500
-app-admin/sudo-1.9.8_p2-1
+app-admin/sudo-1.9.8_p2-r1-1
-app-crypt/gnupg-2.2.34-1
+app-crypt/gnupg-2.2.34-r1-1
-dev-python/importlib_metadata-4.11.2-1
-dev-python/zipp-3.7.0-r1-1
-net-misc/curl-7.79.1-3
+net-misc/curl-7.79.1-r1-1

If the second build number is not given, it defaults to the latest build for that machine. If the first build number is not given, it defaults to the published build for that machine.

The publish subcommand makes the given build available for syncing and updating/downgrading.

$ gbp publish babette 438

If the build nubmer is not given, it defaults to the latest build for that machine.

The build subcommand can schedule a build in CI/CD for the given machine, e.g.:

$ gbp build babette

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gbpcli-1.1.0.tar.gz (29.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gbpcli-1.1.0-py3-none-any.whl (22.8 kB view details)

Uploaded Python 3

File details

Details for the file gbpcli-1.1.0.tar.gz.

File metadata

  • Download URL: gbpcli-1.1.0.tar.gz
  • Upload date:
  • Size: 29.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for gbpcli-1.1.0.tar.gz
Algorithm Hash digest
SHA256 d45b9db61839e21603ef01f757bd556bf9eac11f6df522c4d8187942a5a4cb32
MD5 dc9200627fed5b6a0deda406f9894e68
BLAKE2b-256 02a3aa02500664e16fb4e63bd06bb4770bc19b1b1cce995444ceed3451e403a2

See more details on using hashes here.

File details

Details for the file gbpcli-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: gbpcli-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 22.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for gbpcli-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3469fb8729a53da3c5a777ae3201c3f74040525f130c8ea16fe98dc1d15d1751
MD5 4d19981341654500e0d0e6036eac6cf6
BLAKE2b-256 a2cea371465e3753fb1e186b629a93bab3f66fbb93c61e49ebe028d287ae4e4c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page