ggr

grunt-github-release-asset

Create releases and attach assets on Girhub.

Showing:

Popularity

Downloads/wk

2

Maintenance

No Maintenance Data Available

Package

Dependencies

5

License

Type Definitions

Tree-Shakeable

No?

Categories

Readme

grunt-github-release-asset npm version

Create releases and attach assets on Github.

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-github-release-asset --save-dev

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

grunt.loadNpmTasks('grunt-github-release-asset');

The "githubAsset" task

Run the task with grunt githubAsset

Github allows you to create releases on tags. This grunt task allows you to create a release on the newest tag and attach a file to it.

Authentication

Even though it's possible to use username and password to authenticate, it's recommended to use a token based authentication. In case your credentials get leaked you can easily revoke the token. Furthermore don't put your credentials in the Gruntfile, create a credentials.json and add it to .gitignore.

You can create a token at Settings > Applications > Generate new token. Enter grunt-github-release-asset as a name and assign only the repo permission. Copy the token into your credentials file.

Options

options.credentials

Type: object

Token authentication (recommended)

{
  token: '...'
}

Username & password authentication

{
  username: '...',
  password: '...'
}

options.repo

Type: String

The git url of the repository. Must be git@github.com:user/repo.git

options.files

Type: Array

The paths to files, relative to your grunt root.

options.releaseName

Type: String

Default: {tag}

The name of the release. By default it will use the tag name. {tag} is a placeholder and can be used inside another string.

options.tag

Type: String

Default: undefined

The tag for which ti do a release. By default, will fetch the latest tag from Github.

Usage Examples

grunt.initConfig({
  githubAsset: {
    options: {
        credentials: grunt.file.readJSON('credentials.json'),
        repo: 'git@github.com:Bartinger/grunt-github-release-asset.git',
        files: ['project_build.zip'],
        releaseName: 'Version {tag}'
     },
  },
});

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Lint and test your code using Grunt.

Release History

  • 0.2.0 Add support for multiple files. Thanks to Aakil Fernandes
  • 0.1.0 Initial release; Create a release and attach a single file.

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100