ci_diff_helper.appveyor module

Set of utilities for dealing with AppVeyor CI.

This module provides a custom configuration type AppVeyor for the AppVeyor CI system.

This module uses a selection of environment variables to detect the state of AppVeyor configuration. See environment_vars for more details.

AppVeyor Configuration Type

When running in AppVeyor, you can automatically detect your current environment and get the configuration object:

>>> import ci_diff_helper
>>> config = ci_diff_helper.get_config()
>>> config
<AppVeyor (active=True)>

To use the AppVeyor configuration type directly:

>>> config = ci_diff_helper.AppVeyor()
>>> config
<AppVeyor (active=True)>
>>> config.branch
'master'
>>> config.provider
<AppVeyorRepoProvider.github: 'github'>
class ci_diff_helper.appveyor.AppVeyor[source]

Bases: ci_diff_helper._config_base.Config

Represent AppVeyor state and cache return values.

active

bool – Indicates if currently running in the target CI system.

branch

bool – Indicates the current branch in the target CI system.

This may indicate the active branch or the base branch of a pull request.

is_merge

bool – Indicates if the HEAD commit is a merge commit.

provider

str – The code hosting provider for the current AppVeyor build.

tag

str – The git tag of the current AppVeyor build.

Note

We only expect the APPVEYOR_REPO_TAG_NAME environment variable to be set when APPVEYOR_REPO_TAG=true indicates the build was started by a pushed tag. However, we don’t verify that we are in a build started by a tag before checking for the tag.

class ci_diff_helper.appveyor.AppVeyorRepoProvider[source]

Bases: enum.Enum

Enum representing all possible AppVeyor repo providers.

bitbucket = 'bitbucket'
github = 'github'
gitlab = 'gitlab'
kiln = 'kiln'
vso = 'vso'