如何解决如何使用cli从aws s3上传和下载ipa文件
我目前正在处理 NodeJs 项目并在 python 脚本的帮助下将构建上传到 aws,我通过在我的打字稿 child_process
文件中使用 index.ts
来调用这个脚本。
let cmd = "python path/to/extractapk.py "+"path/to/myApkBuild" //multer takes apk file and stores this(path/to/myApkBuild) location
var child = child_process.exec(cmd,parseOutput);
extract.py 我正在上传 .apk
//I am extracting apk info here
inputpath=sys.argv[1]
result=check_output([aptfuncCall,'d','badging',inputpath]).decode('utf-8',errors='ignore')
.......
......
def uploadToAws():
folderToUploadToAWS = inputpath #this contains my .apk file path
upload_command = (
"aws s3 sync --acl=public-read --cache-control max-age=7776000,public --content-
type=application/vnd.android.package-archive --content-disposition=attachment;filename="+displayName+".apk "+folderToUploadToAWS+ " s3://bacuketname/ --quiet"
)
hosting_process_result = os.system(upload_command)
我正在使用以下 url 从 aws s3 下载相同的构建,然后下载。
http://bucketname.s3.amazonaws.com/folderNameWhereStoredMyApkFile
manifestgenerator.ts
export default function(
producturl,iconurl,productversion,productdisplayName,packageName
) {
let outplist = `<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>${producturl}</string>
</dict>
<dict>
<key>kind</key>
<string>display-image</string>
<key>needs-shine</key>
<false/>
<key>url</key>
<string>${iconurl}</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>${packageName}</string>
<key>bundle-version</key>
<string>${productversion}</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>${productdisplayName}</string>
</dict>
</dict>
</array>
</dict>
</plist>`;
return outplist;
}
我已经编写了从本地存储库下载 .ipa
构建的代码
app.get("/downloadBuildFromLocalRepo",async (req,res) => {
const manifest = `${clientlocation}getManifest/` + id;
if (req.query.deviceType != "ios") {
res.writeHead(301,{
Location:
"itms-services://?action=download-manifest&url=" + manifest
});
return res.end();
}
})
但我想从 Aws s3 上传和下载我的 ipa 版本,我该怎么做?
请帮助我,提前致谢...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。