Skip to content

Commit

Permalink
Release 2.2.0 (#18892)
Browse files Browse the repository at this point in the history
  • Loading branch information
jedcunningham committed Oct 11, 2021
1 parent d59be1e commit d425f89
Show file tree
Hide file tree
Showing 18 changed files with 47 additions and 29 deletions.
3 changes: 3 additions & 0 deletions .asf.yaml
Expand Up @@ -54,6 +54,9 @@ github:
v2-1-stable:
required_pull_request_reviews:
required_approving_review_count: 1
v2-2-stable:
required_pull_request_reviews:
required_approving_review_count: 1

collaborators:
- auvipy
Expand Down
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/airflow_bug_report.yml
Expand Up @@ -25,8 +25,8 @@ body:
discuss Airflow 1.10, open [Discussion](https://github.com/apache/airflow/discussions) instead!
multiple: false
options:
- "2.2.0rc1 (release candidate)"
- "2.1.4 (latest released)"
- "2.2.0 (latest released)"
- "2.1.4"
- "2.1.3"
- "2.1.2"
- "2.1.1"
Expand Down
4 changes: 2 additions & 2 deletions BREEZE.rst
Expand Up @@ -1275,7 +1275,7 @@ This is the current syntax for `./breeze <./breeze>`_:
-t, --install-airflow-reference INSTALL_AIRFLOW_REFERENCE
Installs Airflow directly from reference in GitHub when building PROD image.
This can be a GitHub branch like main or v2-1-test, or a tag like 2.1.0a1.
This can be a GitHub branch like main or v2-2-test, or a tag like 2.2.0rc1.
--installation-method INSTALLATION_METHOD
Method of installing Airflow in PROD image - either from the sources ('.')
Expand Down Expand Up @@ -2440,7 +2440,7 @@ This is the current syntax for `./breeze <./breeze>`_:
-t, --install-airflow-reference INSTALL_AIRFLOW_REFERENCE
Installs Airflow directly from reference in GitHub when building PROD image.
This can be a GitHub branch like main or v2-1-test, or a tag like 2.1.0a1.
This can be a GitHub branch like main or v2-2-test, or a tag like 2.2.0rc1.
--installation-method INSTALLATION_METHOD
Method of installing Airflow in PROD image - either from the sources ('.')
Expand Down
14 changes: 7 additions & 7 deletions README.md
Expand Up @@ -82,7 +82,7 @@ Airflow is not a streaming solution, but it is often used to process real-time d

Apache Airflow is tested with:

| | Main version (dev) | Stable version (2.1.4) |
| | Main version (dev) | Stable version (2.2.0) |
| -------------------- | ------------------------- | ------------------------ |
| Python | 3.6, 3.7, 3.8, 3.9 | 3.6, 3.7, 3.8, 3.9 |
| Kubernetes | 1.18, 1.19, 1.20 | 1.18, 1.19, 1.20 |
Expand Down Expand Up @@ -142,15 +142,15 @@ them to the appropriate format and workflow that your tool requires.


```bash
pip install 'apache-airflow==2.1.4' \
--constraint "https://raw.githubusercontent.com/apache/airflow/constraints-2.1.4/constraints-3.7.txt"
pip install 'apache-airflow==2.2.0' \
--constraint "https://raw.githubusercontent.com/apache/airflow/constraints-2.2.0/constraints-3.7.txt"
```

2. Installing with extras (i.e., postgres, google)

```bash
pip install 'apache-airflow[postgres,google]==2.1.4' \
--constraint "https://raw.githubusercontent.com/apache/airflow/constraints-2.1.4/constraints-3.7.txt"
pip install 'apache-airflow[postgres,google]==2.2.0' \
--constraint "https://raw.githubusercontent.com/apache/airflow/constraints-2.2.0/constraints-3.7.txt"
```

For information on installing provider packages, check
Expand Down Expand Up @@ -252,7 +252,7 @@ Apache Airflow version life cycle:

| Version | Current Patch/Minor | State | First Release | Limited Support | EOL/Terminated |
|---------|---------------------|-----------|---------------|-----------------|----------------|
| 2 | 2.1.4 | Supported | Dec 17, 2020 | Dec 31, 2021 | TBD |
| 2 | 2.2.0 | Supported | Dec 17, 2020 | TBD | TBD |
| 1.10 | 1.10.15 | EOL | Aug 27, 2018 | Dec 17, 2020 | June 17, 2021 |
| 1.9 | 1.9.0 | EOL | Jan 03, 2018 | Aug 27, 2018 | Aug 27, 2018 |
| 1.8 | 1.8.2 | EOL | Mar 19, 2017 | Jan 03, 2018 | Jan 03, 2018 |
Expand All @@ -278,7 +278,7 @@ They are based on the official release schedule of Python and Kubernetes, nicely

2. The "oldest" supported version of Python/Kubernetes is the default one. "Default" is only meaningful
in terms of "smoke tests" in CI PRs, which are run using this default version and the default reference
image available. Currently `apache/airflow:latest` and `apache/airflow:2.1.4` images
image available. Currently `apache/airflow:latest` and `apache/airflow:2.2.0` images
are both Python 3.6 images. However, the first MINOR/MAJOR release of Airflow release after 23.12.2021 will
become Python 3.7 images.

Expand Down
3 changes: 3 additions & 0 deletions UPDATING.md
Expand Up @@ -27,6 +27,7 @@ assists users migrating to a new version.
**Table of contents**

- [Main](#main)
- [Airflow 2.2.0](#airflow-220)
- [Airflow 2.1.4](#airflow-214)
- [Airflow 2.1.3](#airflow-213)
- [Airflow 2.1.2](#airflow-212)
Expand Down Expand Up @@ -76,6 +77,8 @@ https://developers.google.com/style/inclusive-documentation
-->

## Airflow 2.2.0

### `worker_log_server_port` configuration has been moved to the ``logging`` section.

The `worker_log_server_port` configuration option has been moved from `[celery]` section to `[logging]` section to allow for re-use between different executors.
Expand Down
Expand Up @@ -29,7 +29,7 @@ spec:
image: "k8s.gcr.io/git-sync/git-sync:v3.3.0"
env:
- name: GIT_SYNC_BRANCH
value: "v2-1-stable"
value: "v2-2-stable"
- name: GIT_SYNC_REPO
value: "https://github.com/apache/airflow.git"
- name: GIT_SYNC_DEPTH
Expand Down
6 changes: 5 additions & 1 deletion breeze
Expand Up @@ -2430,7 +2430,7 @@ ${FORMATTED_INSTALL_AIRFLOW_VERSIONS}
-t, --install-airflow-reference INSTALL_AIRFLOW_REFERENCE
Installs Airflow directly from reference in GitHub when building PROD image.
This can be a GitHub branch like main or v2-1-test, or a tag like 2.1.0a1.
This can be a GitHub branch like main or v2-2-test, or a tag like 2.2.0rc1.
--installation-method INSTALLATION_METHOD
Method of installing Airflow in PROD image - either from the sources ('.')
Expand Down Expand Up @@ -3087,12 +3087,16 @@ function breeze::check_and_save_all_params() {
export BRANCH_NAME="v2-0-test"
elif [[ ${INSTALL_AIRFLOW_REFERENCE=} == *2_1* ]]; then
export BRANCH_NAME="v2-1-test"
elif [[ ${INSTALL_AIRFLOW_REFERENCE=} == *2_2* ]]; then
export BRANCH_NAME="v2-2-test"
fi
elif [[ -n "${INSTALL_AIRFLOW_VERSION=}" ]]; then
if [[ ${INSTALL_AIRFLOW_VERSION=} == *2.0* ]]; then
export BRANCH_NAME="v2-0-test"
elif [[ ${INSTALL_AIRFLOW_VERSION=} == *2.1* ]]; then
export BRANCH_NAME="v2-1-test"
elif [[ ${INSTALL_AIRFLOW_VERSION=} == *2.2* ]]; then
export BRANCH_NAME="v2-2-test"
fi
fi

Expand Down
4 changes: 4 additions & 0 deletions codecov.yml
Expand Up @@ -42,6 +42,8 @@ coverage:
- v2-0-test
- v2-1-stable
- v2-1-test
- v2-2-stable
- v2-2-test
if_not_found: success
if_ci_failed: error
informational: true
Expand All @@ -59,6 +61,8 @@ coverage:
- v2-0-test
- v2-1-stable
- v2-1-test
- v2-2-stable
- v2-2-test
if_no_uploads: error
if_not_found: success
if_ci_failed: error
Expand Down
Expand Up @@ -15,7 +15,7 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:2.2.0.dev0
FROM apache/airflow:2.3.0.dev0
USER root
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
Expand Down
Expand Up @@ -15,7 +15,7 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:2.2.0.dev0
FROM apache/airflow:2.3.0.dev0
USER root
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
Expand Down
Expand Up @@ -15,6 +15,6 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:2.2.0.dev0
FROM apache/airflow:2.3.0.dev0
RUN pip install --no-cache-dir apache-airflow-providers-docker==2.1.0
# [END Dockerfile]
Expand Up @@ -15,6 +15,6 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:2.2.0.dev0
FROM apache/airflow:2.3.0.dev0
RUN pip install --no-cache-dir lxml
# [END Dockerfile]
Expand Up @@ -15,7 +15,7 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:2.2.0.dev0
FROM apache/airflow:2.3.0.dev0

COPY --chown=airflow:root test_dag.py /opt/airflow/dags

Expand Down
Expand Up @@ -15,7 +15,7 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:2.2.0.dev0
FROM apache/airflow:2.3.0.dev0
RUN umask 0002; \
mkdir -p ~/writeable-directory
# [END Dockerfile]
Expand Up @@ -25,7 +25,7 @@ cd "${AIRFLOW_SOURCES}"
rm docker-context-files/*.whl docker-context-files/*.tar.gz docker-context-files/*.txt || true

curl -Lo "docker-context-files/constraints-3.7.txt" \
https://raw.githubusercontent.com/apache/airflow/constraints-2.2.0.dev0/constraints-3.7.txt
https://raw.githubusercontent.com/apache/airflow/constraints-2.3.0.dev0/constraints-3.7.txt

# For Airflow pre 2.1 you need to use PIP 20.2.4 to install/download Airflow packages.
pip install pip==20.2.4
Expand All @@ -39,7 +39,7 @@ pip download --dest docker-context-files \
docker build . \
--build-arg PYTHON_BASE_IMAGE="python:3.7-slim-buster" \
--build-arg AIRFLOW_INSTALLATION_METHOD="apache-airflow" \
--build-arg AIRFLOW_VERSION="2.2.0.dev0" \
--build-arg AIRFLOW_VERSION="2.3.0.dev0" \
--build-arg INSTALL_MYSQL_CLIENT="false" \
--build-arg INSTALL_MSSQL_CLIENT="false" \
--build-arg AIRFLOW_PRE_CACHED_PIP_PACKAGES="false" \
Expand Down
14 changes: 7 additions & 7 deletions docs/docker-stack/entrypoint.rst
Expand Up @@ -132,7 +132,7 @@ if you specify extra arguments. For example:

.. code-block:: bash
docker run -it apache/airflow:2.2.0.dev0-python3.6 bash -c "ls -la"
docker run -it apache/airflow:2.3.0.dev0-python3.6 bash -c "ls -la"
total 16
drwxr-xr-x 4 airflow root 4096 Jun 5 18:12 .
drwxr-xr-x 1 root root 4096 Jun 5 18:12 ..
Expand All @@ -144,21 +144,21 @@ you pass extra parameters. For example:

.. code-block:: bash
> docker run -it apache/airflow:2.2.0.dev0-python3.6 python -c "print('test')"
> docker run -it apache/airflow:2.3.0.dev0-python3.6 python -c "print('test')"
test
If first argument equals to "airflow" - the rest of the arguments is treated as an airflow command
to execute. Example:

.. code-block:: bash
docker run -it apache/airflow:2.2.0.dev0-python3.6 airflow webserver
docker run -it apache/airflow:2.3.0.dev0-python3.6 airflow webserver
If there are any other arguments - they are simply passed to the "airflow" command

.. code-block:: bash
> docker run -it apache/airflow:2.2.0.dev0-python3.6 help
> docker run -it apache/airflow:2.3.0.dev0-python3.6 help
usage: airflow [-h] GROUP_OR_COMMAND ...
positional arguments:
Expand Down Expand Up @@ -297,7 +297,7 @@ database and creating an ``admin/admin`` Admin user with the following command:
--env "_AIRFLOW_DB_UPGRADE=true" \
--env "_AIRFLOW_WWW_USER_CREATE=true" \
--env "_AIRFLOW_WWW_USER_PASSWORD=admin" \
apache/airflow:2.2.0.dev0-python3.8 webserver
apache/airflow:2.3.0.dev0-python3.8 webserver
.. code-block:: bash
Expand All @@ -306,7 +306,7 @@ database and creating an ``admin/admin`` Admin user with the following command:
--env "_AIRFLOW_DB_UPGRADE=true" \
--env "_AIRFLOW_WWW_USER_CREATE=true" \
--env "_AIRFLOW_WWW_USER_PASSWORD_CMD=echo admin" \
apache/airflow:2.2.0.dev0-python3.8 webserver
apache/airflow:2.3.0.dev0-python3.8 webserver
The commands above perform initialization of the SQLite database, create admin user with admin password
and Admin role. They also forward local port ``8080`` to the webserver port and finally start the webserver.
Expand Down Expand Up @@ -346,6 +346,6 @@ Example:
--env "_AIRFLOW_DB_UPGRADE=true" \
--env "_AIRFLOW_WWW_USER_CREATE=true" \
--env "_AIRFLOW_WWW_USER_PASSWORD_CMD=echo admin" \
apache/airflow:2.2.0.dev0-python3.8 webserver
apache/airflow:2.3.0.dev0-python3.8 webserver
This method is only available starting from Docker image of Airflow 2.1.1 and above.
4 changes: 4 additions & 0 deletions scripts/ci/libraries/_build_images.sh
Expand Up @@ -62,10 +62,14 @@ function build_images::add_build_args_for_remote_install() {
AIRFLOW_BRANCH_FOR_PYPI_PRELOADING="v2-0-test"
elif [[ ${AIRFLOW_VERSION} == 'v2-1-test' ]]; then
AIRFLOW_BRANCH_FOR_PYPI_PRELOADING="v2-1-test"
elif [[ ${AIRFLOW_VERSION} == 'v2-2-test' ]]; then
AIRFLOW_BRANCH_FOR_PYPI_PRELOADING="v2-2-test"
elif [[ ${AIRFLOW_VERSION} =~ v?2\.0* ]]; then
AIRFLOW_BRANCH_FOR_PYPI_PRELOADING="v2-0-stable"
elif [[ ${AIRFLOW_VERSION} =~ v?2\.1* ]]; then
AIRFLOW_BRANCH_FOR_PYPI_PRELOADING="v2-1-stable"
elif [[ ${AIRFLOW_VERSION} =~ v?2\.2* ]]; then
AIRFLOW_BRANCH_FOR_PYPI_PRELOADING="v2-2-stable"
else
AIRFLOW_BRANCH_FOR_PYPI_PRELOADING=${DEFAULT_BRANCH}
fi
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Expand Up @@ -41,7 +41,7 @@

logger = logging.getLogger(__name__)

version = '2.2.0.dev0'
version = '2.3.0.dev0'

my_dir = dirname(__file__)

Expand Down

0 comments on commit d425f89

Please sign in to comment.