Skip to content

A tool to help manage projects with dependencies in multiple locations

License

Notifications You must be signed in to change notification settings

crazyorc/dev-pipeline

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dev-pipeline

codacy code-climate

A tool to help manage projects with dependencies spread across repositories.

Inspiration

I work on several projects spread across repositories; some of these leverage sub-repositories in some form, and it's led to additional complexity trying to stay in sync (especially when dealing with merges, release lines, hot fixes, and all the other fun things that happen in large software projects). The goal here is to have a suite of scripts to help keep repositories in sync and working well together, without the issues that sub-repositories introduce.

Installation

The simplest way to install is using pip.

$ cd /path/to/dev-pipeline
$ pip install

If you don't have pip available, you can run setup.py directly.

$ cd /path/to/dev-pipeline
$ python setup.py install

If the install completes you're good to go. Depending on your project configuration you may need to install additional tools such as cmake or git; installing those tools is beyond the scope of this document.

Using

The first thing you'll need to do is write a build configuration. Once you're ready, configure a build directory.

# configure with default settings
$ dev-pipeline configure

If everything went well, you're ready to build.

# enter whatever directory the configure step used
$ cd build
# bootstrap will both pull the package sources and build them
$ dev-pipeline bootstrap

That's it. Check the tool documentation for information on what's available.

Common Tools

  • configure - Prepare an environment for dev-pipeline to operate. This is required before most tools will work.
  • bootstrap - Fetch sources and build packages in dependecy order.
  • build - Build packages in dependency order. This tool assumes the sources are available.
  • checkout - Fetch sources in dependecy order.
  • build-order - Determine the order to build a set of packages, including any dependencies.

About

A tool to help manage projects with dependencies in multiple locations

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%