使用GruntJS从Jenkins添加SVN修订版和版本号

使用GruntJS从Jenkins添加SVN修订版和版本号,jenkins,gruntjs,Jenkins,Gruntjs,我刚刚开始在一些js项目的VisualStudio构建脚本上使用Gruntjs。 我唯一想做的事情就是在横幅中添加一个环境变量 例如,在gruntFile.js中,我有 concat: { options: { separator: '', banner: '/*!\n My App v<%= pkg.version %> \n Date: <%= grunt.template.today("dd-mm-yyyy

我刚刚开始在一些js项目的VisualStudio构建脚本上使用Gruntjs。 我唯一想做的事情就是在横幅中添加一个环境变量

例如,在gruntFile.js中,我有

concat: {
        options: {
            separator: '',
            banner: '/*!\n My App v<%= pkg.version %> \n Date: <%= grunt.template.today("dd-mm-yyyy MM:hh:ss") %> \n Revision: */\n'
        },
        basic_and_extras: {
            .....
        }
    }
concat:{
选项:{
分隔符:“”,
横幅:'/*!\n我的应用v\n日期:\n版本:*/\n'
},
基本和额外费用:{
.....
}
}
我使用Jenkins作为构建服务器,有两个环境变量可用:

SVN_修订版 当前签出到工作区的Subversion修订号,如“12345”

建筑编号 当前内部版本号,如“153”

我想做的是找到一种方法,拿起这个,并将其添加到横幅。(或package.json)


这可能吗?

请记住,grunt任务只是节点。您可以从
process.env
获取环境变量:

concat: {
    options: {
        separator: '',
        banner: '/*!\n My App v<%= pkg.version %> \n Date: <%= grunt.template.today("dd-mm-yyyy MM:hh:ss") %> \n Revision: ' + process.env.SVN_REVISION + ' */\n'
    },
    basic_and_extras: {
        .....
    }
}
concat:{
选项:{
分隔符:“”,
横幅:'/*!\n我的应用程序版本日期:\n版本:'+process.env.SVN\u版本+'*/\n'
},
基本和额外费用:{
.....
}
}

Jenkins允许您作为构建步骤运行任何批处理或shell脚本,因此您应该能够编写脚本,并在构建时将这些环境变量传递给脚本。