Проверьте несколько подкаталогов с помощью AppVeyor

У меня есть проект с несколькими подкаталогами, которые я все хочу проверить по очереди. На самом деле, эти каталоги являются устаревшей версией веток, которые я должен хранить по разным причинам.

В моей основной папке у меня есть подкаталоги patch а также pkg и хочу проверить оба. Я попытался использовать следующий скрипт для достижения этой цели.

environment:
  matrix:
  - TEST_DIR: patch/
  - TEST_DIR: pkg/

before_build:
  - ps: echo %TEST_DIR%
  - ps: cd %TEST_DIR%

build_script:
  - travis-tool.sh install_deps

Я также использовал $TEST_DIR а также были строки

  - ps: echo %TEST_DIR%
  - ps: cd %TEST_DIR%

в build_script как раз перед - travis-tool.sh install_deps, Ничего из этого не сработало.

Когда я использую echo %TEST_DIR% это эхо %TEST_DIR% и с echo $TEST_DIR ничего не отражено, то есть строка кажется пустой. Есть какие-нибудь подсказки?


В Travis-CI я могу использовать

## test multiple directories 
## (see https://lord.io/blog/2014/travis-multiple-subdirs/)
env:
 - TEST_DIR=patch/
 - TEST_DIR=pkg/

language: r
sudo: required

## change directory before installation 
## as R packages are not available elsewise
before_install:
  - cd $TEST_DIR

который работает как шарм.

1 ответ

Решение

После обсуждения со службой поддержки AppVeyor я нашел правильное решение проблемы:

environment:
  matrix:
  - TEST_DIR: patch
  - TEST_DIR: pkg

before_build:
  - cd %TEST_DIR%

Итак, мне просто нужно было сбросить тип консоли (ps или же cmd) чтобы можно было менять каталоги.

В моем случае, создавая и проверяя проект R, мне дополнительно нужно было добавить несколько строк для копирования сценариев и т. Д. before_build, Все вместе, before_build должен выглядеть так:

before_build:
  - cp ..\travis-tool.sh .\travis-tool.sh
  - cp travis-tool.sh.cmd %TEST_DIR%\travis-tool.sh.cmd
  - cd %TEST_DIR%
  - bash -c "echo '^travis-tool\.sh\.cmd$' >> .Rbuildignore"

Теперь AppVeyor можно использовать, как обычно, со скриптами, предоставляемыми проектом github R + AppVeyor.

Другие вопросы по тегам