Improve CI handling

This commit is contained in:
Ivan Kravets
2015-07-30 17:33:45 +03:00
parent e43635bf9b
commit d27f9a9d09
2 changed files with 29 additions and 3 deletions

View File

@ -7,7 +7,7 @@ from os.path import isfile, join
from platformio import __version__
from platformio.exception import InvalidSettingName, InvalidSettingValue
from platformio.util import get_home_dir
from platformio.util import get_home_dir, is_ci
DEFAULT_SETTINGS = {
"check_platformio_interval": {
@ -109,8 +109,7 @@ def get_setting(name):
if name == "enable_prompts":
# disable prompts for Continuous Integration systems
# and when global "--force" option is set
if any([getenv("CI", "").lower() == "true",
get_session_var("force_option")]):
if any([is_ci(), get_session_var("force_option")]):
return False
_env_name = "PLATFORMIO_SETTING_%s" % name.upper()

View File

@ -7,6 +7,7 @@ import re
import sys
import threading
import uuid
from os import getenv
from time import time
import click
@ -197,6 +198,32 @@ def _finalize():
def on_command(ctx): # pylint: disable=W0613
mp = MeasurementProtocol()
mp.send("screenview")
if util.is_ci():
measure_ci()
def measure_ci():
event = {
"category": "CI",
"action": "NoName",
"label": None
}
envmap = {
"APPVEYOR": {"label": getenv("APPVEYOR_REPO_NAME")},
"CIRCLECI": {"label": "%s/%s" % (getenv("CIRCLE_PROJECT_USERNAME"),
getenv("CIRCLE_PROJECT_REPONAME"))},
"TRAVIS": {"label": getenv("TRAVIS_REPO_SLUG")},
"SHIPPABLE": {"label": getenv("REPO_NAME")},
"DRONE": {"label": getenv("DRONE_REPO_SLUG")}
}
for key, value in envmap.iteritems():
if getenv(key, "").lower() != "true":
continue
event.update({"action": key, "label": value['label']})
on_event(**event)
def on_run_environment(options, targets):