grunt-github-releaser

0.1.18 • Public • Published

grunt-github-releaser

Task for automated github releases

Getting Started

This plugin requires Grunt ~0.4.2

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-github-releaser --save-dev

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

grunt.loadNpmTasks('grunt-github-releaser');

The "github-release" task

Overview

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

grunt.initConfig({
  "github-release": {
    options: {
      repository: 'dolbyzerr/grunt-github-releaser', // Path to repository
      auth: {   // Auth credentials
        user: 'dolbyzerr',
        password: ''
      }
    },
    files: {
      src: ['dist/release.zip'] // Files that you want to attach to Release
    }
 
  },
});

Options

options.repository

Type: String Default value: ``

Repository path in :owner/:repo format.

options.auth

Type: String

Basic authorization, see "Personal Access Tokens" in https://github.com/settings/applications

options.release

Type: Object

Here you can provide custom release settings, according http://developer.github.com/v3/repos/releases/#create-a-release These section is tottaly optional. If no tag_name specified than version field, from package.json will be used.

Usage Examples

This example will:

  • Create tag, from package.json version field. For example: 0.1.16
  • Create Release named 0.1.16
  • Upload release.zip from dest folder, and attach it to release
grunt.initConfig({
  github_releaser: {
    options: {
      repository: 'dolbyzerr/grunt-github-releaser',
      auth: {
        user: 'dolbyzerr',
        password: '123'
      }
    },
    files: {
      'dest': ['release.zip'],
    },
  },
});

Custom Release Options

In this example, custom release options are used to specify custom name, description, prerelease state etc.

grunt.initConfig({
  github_releaser: {
    options: {
      repository: 'dolbyzerr/grunt-github-releaser',
      auth: {
        user: 'dolbyzerr',
        password: '123'
      },
      release: {
        tag_name: 'v3-rc',
        name: 'jelly-bean',
        body: 'Description of the release',
        draft: false, 
        prerelease: true
      }
    },
    files: {
      'dest': ['release.zip'],
    },
  },
});

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

(Nothing yet)

Package Sidebar

Install

npm i grunt-github-releaser

Weekly Downloads

7

Version

0.1.18

License

none

Last publish

Collaborators

  • dolbyzerr