2017-03-09 12 views
1

SQL Server、MySQL、およびPythonのさまざまな組み合わせで複数のジョブを実行するAppVeyorビルドをセットアップするにはどうすればよいですか?AppVeyorでのPythonとSQL Serverの複数の組み合わせ

はのは、私は以下の組み合わせを実行したいとしましょう:

  • SQL Server 2012のとPython 2.7
  • SQL Server 2012のとPython 3.4

  • のSQL Server 2014とPython 2.7
  • SQL Server 2014およびPython 3.4
  • のSQL Server 2016
    とPython 2.7
  • のSQL Server 2016とPython 3.6

  • のMySQL 5.7とPython 2.7
  • のMySQL 5.7とPython 3.6

私はどのように私のappveyor.ymlファイルを記述しますか?これは私が今までに持っているものです:

environment: 

    matrix: 

    # For Python versions available on Appveyor, see 
    # http://www.appveyor.com/docs/installed-software#python 

    - PYTHON: "C:\\Python27-x64" 

    - PYTHON: "C:\\Python34-x64" 
     DISTUTILS_USE_SDK: "1" 

    - PYTHON: "C:\\Python36-x64" 

services: 
    - mysql 
    - mssql2012sp1 
    - mssql2014 
    - mssql2016 

platform: 
    - x86 

install: 
    - "%PYTHON%\\python.exe -m pip install django==1.10" 

test_script: 
    - "%PYTHON%\\python.exe manage.py test" 

答えて

1

サービスはビルドマトリックスではサポートされていません。したがって、SQL Serverバージョンの環境変数を導入し、それに応じて起動する必要があります。 このYAMLはうまくいくはずです:

init: 
- cmd: net start %SQL% 
environment: 
    matrix: 
    - SQL: MSSQL$SQL2012SP1 
    PYTHON: C:\\Python27-x64 
    - SQL: MSSQL$SQL2012SP1 
    PYTHON: C:\\Python34-x64 
    DISTUTILS_USE_SDK: 1 
    - SQL: MSSQL$SQL2014 
    PYTHON: C:\\Python27-x64 
    - SQL: MSSQL$SQL2014 
    PYTHON: C:\\Python34-x64 
    DISTUTILS_USE_SDK: 1 
    - SQL: MSSQL$SQL2016 
    PYTHON: C:\\Python27-x64 
    - SQL: MSSQL$SQL2016 
    PYTHON: C:\\Python36-x64 
    - SQL: MySQL57 
    PYTHON: C:\\Python27-x64 
    - SQL: MySQL57 
    PYTHON: C:\\Python36-x64 
+0

ありがとう!これは素晴らしいです。 AppVeyorで利用可能なすべてのSQLサーバーとバージョンのリストはどこにありますか? –

+0

[こちら](https://www.appveyor.com/docs/installed-software/#services-and-databases)を確認してください。この部分はすぐに変更される予定です。また、[RDP](https://www.appveyor.com/docs/how-to/rdp-to-build-worker/)で作業員のVMを構築することもできます – ilyaf

+0

最初のリンクがすでに破損していることをご承知おきください) –

関連する問題