Codebase list pywinrm / d4b9ae88-c4e3-4ae8-b516-cb1975313c0c/main appveyor.yml
d4b9ae88-c4e3-4ae8-b516-cb1975313c0c/main

Tree @d4b9ae88-c4e3-4ae8-b516-cb1975313c0c/main (Download .tar.gz)

appveyor.yml @d4b9ae88-c4e3-4ae8-b516-cb1975313c0c/mainraw · history · blame

environment:
  global:
    # SDK v7.0 MSVC Express 2008's SetEnv.cmd script will fail if the
    # /E:ON and /V:ON options are not enabled in the batch script intepreter
    # See: http://stackoverflow.com/a/13751649/163740
    WITH_COMPILER: "cmd /E:ON /V:ON /C .\\scripts\\run_with_compiler.cmd"
  matrix:
    # https://www.appveyor.com/docs/installed-software/#python
    # NOTE Python 2.6 for Windows is no longer supported by the Python core team
    - PYTHON: Python27
    - PYTHON: Python27-x64
    - PYTHON: Python35
    - PYTHON: Python35-x64
    - PYTHON: Python36
    - PYTHON: Python36-x64
    - PYTHON: Python37
    - PYTHON: Python37-x64

init:
  - ps: |
      $ErrorActionPreference = "Stop"
      # Override default Python version/architecture
      $env:Path="C:\$env:PYTHON;C:\$env:PYTHON\Scripts;$env:PATH"
      # disable "Python 2.7 is going away soon" warnings
      $env:PYTHONWARNINGS="ignore:DEPRECATION"
      python -c "import platform; print('Python', platform.python_version(), platform.architecture()[0])"
      # always install latest pip
      $(curl -UseBasicParsing https://bootstrap.pypa.io/get-pip.py).Content | python
      pip --version

install:
  - ps: |
      Enable-WSManCredSSP -Role Server -Force
      Set-Item WSMan:\localhost\Service\Auth\Basic $true
      Set-Item WSMan:\localhost\Service\Auth\CredSSP $true
      Set-Item WSMan:\localhost\Service\AllowUnencrypted $true
      Invoke-Expression $($env:WITH_COMPILER + " pip install cffi coveralls")
      pip install .
      pip install -r requirements-test.txt
      pip install .[credssp]

build: off  # Do not run MSBuild, build stuff at install step

build_script:
  - echo build_script

test_script:
  # configure winrm envvars for tests
  - ps: |
      $ErrorActionPreference = "Stop"
      $env:WINRM_USERNAME=$($env:USERNAME)
      $env:WINRM_PASSWORD=[Microsoft.Win32.Registry]::GetValue("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultPassword", '')
      $env:WINRM_TRANSPORT="basic"
      $env:WINRM_ENDPOINT="http://localhost:5985/wsman"

      py.test -v --cov-report=term-missing --cov=.

      # Run integration tests with NTLM to check message encryption
      $env:WINRM_TRANSPORT="ntlm"
      Set-Item WSMan:\localhost\Service\AllowUnencrypted $false
      py.test -v winrm/tests/test_integration_protocol.py winrm/tests/test_integration_session.py

      # Run integration tests with CredSSP to check message encryption
      $env:WINRM_TRANSPORT="credssp"
      py.test -v winrm/tests/test_integration_protocol.py winrm/tests/test_integration_session.py

after_test:
  - echo after_test