Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

pmpd [puhmp-eed] is a command line interface to deploy projects that use git.

Project description

pmpd [git puhmp-eed] is a command line interface for git deployments that release engineers can use to make life easier. It is heavily influenced by Vincent Driessen’s branching model and uses a syntax similar to gitflow. Its goal is to simplify and streamline deployments of complex branching systems by making commands and actions as human-friendly as possible. It provides a simple pmpd command that allows for merging and deploying branches to any number of distinct servers that are connected by a common git server like gitolite.

Main Features

  • Expressive and intuitive syntax
  • Makes continuous integration easier
  • Release branches are pmpd out
  • Identify conflicting feature branches before release time
  • Automated pmpd deployments similar to Google’s AppEngine approach
  • Multi server environments supported
  • Distributed branching model for large group collaborations

Installation

The latest stable version of pmpd can always be installed or updated to via pip:

$ pip install --upgrade pmpd

Configuration

After installation is complete pmpd puts .pmpd/config.json into the root of your repository. You may want to add the folder to .gitignore, but leaving it there is also a good way to keep track of your build history. pmpd.conf is used to relate servers to reference branches and to specify which feature branches belong in a given release.

You must fill out .pmpd/config.json so that it matches the flow of your own deployments and you’ll probably update this file in some way every time a new release is pmpd out.

Usage

Initialize:

$ pmpd

Synopsis:

$ pmpd [flags] [METHOD] [BRANCH]

See also pmpd --help

Examples

Build an alpha release based on the current state of production:

$ pmpd build alpha

Contributers

Jared Hall, PyScape

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page