我想从jenkins执行预构建(grails)脚本,用我的SCM中的文件替换plugins目录中的文件。
#!/bin/bash
PLUGINS_ORIG_DIR="plugins"
PLUGINS_DEST_DIR="/home/<my_user_name>/.grails/2.1.1/projects/judo/plugins"
cp -r $PLUGINS_ORIG_DIR/lang-selector-0.3/* $PLUGINS_DEST_DIR
但脚本失败,因为无法找到$ PLUGINS_DEST_DIR。应该是哪条路径或最佳方法?
谢谢。
[编辑]
我也试图创建一个战前事件,但它也不起作用:
/**
* Copy modified resources to plugins directory, before packing the WAR
*/
eventCreateWarStart = { warName, stagingDir ->
def buildSettings = BuildSettingsHolder.getSettings()
def projectPluginsDir = buildSettings.getProperty("projectPluginsDir")
def baseDir = buildSettings.getProperty("baseDir")
ant.copy(todir:"${projectPluginsDir}/lang-selector-0.3", overwrite:true) {
fileset(dir:"${basedir}/plugins/lang-selector-0.3", includes:"**")
}
ant.copy(todir:"${projectPluginsDir}/jquery-datatables-1.7.5", overwrite:true) {
fileset(dir:"${basedir}/plugins/jquery-datatables-1.7.5", includes:"**")
}
}
答案 0 :(得分:0)
您是否设置了cloudbees帐户名称? 然后你错了,应该使用/ home / jenkins或只是$ HOME,因为构建在通用奴隶上运行为“jenkins”用户
答案 1 :(得分:0)
我通过将文件复制到$ {stagingDir}而不是$ {projectPluginsDir}来解决它