Giter VIP home page Giter VIP logo

pulp-packaging's Introduction

Pulp Packaging

Adding a nightly built package

To add a new project to be built nightly, add a new entry under pulp_packages in package_manifest.yaml

my-new-package:
      git: "{git url}"
  1. Create a directory for the spec packages/my-new-package/
  2. Download/create a spec file in the above folder
  3. run ansible-playbook nightlies.yaml -l my-new-package

Tito is configured to checkout this project and generate a source tarball to be used with the spec file under packages/project-name

Updating a Dependency

To add a new dependency, start by adding an entry to package_manifest.yml in the appropriate section.

my-new-package:
  files:
    - "my-new-package-{version}.tar.gz"
    - "my-new-package.spec"
    - "patch-1.patch"
  1. Create a directory for the spec and source(s) under packages/
  2. Download the spec and source(s)
  3. git annex addurl {url} -file my-new-package-{version}.tar.gz, where {url} is the Source0 line provided by spectool my-package.spec and {version} is the upstream version number of the dependency
  4. Edit the spec setting the release to 1
  5. Scratch build your package tito release koji-pulp-server --test --scratch
  6. If your scratch build is successful, then please commit your additions and submit an MR.

TODO: ansible playbook to do this automatically.

Comps Files

To ensure a package is created and shipped with the pulp repo, please be sure it's listed in it's corresponding pulp-comps-{dist}.xml file

Tito custom source strategy

There is a custom 'PulpSourceStrategy' class in rel-eng/lib/custom.py that is used to generate source tarballs from github. This allows us to have a spec file live outside the git repo for the nightly builds, and helps decouple release engineering effors from the main code repo.

pulp-packaging's People

Contributors

dparalen avatar dralley avatar ipanova avatar pcreech avatar sbernhard avatar werwty avatar

Watchers

 avatar  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.