GPL-2.0-only licensed and maintained by Jens Petersen
This version can be pinned in stack with:pagure-cli-0.2.1@sha256:f1a2d007199b57416fe4ec8bf27893d60948b7e47c51f721d240d5125ff03c03,1570

Module documentation for 0.2.1

There are no documented modules for this package.

pagure-cli

Hackage GPL-2 license Stackage Lts Stackage Nightly

A pagure client for querying projects and users.

Usage

By default it uses the src.fedoraproject.org Pagure server instance (aka Fedora dist-git), but this can be overriden by the --server option.

List/search for repos

$ pagure list emacs\*
emacs
:

Note by default ‘orphan’ owned packages are excluded.

One can also filter by owner or committer.

List user’s projects

Count projects of a user:

$ pagure user -s pagure.io --count mattdm
93

List groups:

$ pagure groups
:

More commands

  • branches lists the git branches of a repo

  • issues to query and list issues

  • users to list usernames of users

  • username shows the fullname of a user

  • git-url shows the git urls for a repo

Help

Use --help to get help on individual commands:

$ pagure list --help
Usage: pagure list [-s|--server SERVER] [-c|--count] [(-j|--json) | (-y|--yaml)]
                   [(-F|--only-forks) | (-f|--include-forks)]
                   [-n|--namespace NAMESPACE]
                   [(-o|--owner OWNER) | (-u|--username USERNAME)] [PATTERN]
  list projects

Available options:
  -s,--server SERVER       Pagure server
  -c,--count               Show number only
  -j,--json                Output JSON
  -y,--yaml                YAML output
  -F,--only-forks          Only list forks
  -f,--include-forks       Include forks [default: ignore forks]
  -n,--namespace NAMESPACE Specify project repo namespace
  -o,--owner OWNER         Projects with certain owner
  -u,--username USERNAME   Projects to which username can commit
  -h,--help                Show this help text

Installation

To build the latest release you will need cabal-install and ghc, or stack:

stack install pagure-cli or cabal new-install pagure-cli.

Or to build from the git source, run directly without the package name.

Binaries

pagure-cli is packaged in Fedora (since F34).

Contributions

Pagure rest API can be found on pagure servers: eg https://pagure.io/api/0. There are still many unsupported commands and options. Please open a ticket or PR to request adding more.

Other clients

After writing the initial version I discovered that Ricky Elrod (relrod) had made https://github.com/fedora-infra/pagure-cli.

I discovered a client in Rust https://pagure.io/ironthree/bodhi-cli by decathorpe.

Changes

Changelog

0.2.1 (2022-02-17)

  • new commands: ‘project’, ‘issue’, ‘userinfo’
  • drop –url and use aeson-pretty
  • use new pagure library
  • ‘user’: new ’–fork” option
  • support aeson-2.0 and drop lens dependency
  • ‘branches’ and ‘username’ now error if entity does not exist
  • errors for non-existent API paths (eg unknown repo or user)

0.2 (2020-04-06)

  • new commands: ‘branches’, ‘issues’, ‘users’, ‘username’, ‘groups’, ‘git-url’
  • ‘list’: new options –namespace, –username, –include-forks, –only-forks
  • switch to http-conduit and default to lens instead of microlens for aeson
  • -U is now the short option for –url, which displays the API url

0.1 (2019-12-11)

  • initial release with list and user commands