gulp-maven-deploy
v1.0.2
Published
Simple gulp plugin for the maven-deploy module
Downloads
2,485
Readme
gulp-maven-deploy
A Gulp wrapper for the maven-deploy module. Enables you to have projects which are built with Gulp, but deploys to Maven repositories.
All the samples below require a basic understanding of Gulp and Maven. Please look at the documentation for those projects for details. This readme refers to 1.x versions. If you are still using the 0.x versions, have a look into the 0.x support branch.
Installing
$ npm install gulp-maven-deploy --save-dev
Sample usage in a gulpfile.js
Below are two configuration samples:
Configuring a task for deploying to a Maven proxy
var gulp = require('gulp'),
maven = require('gulp-maven-deploy');
zip = require('gulp-zip');
gulp.task('deploy', function() {
return gulp.src('.')
.pipe(zip('my-artifact.war'))
.pipe(maven.deploy({
'groupId': 'com.mygroup',
'repositories': [{
'id': 'some-repo-id',
'url': 'http://some-repo/url'
}]
}))
});
A task running a local Maven install:
var gulp = require('gulp'),
maven = require('gulp-maven-deploy'),
zip = require('gulp-zip');
gulp.task('deploy-local', function() {
return gulp.src('.')
.pipe(zip('my-artifact.war'))
.pipe(maven.install({
'groupId': 'com.mygroup',
}))
});
Note: A local install in Maven means it is only available on your machine. A deployment is different as it means you ship the artifact off to some remote repository.
Upgrading from 0.x to 1.x
With gulp-maven-deploy
version 1.0.0 we want to go one more step into the
direction of a well performing gulp plugin. Following the single responsibility
principle this plugin will only perform the deploy part in the future.
- Implement a packaging logic for your files like gulp-zip
- Remove the additional config level from
options = {config: { ... }}
tooptions = { ... }
- Remove
artifactId
andtype
from config. They are now extracted from the file name. To influence them, rename the file in the gulp stream before piping it togulp-maven-deploy
- Callback function was removed. Use stream events
finish
orerror
to get notified about successful or unsuccessful deploys
Example project
There is a complete example project if you checkout the example directory.
$ cd example
$ npm install
$ ./node_modules/.bin/gulp
This will install gulp and allow you to run the sample. Gulp will run with with a local deploy configuration
by default. You should see an artifact deployed to your local M2_HOME
repository.
Running tests
$ npm test
Contributions
All pull requests and issues are welcome!
Big thanks to Gregers for making the maven-deploy module.