Travis CI似乎有两种不同的方式将构建工件上传到(例如)S3:
我都尝试过这两种方法,它们确实可以工作。这些文件被上传了,大家都很高兴……除了,还有人怎么知道构建工件在哪里?
是否有办法让Travis CI显示上传的工件的URL,或捕获URL,以便我自己对它们进行处理?
或者,最好的选择是放弃内置选项,自己完成整个工作吗?
(我正在考虑让脚本将到上传的工件的链接附加到一个非常简单的HTML页面上的大列表中,尽管如果有其他选择,我希望听到它们)
答案 0 :(得分:0)
我认为我尝试要做的事情是不可能的,原因有两个:
我最终只计算了URL,并在after_script
步骤中使用了URL。像这样:
.travis.yml:
# ...other stuff here...
after_script: ./artifact.sh
addons:
artifacts:
working_dir: build/libs
paths:
- $(ls build/libs/*.jar | tr "\n" ":")
permissions: public-read
artifact.sh:
#!/bin/sh
cd build/libs
TRAVIS_PATH=${TRAVIS_REPO_SLUG}/${TRAVIS_BUILD_NUMBER}/${TRAVIS_JOB_NUMBER}
NEWURL=https://s3.amazonaws.com/${ARTIFACTS_BUCKET}/${TRAVIS_PATH}/`ls *.jar`
cd ../..
# do something with $NEWURL here
注意:
*.jar
部分