Coder Social home page Coder Social logo

pinkdiamond1 / grunt-github-release-asset Goto Github PK

View Code? Open in Web Editor NEW

This project forked from safemarket/grunt-github-release-asset

0.0 1.0 0.0 51 KB

Create releases and attach assets on Github.

Home Page: http://bartinger.at

License: MIT License

JavaScript 100.00%

grunt-github-release-asset's Introduction

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 [email protected]:user/repo.git

options.file

Type: String

The path to a single file 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: '[email protected]:Bartinger/grunt-github-release-asset.git',
        file: '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.1.0 Initial release; Create a release and attach a single file.

grunt-github-release-asset's People

Contributors

dominicbartl avatar xcambar avatar

Watchers

 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.