Code Monkey home page Code Monkey logo

lase's Introduction

lase - Gitflow release tool

Installing

pip install lase

Using

Prerequisites:

  • Git-based project with master and develop branches present, and Maven-style version number in the VERSION file

See lase --help for the list of all options.

Starting a release of your project with remote operation enabled

cd /path/to/project/git/repo
lase --remote origin start

The above command will, and create the release/X.Y.Z release branch where X.Y.Z is the version being released, bumping the version in the VERSION file on the develop branch at the same time.

After reviewing the diff between the release and master branches proceed to the finish step below.

Finishing a release of a your project with remote operation enabled

cd /path/to/project/git/repo
lase --remote origin finish

Developing

Prerequisites:

Initialize a virtualenv with dev dependencies installed:

make develop

Project dependencies

Project dependencies shoud always be specified in setup.py using the compatible release notation.

Updating dependencies in virtualenv

Run the following after updating setup.py

make update-deps

Installing development dependencies

Replace <PACKAGE> with the actual name, and <VERSION> with the MAJOR.MINOR (or MAJOR.MINOR.PATCH for versions below 1.0.0) version of the package. Read more on compatible releases.

pipenv install --dev <PACKAGE>~=<VERSION>

Running unit-tests

make test

Running E2E tests

Prerequisites:

make e2e-test

Starting a release

Variables:

  • RELEASE_REMOTE set to the name of the Git remote. Set to empty to disable pushes to remote. Default value: origin
  • RELEASE_VERSION override the release version, or leave empty to release the current snapshot (-SNAPSHOT will be stripped off). Empty by default
make release-start

Finishing a release

Variables:

  • RELEASE_REMOTE set to the name of the Git remote. Set to empty to disable pushes to remote. Default value: origin
  • RELEASE_PUBLISH set to 1 to enable publishing of the sdist tarball after the release`
make release-finish

release-finish will leave the release Git tag checked out on completion.

Building and publishing the source distribution:

make publish

lase's People

Contributors

node13h avatar

Stargazers

 avatar Charles Ferguson avatar

Watchers

James Cloos 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.