grunt-prepare-build

0.1.4 • Public • Published

grunt-prepare-build

A Grunt plugin to prepare your build process.
Update the version number, Commit the last changes and create a GIT tag.

Build Status

NPM

Getting Started

This plugin requires Grunt ~0.4.5

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-prepare-build --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-prepare-build');

The "prepare_build" task

Overview

In your project's Gruntfile, add a section named prepare_build to the data object passed into grunt.initConfig().

grunt.initConfig({
  prepare_build: {
    options: {
      // Task-specific options go here.
    }
  }
});

Options

options.versionFile

Type: String
Default value: VERSION.js

Name of the file where the version number can be found.

options.versionMatch

Type: RegExp
Default value: /(\d+\.\d+\.\d+)/g

Regular expression to isolate the version number string.
(Notice the global flag)

options.env

Type: Boolean
Default value: false

When true the environment string will be updated with the envName value.

options.envFile

Type: String
Default value: VERSION.js

Name of the file where the environment string can be found.

options.envMatch

Type: RegExp
Default value: /development/g

Regular expression to isolate the environment string.
(Notice the global flag)

options.envName

Type: String
Default value: production

New environment name.

options.increaseMinor

Type: Boolean
Default value: false

When true the version number, minor section, will be increased by 1.

options.increasePatch

Type: Boolean
Default value: false

When true the version number, patch section, will be increased by 1.

options.commit

Type: Boolean
Default value: false

When true all changes will be committed using GIT.
(Notice: When false the updated version number will not be committed.)

options.commitMessage

Type: String
Default value: New version

GIT commit message.
(Notice: The version number will added to the end of the commitMessage.)

options.commitFiles

Type: String
Default value: .

GIT commit files.

options.tag

Type: Boolean
Default value: false

When true a GIT tag will be created.

options.tagName

Type: String
Default value: V

GIT tag name.
(Notice: The version number will added to the end of the tagName.)

options.tagMessage

Type: String
Default value: New version

Git tag message.
(Notice: The version number will added to the end of the tagMessage.)

Usage Examples

grunt.initConfig({
  prepare_build: {
    build : {
      options: {
        versionFile: 'public/app.js',
        versionMatch: /(\d+\.\d+\.\d+)/,
        increaseMinor: true,
        //
        env : true,
        envFile : 'VERSION.js',
        envMatch : /development/g,
        envName : 'production',
        //
        commit: true,
        commitMessage: 'New version',
        commitFiles: '.'
        //
        tag: true,
        tagName: 'V',
        tagMessage: 'New release'
      }
    },
    update : {
      options: {
        versionFile: 'public/app.js',
        versionMatch: /(\d+\.\d+\.\d+)/,
        increasePatch: true,
        //
        env : true,
        envFile : 'public/env.js',
        envMatch : /development/g,
        envName : 'testing',
        //
        commit: true,
        commitMessage: 'Small update',
        commitFiles: '.'
        //
        tag: true,
        tagName: 'V',
        tagMessage: 'Small fixes'
      }
    }
  }
});

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.

Release History

  • 2014-06-12   v0.2.0   Add update environment option.
  • 2014-06-07   v0.1.3   Add commitFiles option.
  • 2014-06-07   v0.1.2   Dont require gitcommit and gittag configuration in the Gruntfile anymore.
  • 2014-06-01   v0.1.1   Add Travis ci and some small fixes.

Readme

Keywords

Package Sidebar

Install

npm i grunt-prepare-build

Weekly Downloads

8

Version

0.1.4

License

none

Last publish

Collaborators

  • wittestier