2016-04-11 8 views
3

私はTravisからGitHubリリースにビルド成果物を配備していますが、ビルドが実行されるOSに応じて異なるファイルを配備する必要があります。現在、私は私のdeployセクションでproviderを複製し、単にsection上でTRAVIS_OS_NAMEに条件を追加している:ビルドOSに基づいて異なるファイルを展開する

. . . 
deploy 
    - provider: releases 
    . . . 
    file: libsomething.so 
    on: 
     condition: $TRAVIS_OS_NAME = linux 
     . . . 
    - provider: releases 
    . . . 
    file: libsomething.dylib 
    on: 
     condition: $TRAVIS_OS_NAME = osx 
     . . . 

それを行うために、より効果的な方法はありますか?

答えて

2

展開されたファイルの名前に対応する環境変数を設定できます。

matrix: 
    include: 
    - os: linux 
     ... 
     env: DEPLOY_FILE=libsomething.so 
    - os: osx 
     ... 
     env: DEPLOY_FILE=libsomething.dylib 

deploy: 
    - provider: releases 
    ... 
    file: $DEPLOY_FILE 
関連する問題