Giter VIP home page Giter VIP logo

obs-service-github_tarballs's Introduction

OBS service for downloading tarballs and commit information from github

https://travis-ci.org/mapleoin/obs-service-github_tarballs.png

This is an Open Build Service source service. It downloads a tarball from a remote URL and updates the .spec and .changes files with git commit information from the github API.

How It Works

The Version field will be set to %(tarball_version)s+git.%(timestamp)s.%(commit_sha)s. Where tarball_version is the version as read from the parent directory inside the downloaded tarball - everything after the last dash (-) in the directory's name. timestamp is the current seconds from the UNIX epoch when the source service was run. commit_sha is the latest commit sha hash from the git repository.

On the first run, github_tarballs will just set the spec file's Version field to the latest git commit. The .changes file will only be updated with commit message information when newer commits (compared to the one now set in Version) are found.

The github_tarballs service will also change the specfile's Source: to the filename argument of the service and the %setup -q line to match the parent folder name in the tarball.

Rate Limiting

The github API rate limits requests. The limit can be extended by using github credentials to access the API. obs-service-github_tarballs will read and use these credentials from the .github_tarballs_credentials file in the current user's home directory if it can. The file should contain one line with the standard in standard HTTP BasicAuth format username:password.

Dependencies

Requires argparse which is part of python2.7, but available as a third-party dependency in python2.6.

The tests require python-mock. To run them, just use nosetests or python -m unittest discover (on python2.7).

Contributing

You can submit or ask for improvements using github's Pull Requests or Issues. If you're sending a patch, please make sure the testsuite is still running and also run flake8 on the files you've modified. It would be great if you could also modify this README file to describe new functionality and add tests.

You can take a look at the .travis.yml file to see how the testsuite and flake8 are being run.

obs-service-github_tarballs's People

Contributors

bmwiedemann avatar iartarisi avatar saschpe avatar vuntz avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.