Hello everyone,

Following the discussion we had with Elad in
https://github.com/apache/airflow/pull/15156 I would like to make a
proposal of introducing a policy about supported K8S version. This is very
similar discussion (and I believe it should be the same approach) as for
supporting Python versions:

https://lists.apache.org/x/thread.html/ra2927221baad192bed1890d4f50a39fa279f67de0aa5305155cbba7b@%3Cdev.airflow.apache.org%3E

We already have the policy agreed to and voted on for Python versions:
https://github.com/apache/airflow#support-for-python-versions (I copied it
below).

I think with K8S it should be basically the same as for the Python version
policy, so I would like to update the wording of the policy and include K8S
alongside Python.

If there will be no major objections to it, I will seek a lazy consensus on
it. If there will be a substantial discussion, we will carry it on and
eventually end  up with a voting process.

Note that the APIs of K8S we use are rather stable and I have not seen any
major version-incompatible change like, ever so far. Also I just (in the PR
above) switched from 1.16/1.17/1.18 to 1.18/1.19/1.20 and it "just worked".
The fact that we are not going to test it, does not mean it new versions
will not work on older versions of K8S.

What  does it mean for K8S support ?

1) As described in https://en.wikipedia.org/wiki/Kubernetes , 1.16 and 1.17
reached EOL and are not supported now. We should (at least officially via
testing) stop supporting them now.
2) 1.18 support ends 30th of April, so we should drop it in a month
3) 1.19 support ends 30th of September
4) 1.20 support ends 30th of December

Let me know what you think. I will merge the change with the 1.18/1.19/1.20
change now in master, but if we reach different conclusions, we might add
more versions before we release the next version.
J.

-------
Current policy for Python version

1. We finish support for Python versions when they reach EOL (For Python
3.6 it means that we will remove it from being supported on 23.12.2021).

2. The "oldest" supported version of Python is the default one. "Default"
is only meaningful in terms of "smoke tests" in CI PRs which are run using
this default version.

3. We support a new version of Python after it is officially released, as
soon as we manage to make it work in our CI pipeline (which might not be
immediate) and release a new version of Airflow (non-Patch version) based
on this CI set-up.

J.



-- 
+48 660 796 129

Reply via email to