Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 0 additions & 19 deletions .codecov.yml

This file was deleted.

9 changes: 8 additions & 1 deletion .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,14 @@
python:
pip_install: true
extra_requirements:
- all_dbs
- databricks
- doc
- docker
- gcp_api
- emr
- gcp_api
- s3
- salesforce
- sendgrid
- ssh
- slack
6 changes: 1 addition & 5 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,17 +42,13 @@ cache:
before_install:
- sudo ls -lh $HOME/.cache/pip/
- sudo rm -rf $HOME/.cache/pip/* $HOME/.wheelhouse/*
- sudo chown -R travis.travis $HOME/.cache/pip
- sudo chown -R travis:travis $HOME/.cache/pip
install:
# Use recent docker-compose version
- sudo rm /usr/local/bin/docker-compose
- curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-`uname -s`-`uname -m` > docker-compose
- chmod +x docker-compose
- sudo mv docker-compose /usr/local/bin
- pip install --upgrade pip
- pip install codecov
script:
- docker-compose --log-level ERROR -f scripts/ci/docker-compose.yml run airflow-testing /app/scripts/ci/run-ci.sh
after_success:
- sudo chown -R travis.travis .
- codecov
1 change: 0 additions & 1 deletion CHANGELOG.txt
Original file line number Diff line number Diff line change
Expand Up @@ -780,7 +780,6 @@ AIRFLOW 1.10.0, 2018-08-03
[AIRFLOW-1609] Fix gitignore to ignore all venvs
[AIRFLOW-1601] Add configurable task cleanup time

>>>>>>> 862ad8b9... [AIRFLOW-XXX] Update changelog for 1.10
AIRFLOW 1.9.0, 2018-01-02
-------------------------

Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ There are three ways to setup an Apache Airflow development environment.
1. Using tools and libraries installed directly on your system.

Install Python (2.7.x or 3.4.x), MySQL, and libxml by using system-level package
managers like yum, apt-get for Linux, or Homebrew for Mac OS at first. Refer to the [base CI Dockerfile](https://github.com/apache/incubator-airflow-ci/blob/master/Dockerfile.base) for
managers like yum, apt-get for Linux, or Homebrew for Mac OS at first. Refer to the [base CI Dockerfile](https://github.com/apache/incubator-airflow-ci/blob/master/Dockerfile) for
a comprehensive list of required packages.

Then install python development requirements. It is usually best to work in a virtualenv:
Expand Down
1 change: 1 addition & 0 deletions LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -220,6 +220,7 @@ at licenses/LICENSE-[project].txt.
(ALv2 License) hue (https://github.com/cloudera/hue/)
(ALv2 License) jqclock (https://github.com/JohnRDOrazio/jQuery-Clock-Plugin)
(ALv2 License) bootstrap3-typeahead (https://github.com/bassjobsen/Bootstrap-3-Typeahead)
(ALv2 License) airflow.contrib.auth.backends.github_enterprise_auth

========================================================================
MIT licenses
Expand Down
5 changes: 5 additions & 0 deletions NOTICE
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,11 @@ is subject to the terms and conditions of their respective licenses.
See the LICENSE file for a list of subcomponents and dependencies and
their respective licenses.

airflow.contrib.auth.backends.github_enterprise_auth:
-----------------------------------------------------

* Copyright 2015 Matthew Pelland (matt@pelland.io)

hue:
-----
This product contains a modified portion of 'Hue' developed by Cloudera, Inc.
Expand Down
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
[![Coverage Status](https://img.shields.io/codecov/c/github/apache/incubator-airflow/master.svg)](https://codecov.io/github/apache/incubator-airflow?branch=master)
[![Documentation Status](https://readthedocs.org/projects/airflow/badge/?version=latest)](https://airflow.readthedocs.io/en/latest/?badge=latest)
[![License](http://img.shields.io/:license-Apache%202-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0.txt)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/apache-airflow.svg)](https://pypi.org/project/apache-airflow/)
[![Join the chat at https://gitter.im/apache/incubator-airflow](https://badges.gitter.im/apache/incubator-airflow.svg)](https://gitter.im/apache/incubator-airflow?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

_NOTE: The transition from 1.8.0 (or before) to 1.8.1 (or after) requires uninstalling Airflow before installing the new version. The package name was changed from `airflow` to `apache-airflow` as of version 1.8.1._
Expand Down Expand Up @@ -93,6 +94,7 @@ if you may.
Currently **officially** using Airflow:

1. [6play](https://www.6play.fr) [[@lemourA](https://github.com/lemoura), [@achaussende](https://github.com/achaussende), [@d-nguyen](https://github.com/d-nguyen), [@julien-gm](https://github.com/julien-gm)]
1. [8fit](https://8fit.com/) [[@nicor88](https://github.com/nicor88), [@frnzska](https://github.com/frnzska)]
1. [AdBOOST](https://www.adboost.sk) [[AdBOOST](https://github.com/AdBOOST)]
1. [Agari](https://github.com/agaridata) [[@r39132](https://github.com/r39132)]
1. [Airbnb](http://airbnb.io/) [[@mistercrunch](https://github.com/mistercrunch), [@artwr](https://github.com/artwr)]
Expand Down Expand Up @@ -152,6 +154,7 @@ Currently **officially** using Airflow:
1. [eRevalue](https://www.datamaran.com) [[@hamedhsn](https://github.com/hamedhsn)]
1. [evo.company](https://evo.company/) [[@orhideous](https://github.com/orhideous)]
1. [Flipp](https://www.flipp.com) [[@sethwilsonwishabi](https://github.com/sethwilsonwishabi)]
1. [Format](https://www.format.com) [[@format](https://github.com/4ormat) & [@jasonicarter](https://github.com/jasonicarter)]
1. [FreshBooks](https://github.com/freshbooks) [[@DinoCow](https://github.com/DinoCow)]
1. [Fundera](https://fundera.com) [[@andyxhadji](https://github.com/andyxhadji)]
1. [G Adventures](https://gadventures.com) [[@samuelmullin](https://github.com/samuelmullin)]
Expand Down Expand Up @@ -250,6 +253,7 @@ Currently **officially** using Airflow:
1. [Stripe](https://stripe.com) [[@jbalogh](https://github.com/jbalogh)]
1. [Strongmind](https://www.strongmind.com) [[@tomchapin](https://github.com/tomchapin) & [@wongstein](https://github.com/wongstein)]
1. [Tails.com](https://tails.com/) [[@alanmcruickshank](https://github.com/alanmcruickshank)]
1. [THE ICONIC](https://www.theiconic.com.au/) [[@revathijay](https://github.com/revathijay)] [[@ilikedata](https://github.com/ilikedata)]
1. [Thinking Machines](https://thinkingmachin.es) [[@marksteve](https://github.com/marksteve)]
1. [Thinknear](https://www.thinknear.com/) [[@d3cay1](https://github.com/d3cay1), [@ccson](https://github.com/ccson), & [@ababian](https://github.com/ababian)]
1. [Thumbtack](https://www.thumbtack.com/) [[@natekupp](https://github.com/natekupp)]
Expand Down
1 change: 1 addition & 0 deletions airflow/api/common/experimental/mark_tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,7 @@ def _set_dag_run_state(dag_id, execution_date, state, session=None):
dr.state = state
if state == State.RUNNING:
dr.start_date = timezone.utcnow()
dr.end_date = None
else:
dr.end_date = timezone.utcnow()
session.commit()
Expand Down
1 change: 1 addition & 0 deletions airflow/configuration.py
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@ class AirflowConfigParser(ConfigParser):
'celery': {
# Remove these keys in Airflow 1.11
'worker_concurrency': 'celeryd_concurrency',
'result_backend': 'celery_result_backend',
'broker_url': 'celery_broker_url',
'ssl_active': 'celery_ssl_active',
'ssl_cert': 'celery_ssl_cert',
Expand Down
24 changes: 11 additions & 13 deletions airflow/contrib/auth/backends/github_enterprise_auth.py
Original file line number Diff line number Diff line change
@@ -1,21 +1,19 @@
# -*- coding: utf-8 -*-
#
# 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
# See the NOTICE file distributed with this work for additional information
# regarding copyright ownership.
#
# Licensed 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.
# 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.
import flask_login

# Need to expose these downstream
Expand Down
9 changes: 6 additions & 3 deletions airflow/contrib/hooks/aws_hook.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,8 +84,9 @@ class AwsHook(BaseHook):
This class is a thin wrapper around the boto3 python library.
"""

def __init__(self, aws_conn_id='aws_default'):
def __init__(self, aws_conn_id='aws_default', verify=None):
self.aws_conn_id = aws_conn_id
self.verify = verify

def _get_credentials(self, region_name):
aws_access_key_id = None
Expand Down Expand Up @@ -162,12 +163,14 @@ def _get_credentials(self, region_name):
def get_client_type(self, client_type, region_name=None):
session, endpoint_url = self._get_credentials(region_name)

return session.client(client_type, endpoint_url=endpoint_url)
return session.client(client_type, endpoint_url=endpoint_url,
verify=self.verify)

def get_resource_type(self, resource_type, region_name=None):
session, endpoint_url = self._get_credentials(region_name)

return session.resource(resource_type, endpoint_url=endpoint_url)
return session.resource(resource_type, endpoint_url=endpoint_url,
verify=self.verify)

def get_session(self, region_name=None):
"""Get the underlying boto3.session."""
Expand Down
Loading