Получение AppVeyor для разрешения сбоев с Python

Я возился с AppVeyor, пытаясь настроить его для своего проекта на GitHub. Мои сборки AppVeyor можно найти здесь.

Поскольку я использую Python, а версий так много, я хочу, чтобы 3.2, 3.3 и 3.4 не работали. Я могу сделать это с Travis-CI, набрав:

python:
    - "2.7"
    - "3.2" # End of life.
    - "3.3"
    - "3.4"
    - "3.5"
    - "3.6"
    - "nightly"

matrix:
  allow_failures:
    - python: "3.2"
    - python: "3.3"
    - python: "3.4"
    - python: "nightly"

Однако в AppVeyor я сделал следующее:

environment:
  matrix:
      # 32-bit Python.
    - PYTHON: "C:\\Python27"
      PYTHON_VERSION: "2.7.x"
      PYTHON_ARCH: "32"
    - PYTHON: "C:\\Python32"
      PYTHON_VERSION: "3.2.x"
      PYTHON_ARCH: "32"
    - PYTHON: "C:\\Python33"
      PYTHON_VERSION: "3.3.x"
      PYTHON_ARCH: "32"
    - PYTHON: "C:\\Python34"
      PYTHON_VERSION: "3.4.x"
      PYTHON_ARCH: "32"
    - PYTHON: "C:\\Python35"
      PYTHON_VERISON: "3.5.x"
      PYTHON_ARCH: "32"
    - PYTHON: "C:\\Python36"
      PYTHON_VERISON: "3.6.x"
      PYTHON_ARCH: "32"

      # 64-bit Python.
    - PYTHON: "C:\\Python27-x64"
      PYTHON_VERSION: "2.7.x"
      PYTHON_ARCH: "64"
    - PYTHON: "C:\\Python32-x64"
      PYTHON_VERSION: "3.2.x"
      PYTHON_ARCH: "64"
    - PYTHON: "C:\\Python33-x64"
      PYTHON_VERSION: "3.3.x"
      PYTHON_ARCH: "64"
    - PYTHON: "C:\\Python34-x64"
      PYTHON_VERSION: "3.4.x"
      PYTHON_ARCH: "64"
    - PYTHON: "C:\\Python35-x64"
      PYTHON_VERISON: "3.5.x"
      PYTHON_ARCH: "64"
    - PYTHON: "C:\\Python36-x64"
      PYTHON_VERISON: "3.6.x"
      PYTHON_ARCH: "64"

matrix:
    allow_failures:
        - platform: x86
          PYTHON: "C:\\Python32"
          PYTHON_VERSION: "3.2.x"
        - platform: x86
          PYTHON: "C:\\Python33"
          PYTHON_VERSION: "3.3.x"
        - platform: x86
          PYTHON: "C:\\Python34"
          PYTHON_VERSION: "3.4.x"
        - platform: x64
          PYTHON: "C:\\Python32-x64"
          PYTHON_VERSION: "3.2.x"
        - platform: x64
          PYTHON: "C:\\Python33-x64"
          PYTHON_VERSION: "3.3.x"
        - platform: x64
          PYTHON: "C:\\Python34-x64"
          PYTHON_VERSION: "3.4.x"

Как вы можете видеть ниже, в моей последней сборке по-прежнему не удается обнаружить допустимые сбои с 3.3 x64 бит.

Изображение сбоев AppVeyor.

Теперь я посмотрел, как правильно форматировать мои разрешения, и ничего не могу найти для Python. Однако тот, который я нашел, был вне проекта GitHub, похоронен в комментариях, поэтому я просто предположил, что буду следовать этому формату:

#matrix:
#  allow_failures:
#    - platform: x86
#      PYTHON: "C:\\Python27"
#      PYTHON_VERSION: "2.7"

Итак, мой вопрос: как я могу заставить AppVeyor разрешить мне сбой определенных сборок Python как для x86-битной, так и для x64-разрядной архитектуры?


person Community    schedule 18.04.2017    source источник


Ответы (1)


Разрешить сбои для какой-то конкретной конфигурации матрицы не означает, что задание для этой конфигурации всегда будет зеленым. Это означает, что даже если это задание завершится ошибкой, это не повлияет на состояние всей сборки.

platform имеет смысл в основном для решений/проектов Visual Studio, в вашем случае что-то вроде этого должно работать нормально:

matrix:
    allow_failures:
      - PYTHON: "C:\\Python32"
        PYTHON_VERSION: "3.2.x"
        PYTHON_ARCH: "32"
      - PYTHON: "C:\\Python33"
        PYTHON_VERSION: "3.3.x"
        PYTHON_ARCH: "32"
      - PYTHON: "C:\\Python34"
        PYTHON_VERSION: "3.4.x"
        PYTHON_ARCH: "32"
      - PYTHON: "C:\\Python32-x64"
        PYTHON_VERSION: "3.2.x"
        PYTHON_ARCH: "64"
      - PYTHON: "C:\\Python33-x64"
        PYTHON_VERSION: "3.3.x"
        PYTHON_ARCH: "64"  
      - PYTHON: "C:\\Python34-x64"
        PYTHON_VERSION: "3.4.x"
        PYTHON_ARCH: "64"
person Ilya Finkelsheyn    schedule 18.04.2017
comment
ДА! Большое спасибо! - person ; 19.04.2017