Skip to content

tblah/dgroc

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Author:Pierre-Yves Chibon <pingou@pingoured.fr> : Tom Eccles <t AT freedommail DOT info>

dgroc: Daily Git Rebuild On Copr

This project aims at easily provide daily build of a project tracked via git and made available via copr.

  • Retrieve the sources:

    git clone https://github.com/tblah/dgroc.git
    
  • Create the configuration file ~/.config/dgroc

  • Fill the configuration file, for example:

    [main]
    username= me
    email = email@example.tld
    
    [subsurface]
    git_url = git://subsurface.hohndel.org/subsurface.git
    git_folder = /tmp/subsurface/
    spec_file = ~/GIT/subsurface/subsurface.spec
    
    [guake]
    copr = subsurface
    git_url = https://github.com/Guake/guake.git
    git_folder = /tmp/guake/
    spec_file = ~/GIT/guake/guake.spec
    patch_files = ~/GIT/guake/guake-0.2.2-fix_vte.patch,
                  ~/GIT/guake/0001-Remove-vte-check-in-the-configure.ac.patch
    

For each project, only three options are required:

git_url The url to the git repository, that is only required if the git repo is not already cloned on the disk (see git_folder).

git_folder The location of the local clone of the git repository to build.

spec_file The location of the spec file for the project to build.

patch_files A comma separated list of patches required to build the project. These files will be copied over to the rpm sourcedir to be present when building the source rpm.

copr The optional name of the copr repository to build the package within. When not set, the project name (from []) is used.

Note

The spec file should be fully functionnal as all dgroc will do is update the Source0, Release and add an entry in the Changelog.

Note

You might have to set in your spec file the %setup line to:

%setup -q -n <projectname>

From the sources, it requires few steps:

  • Install dependencies:

    dnf install libgit2-devel python-pygit2 copr-cli
    
  • Make sure that you have a valid Copr API Token:: See https://copr.fedoraproject.org/api/

  • Run dgroc:

    python2 dgroc.py
    

For more information/output run python2 dgroc.py --debug

The easiest way to run dgroc daily is to simply rely on cron

Here is an example cron entry that you will need to adjust for your setup:

30 10 * * * python2 /home/pingou/dgroc/dgroc.py

This cron will run every day at 10:30 am and call the dgroc.py script within the dgroc clone

About

Daily Git Rebuild On Copr

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%