groovy – 如何在jenkinsfile中硬链接文件
发布时间:2020-12-14 16:27:24 所属栏目:大数据 来源:网络整理
导读:我的总体目标是,从S3同步文件,然后硬链接以避免“多个副本”并在构建docker容器时节省空间.这是我到目前为止所拥有的 withAWS(region: 'us-east-1') { s3Download( bucket: 'artifacts.mydomain.tld',file: "${env.ORACLE_RPM}",path: "${env.HOME}/${env.OR
我的总体目标是,从S3同步文件,然后硬链接以避免“多个副本”并在构建docker容器时节省空间.这是我到目前为止所拥有的
withAWS(region: 'us-east-1') { s3Download( bucket: 'artifacts.mydomain.tld',file: "${env.ORACLE_RPM}",path: "${env.HOME}/${env.ORACLE_RPM}",) script { linkBlocking("etc/docker/${env.PROJECT}/${env.ORACLE_RPM}","${env.HOME}/${env.ORACLE_RPM}") } } s3Download有效,但我不确定如果有更新的版本,它是否会更新文件. 但是,当我尝试使用 解决方法
我还没弄明白如何在groovy中做到这一点,当我尝试使用Java的nio文件时,我遇到了一个沙箱错误,但是在shell步骤中这样做了
withAWS(region: 'us-east-1') { script { try { s3Download( bucket: 'artifacts.mydomain.tld',file: "${env.HOME}/${env.ORACLE_RPM}",path: "${env.ORACLE_RPM}",) } catch (Exception e ) {// don't update the file if it exists } finally { sh "ln -f ${env.HOME}/${env.ORACLE_RPM} etc/docker/${env.PROJECT}/${env.ORACLE_RPM}" } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |