微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用Ansible Playbook将.war文件复制到远程服务器时出错

如何解决使用Ansible Playbook将.war文件复制到远程服务器时出错

我正在尝试使用ansible剧本来部署.war文件(从/var/lib/jenkins/workspace/abc/target/abc.war/home/tomcat/webapps/),该剧本安装在运行jenkins的同一服务器上。出现以下错误

在Ansible控制器上找不到或访问'/var/lib/jenkins/workspace/abc/target/abc.war'。\n如果您使用的是模块并且希望文件存在于遥控器上,请参阅remote_src选项

使用ssh验证来验证远程服务器连接

ansible all -m ping,output is 192.168.*.***
| SUCCESS

部署文件

---
 - name: Deploy war  
   hosts: Appservers  
   tasks:
     - name: Stop Tomcat  
       command: /home/apache-tomcat-9.0.37/bin/shutdown.sh

     - name: Delete old war  
       command: rm -rf /home/apache-tomcat-9.0.37/webapps/abc*

     - name: copy the war file  
       copy:  
         src: /var/lib/jenkins/workspace/abc/target/abc.war  
         dest: /home/apache-tomcat-9.0.37/webapps/  

     - name: Start Tomcat  
       command: /home/apache-tomcat-9.0.37/bin/startup.sh  

我不明白为什么在一切正常的情况下仍然收到上述错误图片上传以供参考。

PS:jenkins拥有的战争文件,主机和远程用户= root,root拥有的deployment.yaml,具有777权限。

解决方法

是的,正如Zeitounator提出的许可问题。我的工作区具有只读权限,因为我遇到了错误,现在我将权限更改为r-x,并且它可以正常工作。谢谢Zeitounator!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。