Krinkle has uploaded a new change for review.
https://gerrit.wikimedia.org/r/142227
Change subject: build: Implement "git-status" task and run it in CI environment
......................................................................
build: Implement "git-status" task and run it in CI environment
Append this new task to the 'test' sequence in Jenkins (so that
if e.g. buildloader causes dirty diff, the build fails).
Locally this doesn't run by default, but you can mimick the
Jenkins build by running 'grunt ci' instead of 'grunt test'.
Change-Id: I7dd5417777c5a060fd9042248ece695c02c8ab41
---
M Gruntfile.js
1 file changed, 24 insertions(+), 0 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/VisualEditor
refs/changes/27/142227/1
diff --git a/Gruntfile.js b/Gruntfile.js
index 817e60f..c027603 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -82,8 +82,32 @@
}
} );
+ grunt.registerTask( 'git-status', function () {
+ var done = this.async();
+ // Are there unstaged changes?
+ require( 'child_process' ).exec( 'git ls-files --modified',
function ( err, stdout, stderr ) {
+ var ret = err || stderr || stdout;
+ if ( ret ) {
+ grunt.log.write( ret );
+ grunt.log.error( 'Unstaged changes.' );
+ done( false );
+ } else {
+ grunt.log.ok( 'No unstaged changes.' );
+ done();
+ }
+ } );
+ } );
+
grunt.registerTask( 'build', [ 'jsduckcatconfig', 'buildloader' ] );
grunt.registerTask( 'lint', [ 'jshint', 'jscs', 'csslint', 'banana' ] );
grunt.registerTask( 'test', [ 'build', 'lint' ] );
+ grunt.registerTask( 'test-ci', [ 'git-status' ] );
grunt.registerTask( 'default', 'test' );
+
+ if ( process.env.JENKINS_HOME ) {
+ grunt.renameTask( 'test', 'test-internal' );
+ grunt.registerTask( 'test', [ 'test-internal', 'test-ci' ] );
+ } else {
+ grunt.registerTask( 'ci', [ 'test', 'test-ci' ] );
+ }
};
--
To view, visit https://gerrit.wikimedia.org/r/142227
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I7dd5417777c5a060fd9042248ece695c02c8ab41
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Krinkle <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits