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

aws s3 cp 从 jenkins 工作区到不同 aws 帐户上的 ec2 工作区

如何解决aws s3 cp 从 jenkins 工作区到不同 aws 帐户上的 ec2 工作区

目标:当我单击构建时,我想将文件从 jenkins 工作区复制到 ec2。(两者都在同一区域但不同的 aws 帐户)

背景:

  • jenkins 在 aws 账户 A 中,并附加了角色 J。
  • aws 账户 B 中的一个 ec2 实例和一个具有 ec2+ssm 权限的单独角色 R。
  • 在 Jenkins shell 中,我假设角色 R 并捕获凭据,例如访问/秘密/令牌。
  • 然后将文件从 jenkins 工作区推送到 aws 帐户 B 中的 s3 存储桶 s3://pine/apple/。

现在我想将这些文件从 s3://pine/apple/ 复制到 ec2 的 /home/ubuntu/pear 我的尝试:

根据此处的 aws 教程https://docs.aws.amazon.com/systems-manager/latest/userguide/walkthrough-cli.html#walkthrough-cli-example-1

aws ssm send-command \
--region "us-east-1" \
--instance-ids "i-apple" \
--document-name "AWS-RunShellScript" \
--comment "IP config" \
--parameters commands="aws s3 sync s3://pine/apple/ /home/ubuntu/pear --debug" \
--output text

我遇到的问题:

  1. 我检查了 /home/ubuntu/pear,但它没有数据。詹金斯显示

命令 abcdefgh IP 配置 0 0 AWS-RunShellScript 0 1615535133.68 50 0 1615527933.68 待定 待定 1 CLOUDWATCHOUTPUTCONfig False INSTANCEIDS i-apple NOTIFICATIONCONfig
命令 aws s3 同步 s3://pine/apple/ /home/ubuntu/pear --debug

但是shell显示成功。 UI 上的 SSM 运行命令历史记录显示失败。

enter image description here

方法 2 从jenkins shell,post起角色,我也尝试了传统的方式

aws s3 sync s3://pine/apple /home/ubuntu/pear

但是给了

[Errno 13] Permission denied: '/home/ubuntu/pear'

权限是:

root@ip-apple:/home/ubuntu# ls -lrt
total 4
-rw-r--r-- 1 root root    0 Mar 12 00:57 test.text
drwxrwxrwx 2 root root 4096 Mar 12 00:57 pear

我错过了什么?我该如何进行?我想使用 ssm,这样我就不必管理信用。

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

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?