sgallagh / centos / centpkg

Forked from centos/centpkg 3 years ago
Clone
Brian Stinson 7448c8
# Centpkg
Brian Stinson 7448c8
Centpkg is a wrapper for [rpkg](https://fedorahosted.org/rpkg/) which interacts
Brian Stinson 096ba1
with RPM git repositories like the ones hosted at http://git.centos.org. Rpkg also provides
Brian Stinson 7448c8
some convenience methods/commands for local builds via mock or rpmbuild, for
Brian Stinson 7448c8
interacting with koji, and for generating patches.
Brian Stinson 7448c8

Brian Stinson 7448c8
# Centpkg is in pre-alpha state, as of now this is a proof of concept.
Brian Stinson 7448c8
For now only a very small subset of rpkg commands are enabled. 
Brian Stinson 7448c8

Brian Stinson 2b88c3
Exception handling at the top level has been disabled for now to get better
Brian Stinson 2b88c3
tracebacks during development. 
Brian Stinson 2b88c3

Brian Stinson 7448c8

Brian Stinson 7448c8

4e702f
## Installing from Git
Brian Stinson 7448c8
Centpkg currently requires the [EPEL](https://fedoraproject.org/wiki/EPEL) repository for pyrpkg and other dependencies. 
Brian Stinson 7448c8

4e702f
    root# <Download and configure the relevant epel-release RPM>
Brian Stinson 7448c8
    root# yum install pyrpkg
Brian Stinson 7448c8
    root# git clone https://bitbucket.org/bstinsonmhk/centpkg.git
Brian Stinson 7448c8
    root# cd centpkg
Brian Stinson 7448c8
    root# python setup.py install
Brian Stinson 7448c8

Brian Stinson 7448c8
## Currently Somewhat-working Commands
Brian Stinson 7448c8

Brian Stinson 2b88c3
### Git Operations
Brian Stinson 2b88c3
    $ centpkg clone --anonymous -b c7 a2ps        # clones the CentOS 7 branch of the a2ps package
Brian Stinson 2b88c3
    $ centpkg add-tag                             # Adds a git tag to the repo
Brian Stinson 2b88c3
    $ centpkg list-tag                            # Shows the relevant git tags
Brian Stinson 2b88c3
    $ centpkg delete-tag                          # Shows the relevant git tags
Brian Stinson 2b88c3
    $ centpkg commit                              # Commits to the current branch
Brian Stinson 2b88c3
    $ centpkg pull                                # Pulls from the git remote
Brian Stinson 2b88c3
    $ centpkg switch-branch                       # Switch to a git branch (if it exists upstream it will track it for you)
Brian Stinson 2b88c3

Brian Stinson 2b88c3
### File/Working directory operations 
Brian Stinson 7448c8
    $ centpkg sources                             # Downloads the binary sources from lookaside and checks hashes
Brian Stinson 2b88c3
    $ centpkg clean                               # Removes untracked files
Brian Stinson 7448c8

4e702f
### Build Operations
Brian Stinson 2b88c3
    $ centpkg local                               # Runs a full rpmbuild
Brian Stinson 2b88c3
    $ centpkg compile                             # Runs rpmbuild -bc
Brian Stinson 2b88c3
    $ centpkg verify-files                        # Runs rpmbuild -bl
4e702f
    $ centpkg mockbuild                           # Runs a local mockbuild
Brian Stinson 7448c8

Brian Stinson 7448c8
## License
Brian Stinson 7448c8

Brian Stinson 7448c8
Unless otherwise specified, all files are licensed under GPLv2+.
Brian Stinson 096ba1
See COPYING for more license information