Provided by: mini-buildd-utils_1.9.117_all bug

NAME

       mini-buildd-api - Run API calls against a mini-buildd instance

DESCRIPTION

       usage: mini-buildd-api [-h] [--version]

       [-l {CRITICAL,ERROR,WARNING,INFO,DEBUG}] [-v] [-q] [-J]
              [--auto-confirm] [--auto-save-passwords] <call> [options] ...

       Run API calls against a mini-buildd instance

   options:
       -h, --help
              show this help message and exit

       --version
              show program's version number and exit

       -l {CRITICAL,ERROR,WARNING,INFO,DEBUG}, --log-level {CRITICAL,ERROR,WARNING,INFO,DEBUG}
              set  log  level  (DEBUG  will  enable  exception  tracebacks  and  python warnings)
              (default: INFO)

       -v, --verbose
              DEPRECATED (use --log-level): increase log level. Give twice for max logs (default:
              0)

       -q, --quiet
              DEPRECATED (use --log-level): decrease log level. Give twice for min logs (default:
              0)

       -J, --json
              use parsable json output (default: False)

       --auto-confirm
              force-bypass extra confirmation (for confirmable calls) (default: False)

       --auto-save-passwords
              don't ask before saving passwords (via python3-keyring) (default: False)

   API calls (run 'mini-buildd-api <call> --help' for full single call help):
              <call> [options]

       status Get the status of this instance

              JSON Result:

       * version
              : mini-buildd's version.

       * identity
              : Instance identity.

       * url  : Instance URL (HTTP).

       * incoming_url: Incoming URL (currently FTP).
              * load        : Instance's (0 =< load <= 1).  If  negative,  the  instance  is  not
              powered   on.   *  chroots      :  Active  chroots.   *  remotes      :  Active  or
              auto-reactivatable remotes.  * [repositories: Simplified structural  representation
              of all repositories]

       Authorization: NONE
              .

       pub_key
              Get public key

              Get ASCII-armored GnuPG public key of this instance.

              Used to sign the apt repositories (apt key) and for authorization across instances.

       Authorization: NONE
              .

       dput_conf
              Get recommended dput config snippet

              Usually, this is for integration in your personal ~/.dput.cf.

              .. tip:: Can I add a custom dput config snippet?

              Just  put your custom snippet in ``~mini-buildd/etc/dput.cf``. If that file exists,
              it will be added to the output of :apicall:`dput_conf`.

       Authorization: NONE
              .

       sources_list
              Get sources.list (apt lines)

              Usually,      this      output      is      put      to      a      file       like
              '/etc/sources.list.d/mini-buildd-xyz.list'.

       Authorization: NONE
              .

       ls     List source package

       Authorization: NONE
              .

       show   Show source package

       Authorization: NONE
              .

       debdiff
              Compare two internal source packages .

       migrate
              Migrate source package

       Migrates a source package along with all its binary packages. If
              run for a rollback distribution, this will perform a rollback restore.

       Authorization: STAFF
              .

       remove Remove source package

              Removes a source package along with all its binary packages.

       Authorization: ADMIN
              .

       port   Port internal source package

       An internal 'port' is a no-changes (i.e., only the changelog
              will be adapted) rebuild of the given locally-installed package.

              When from-distribution equals to_distribution, a rebuild will be done.

       JSON Result (dict):
              list of dicts of all items uploaded

       Authorization: STAFF
              .

       port_ext
              Port external source package

       An external 'port' is a no-changes (i.e., only the changelog
              will be adapted) rebuild of any given source package.

       JSON Result (dict):
              list of dicts of all items uploaded

       Authorization: STAFF
              .

       retry  Retry a previously failed source package

              JSON Result:

              * changes: Changes file that has been re-uploaded.

       Authorization: STAFF
              .

       cancel Cancel an ongoing package build Authorization: STAFF .

       set_user_key
              Set a user's GnuPG public key

       Authorization: LOGIN
              .

       subscribe
              Subscribe to (email) notifications

       Authorization: LOGIN
              .

       unsubscribe
              Unsubscribe from (email) notifications

       Authorization: LOGIN
              .

       remake_chroots
              Remake chroots

              Run actions 'remove', 'prepare', 'check' and 'activate'.

              Note  that  Daemon  will  be  stopped  before  running,  cancelling  ongoing events
              (``BUILDING``, ``PACKAGING``).

       Authorization: ADMIN
              .

       power  Power Daemon on or off (toggles by default)

              This essentially stops accepting incoming, and forcibly stops any possibly  running
              builds.

              This  state  is  *not  persisted*.  Please  *deactivate*  the  Daemon  instance via
              :mbdpage:`setup` to make the state persist over *mini-buildd service* restarts.

       Authorization: ADMIN
              .

       wake   Wake a remote instance

       Authorization: STAFF
              .

       handshake
              Check if signed message matches a remote, reply our signed message on success

              This is for internal use only.

       Authorization: NONE
              .

       cronjob
              Run a cron job now (out of schedule)

       Authorization: ADMIN
              .

       uploaders
              Get upload permissions for repositories

       Authorization: ADMIN
              .

       snapshot_ls
              Get list of repository snapshots for a distribution

       JSON Result (dict):
              dict: <distribution>: [snasphot,...]: List of snapshots for the given distribution.

       Authorization: NONE
              .

       snapshot_create
              Create a repository snapshot

       Authorization: ADMIN
              .

       snapshot_delete
              Delete a repository snapshot .

       debmirror
              Make local partial repository mirror via :debpkg:`debmirror`

       This may be useful if you plan on publishing a stripped-down (f.e.,
              only certain repos, only ``stable``, omit rollbacks) variant of your repo somewhere
              remote.

              ..  error::  debmirror (:debbug:`819925`): ``apt update`` fails on ``experimental``
              suites (contents not mirrored)

       This happens only on systems where APT is configured to  download  contents,  most  likely
       just because
              ``apt-file`` is installed. So, the easiest workaround is::

              apt purge apt-file

       Closest to an actual fix is to install debmirror variant '+abfixes' from
              ``Hellfield Archive``, where the "bug" has been fixed (Dec 2022: at least available
              for bullseye).

       Authorization: ADMIN
              .

       keyring_packages
              Build keyring packages

              .. tip:: **keyring-packages**: No compat for urold (``apt-key add``)

              Since ``2.x``, keyring packages will use ``/etc/apt/trusted.gpg.d/<foo>.gpg``,  not
              deprecated ``apt-key add <foo>``.

              In Debian, this is supported since ``wheezy (2013)``.

              For  distributions  ``<= squeeze`` (apt versions ``~<= 0.8.x``), you would manually
              have to run ``apt-key add /etc/apt/trusted.gpg.d/<foo>.gpg`` after installation  of
              the keyring package.

       JSON Result (dict):
              list of dicts of all items uploaded

       Authorization: ADMIN
              .

       test_packages
              Build test packages

       JSON Result (dict):
              list of dicts of all items uploaded

       Authorization: ADMIN
              .

       setup  Create, update or inspect your setup

              Note  that  Daemon  will  be  stopped  before  running,  cancelling  ongoing events
              (``BUILDING``, ``PACKAGING``).

       Authorization: ADMIN
              .

       Note: Uses ``python3-keyring`` to persist passwords (see ``man 1 keyring``)