Я использую Travis-CI для создания сборки R, которая требует загрузки файла с удаленного URL-адреса во временное местоположение. Это прекрасно работает на моей локальной машине (Windows 10), но не работает, когда он работает на Travis.
У меня есть файл сборки R, который создает временное местоположение файла, загружает файл с удаленного URL-адреса, читает файл и затем удаляет временный файл.
tmp <- tempfile()
url <- "ftp://ftp.FreeBSD.org/pub/FreeBSD/README.TXT"
download.file(url, tmp, quiet = TRUE)
lines <- readLines(tmp)
file.remove(tmp)
Мой файл Travis YAML является источником этого файла сборки и предназначен для создания sh коммита в GitHub при успешной загрузке файла (с использованием шифрования).
language: r
sudo: false
cache: packages
git:
depth: false
script:
- Rscript -e 'source("build.R")'
- git config --global user.name "fawda123"
- git config --global user.email "mbafs2012@gmail.com"
- git pull https://${GH_TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git HEAD:${TRAVIS_BRANCH}
- git add -A
- git commit -a -m "New download via travis-ci.org [ci skip]"
- git push https://${GH_TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git HEAD:${TRAVIS_BRANCH}
notifications:
email:
recipients:
- mbafs2012@gmail.com
on_success: change
on_failure: change
env:
global:
- TRAVIS_REPO_SLUG=fawda123/travis-test
- TRAVIS_BRANCH=master
- CRAN: http://cran.rstudio.com
- secure: ErybpBycrznjOmCVvK/BuxLWf4fyPzlME+onOVps3da5sQVhjun6UAQjOvM9VKO6s5AYWwhce2p9Y8fnCLY6TcsOI5cYDdyRoBArQLucPZfWOOvVOks/JOixeHMO4uJmw9UjtzZTjjoeNNSOOuc5lMxjdu9D4CvN00V1+fT8IIvR0UylIwXRpw0NrdK6s4WmG7tQ+xcG/gqwomkwfJSN2R1h4BZZsE4gA/2t8TeK3k/Qwa5RRy3ojiwmh6/smDELyUluhdSN8XO546q78Ek6xIRFzDLNHFSB0jawo6atufp5R6F7gINDM2KWJ1EFlSDRCZJEUZNH2cFzOm03ZoqdsanUAHNtgT6CKy9eQvmaRCIOs6q2yi9XMGKpcz2cWFjP+Z9WqRWb8zPzNBsapoofXMnghSlb7ujvePE8kpcrvN3hR/BPFcJzyRFj2nzBVwoQVWtIwpCKAqp3EoVNypWOkKcUxG4QEbRfFB06dXnssskTtTvw1CeaF3iEGEmDqL1uZBtWa4emjbByLU7+Ank02W6N4ivuwnBT7HHVo58hg7GjxCfDJ1IKMAu9QsZh9CZ20sgFPO4c/3okE8U/LQWxT1OaP9XvcyvTjn/5GxvyN/cgdjStylIlfb6ZZlv+l1h50TRK1uQfW8/qcgK0SYISsLFPKhseMOoxbYZ8vY53Oe4=
сборка завершается на Travis при попытке подключиться к удаленному URL с download.file()
. Travis возвращает эту ошибку (полный журнал сборки здесь ):
$ Rscript -e 'source("build.R")'
Error in download.file(url, tmp, quiet = TRUE) :
cannot open URL 'ftp://ftp.FreeBSD.org/pub/FreeBSD/README.TXT'
Calls: source -> withVisible -> eval -> eval -> download.file
In addition: Warning messages:
1: In download.file(url, tmp, quiet = TRUE) :
downloaded length 0 != reported length 4259
2: In download.file(url, tmp, quiet = TRUE) :
cannot open URL 'ftp://ftp.FreeBSD.org/pub/FreeBSD/README.TXT': FTP status was '425 Cannot open data connection'
Execution halted
Кажется, у Travis есть проблемы с подключением к удаленному URL, есть что-то, что я пропускаю? Я пробовал это с разными URL, поэтому он не указан c для того, что в примере. Полный репозиторий GitHub здесь .