2016-08-25 6 views
1

У меня есть здание репо в AppVeyor который производит некоторые пакеты (.nupkg), которые затем толкнул в MyGet. Когда я занимаюсь разработкой на мастере, все персидское, но когда я нахожусь на другом ветке, я хочу, чтобы он строил, но НЕ нажимал пакеты, я прочитал some documentation на ветвях, и, похоже, у меня есть одна конфигурация для мастера, а другая для других ветвей , однако это означало бы дублировать всю мою конфигурацию, за исключением строки, которая фактически нажимает на MyGet. Мой appveyor.yml файл выглядит примерно так:appveyor работает после сборки действия только на главной ветке

version: 0.0.{version} 

before_build: 
    - do some stuff (I have about 5 of these) 
    - ... 

build_script: 
    - cmd: build.cmd 

after_build: 
    - push to myGet 

Я хотел бы, чтобы выполнить команду after_build, если находится на master ветви.

Есть ли способ запускать некоторые команды в зависимости от их ветви без перезаписи всей конфигурации для этой ветви (или типа ветви или чего-то еще)?

ответ

1

Вы можете использовать переменную окружения APPVEYOR_REPO_BRANCH. Попробуйте следующее:

after_build: 
    - IF %APPVEYOR_REPO_BRANCH%==master push to myGet 

Ilya.

+0

Я закончил тем, что использовал скрипт * PowerShell *. Я надеялся, что есть более явный способ сделать это, используя некоторую конфигурацию * AppVeyor *, такую ​​как 'on branch: master', что-то вроде этого. Спасибо за ответ, хотя;). – Luiso

Смежные вопросы