blob: 0480c233dae25cde49bfa65f0ff130cf179ab223 [file] [log] [blame]
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
[tox]
envlist = flake8,{py27,py35}-backend_{mysql,sqlite,postgres}-env_{docker,kubernetes}
skipsdist = True
[global]
wheel_dir = {homedir}/.wheelhouse
find_links =
{homedir}/.wheelhouse
{homedir}/.pip-cache
[testenv]
deps =
wheel
codecov
basepython =
py27: python2.7
py35: python3.5
setenv =
HADOOP_DISTRO=cdh
HADOOP_HOME=/tmp/hadoop-cdh
HADOOP_OPTS=-D/tmp/krb5.conf
HIVE_HOME=/tmp/hive
MINICLUSTER_HOME=/tmp/minicluster-1.1-SNAPSHOT
KRB5_CONFIG=/etc/krb5.conf
KRB5_KTNAME=/etc/airflow.keytab
backend_mysql: AIRFLOW__CORE__SQL_ALCHEMY_CONN=mysql://root@mysql/airflow
backend_mysql: AIRFLOW__CELERY__RESULT_BACKEND=db+mysql://root@mysql/airflow
backend_postgres: AIRFLOW__CORE__SQL_ALCHEMY_CONN=postgresql+psycopg2://postgres:airflow@postgres/airflow
backend_postgres: AIRFLOW__CELERY__RESULT_BACKEND=db+postgresql://postgres:airflow@postgres/airflow
backend_sqlite: AIRFLOW__CORE__SQL_ALCHEMY_CONN=sqlite:///{homedir}/airflow.db
backend_sqlite: AIRFLOW__CORE__EXECUTOR=SequentialExecutor
passenv = *
commands =
pip wheel --no-use-pep517 --progress-bar off -w {homedir}/.wheelhouse -f {homedir}/.wheelhouse -e .[devel_ci]
pip install --no-use-pep517 --progress-bar off --find-links={homedir}/.wheelhouse --no-index -e .[devel_ci]
env_docker: {toxinidir}/scripts/ci/1-setup-env.sh
env_docker: {toxinidir}/scripts/ci/2-setup-kdc.sh
backend_mysql: {toxinidir}/scripts/ci/3-setup-mysql.sh
{toxinidir}/scripts/ci/5-run-tests.sh []
codecov -e TOXENV
[testenv:flake8]
basepython = python3
deps =
flake8>=3.6.0
commands = flake8