From 7e86504cbf273795e95f9880aab6307e1bc1f243 Mon Sep 17 00:00:00 2001 From: Bitnami Bot Date: Sat, 13 Jan 2024 14:09:55 +0100 Subject: [PATCH] [bitnami/airflow] Release 2.8.0-debian-11-r2 (#54748) Signed-off-by: Bitnami Containers --- bitnami/airflow/2/debian-11/Dockerfile | 10 +- .../opt/bitnami/.bitnami_components.json | 6 +- .../debian-11/prebuildfs/usr/sbin/run-script | 2 +- bitnami/airflow/README.md | 114 ++++++++++-------- 4 files changed, 71 insertions(+), 61 deletions(-) diff --git a/bitnami/airflow/2/debian-11/Dockerfile b/bitnami/airflow/2/debian-11/Dockerfile index 89c421db4169..ffd734dc9950 100644 --- a/bitnami/airflow/2/debian-11/Dockerfile +++ b/bitnami/airflow/2/debian-11/Dockerfile @@ -7,10 +7,10 @@ ARG TARGETARCH LABEL com.vmware.cp.artifact.flavor="sha256:1e1b4657a77f0d47e9220f0c37b9bf7802581b93214fff7d1bd2364c8bf22e8e" \ org.opencontainers.image.base.name="docker.io/bitnami/minideb:bullseye" \ - org.opencontainers.image.created="2024-01-03T14:17:49Z" \ + org.opencontainers.image.created="2024-01-13T11:25:39Z" \ org.opencontainers.image.description="Application packaged by VMware, Inc" \ org.opencontainers.image.licenses="Apache-2.0" \ - org.opencontainers.image.ref.name="2.8.0-debian-11-r1" \ + org.opencontainers.image.ref.name="2.8.0-debian-11-r2" \ org.opencontainers.image.title="airflow" \ org.opencontainers.image.vendor="VMware, Inc." \ org.opencontainers.image.version="2.8.0" @@ -26,11 +26,11 @@ SHELL ["/bin/bash", "-o", "errexit", "-o", "nounset", "-o", "pipefail", "-c"] RUN install_packages ca-certificates curl git krb5-user libbsd0 libbz2-1.0 libcdt5 libcgraph6 libcom-err2 libcrypt1 libedit2 libexpat1 libffi7 libgcc-s1 libgmp10 libgnutls30 libgss-dev libgssapi-krb5-2 libgvc6 libhogweed6 libicu67 libidn2-0 libk5crypto3 libkeyutils1 libkrb5-3 libkrb5-dev libkrb5support0 libldap-2.4-2 libltdl7 liblz4-1 liblzma5 libmariadb3 libmd0 libncursesw6 libnettle8 libnsl2 libp11-kit0 libpathplan4 libreadline8 libsasl2-2 libsasl2-modules libsqlite3-0 libssl1.1 libstdc++6 libsybdb5 libtasn1-6 libtinfo6 libtirpc3 libunistring2 libuuid1 libxml2 libxmlsec1 libxmlsec1-openssl libxslt1.1 locales netbase procps tzdata zlib1g RUN mkdir -p /tmp/bitnami/pkg/cache/ ; cd /tmp/bitnami/pkg/cache/ ; \ COMPONENTS=( \ - "wait-for-port-1.0.7-4-linux-${OS_ARCH}-debian-11" \ + "wait-for-port-1.0.7-5-linux-${OS_ARCH}-debian-11" \ "python-3.11.7-2-linux-${OS_ARCH}-debian-11" \ "postgresql-client-16.1.0-0-linux-${OS_ARCH}-debian-11" \ - "ini-file-1.4.6-4-linux-${OS_ARCH}-debian-11" \ - "airflow-2.8.0-0-linux-${OS_ARCH}-debian-11" \ + "ini-file-1.4.6-5-linux-${OS_ARCH}-debian-11" \ + "airflow-2.8.0-1-linux-${OS_ARCH}-debian-11" \ ) ; \ for COMPONENT in "${COMPONENTS[@]}"; do \ if [ ! -f "${COMPONENT}.tar.gz" ]; then \ diff --git a/bitnami/airflow/2/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json b/bitnami/airflow/2/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json index 1ed78ddc97fe..eb02700f1fb5 100644 --- a/bitnami/airflow/2/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json +++ b/bitnami/airflow/2/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json @@ -3,13 +3,13 @@ "arch": "amd64", "distro": "debian-11", "type": "NAMI", - "version": "2.8.0-0" + "version": "2.8.0-1" }, "ini-file": { "arch": "amd64", "distro": "debian-11", "type": "NAMI", - "version": "1.4.6-4" + "version": "1.4.6-5" }, "postgresql-client": { "arch": "amd64", @@ -27,6 +27,6 @@ "arch": "amd64", "distro": "debian-11", "type": "NAMI", - "version": "1.0.7-4" + "version": "1.0.7-5" } } \ No newline at end of file diff --git a/bitnami/airflow/2/debian-11/prebuildfs/usr/sbin/run-script b/bitnami/airflow/2/debian-11/prebuildfs/usr/sbin/run-script index b7a5bf1e50bf..4ca0f897277e 100755 --- a/bitnami/airflow/2/debian-11/prebuildfs/usr/sbin/run-script +++ b/bitnami/airflow/2/debian-11/prebuildfs/usr/sbin/run-script @@ -10,7 +10,7 @@ fi script=$1 exit_code="${2:-96}" -fail_if_not_present="${3:-y}" +fail_if_not_present="${3:-n}" if test -f "$script"; then sh $script diff --git a/bitnami/airflow/README.md b/bitnami/airflow/README.md index f90ea6e585e5..e94f0d23555f 100644 --- a/bitnami/airflow/README.md +++ b/bitnami/airflow/README.md @@ -295,58 +295,68 @@ This container supports the installation of additional python modules at start-u ### Environment variables -The Airflow instance can be customized by specifying environment variables on the first run. The following environment values are provided to customize Airflow: +| Name | Description | Default Value | Can be set | +|----------------------------------------|-----------------------------------------------------------------------|---------------------------------------------|------------| +| `$AIRFLOW_BASE_DIR` | Airflow installation directory. | `${BITNAMI_ROOT_DIR}/airflow` | | +| `$AIRFLOW_HOME` | Airflow home directory. | `${AIRFLOW_BASE_DIR}` | | +| `$AIRFLOW_BIN_DIR` | Airflow directory for binary executables. | `${AIRFLOW_BASE_DIR}/venv/bin` | | +| `$AIRFLOW_LOGS_DIR` | Airflow logs directory. | `${AIRFLOW_BASE_DIR}/logs` | | +| `$AIRFLOW_SCHEDULER_LOGS_DIR` | Airflow scheduler logs directory. | `${AIRFLOW_LOGS_DIR}/scheduler` | | +| `$AIRFLOW_LOG_FILE` | Airflow log file. | `${AIRFLOW_LOGS_DIR}/airflow-webserver.log` | | +| `$AIRFLOW_CONF_FILE` | Airflow configuration file. | `${AIRFLOW_BASE_DIR}/airflow.cfg` | | +| `$AIRFLOW_WEBSERVER_CONF_FILE` | Airflow configuration file. | `${AIRFLOW_BASE_DIR}/webserver_config.py` | | +| `$AIRFLOW_TMP_DIR` | Airflow directory temporary files. | `${AIRFLOW_BASE_DIR}/tmp` | | +| `$AIRFLOW_PID_FILE` | Path to the Airflow PID file. | `${AIRFLOW_TMP_DIR}/airflow-webserver.pid` | | +| `$AIRFLOW_DAGS_DIR` | Airflow data to be persisted. | `${AIRFLOW_BASE_DIR}/dags` | | +| `$AIRFLOW_DAEMON_USER` | Airflow system user. | `airflow` | | +| `$AIRFLOW_DAEMON_GROUP` | Airflow system group. | `airflow` | | +| `$AIRFLOW_USERNAME` | Airflow username | `user` | ✓ | +| `$AIRFLOW_PASSWORD` | Airflow password | `bitnami` | ✓ | +| `$AIRFLOW_FIRSTNAME` | Airflow firstname | `Firstname` | ✓ | +| `$AIRFLOW_LASTNAME` | Airflow lastname | `Lastname` | ✓ | +| `$AIRFLOW_EMAIL` | Airflow email | `user@example.com` | ✓ | +| `$AIRFLOW_EXECUTOR` | Airflow executor. | `SequentialExecutor` | ✓ | +| `$AIRFLOW_EXECUTOR` | Airflow executor. | `CeleryExecutor` | ✓ | +| `$AIRFLOW_RAW_FERNET_KEY` | Airflow raw/unencoded Fernet key | | ✓ | +| `$AIRFLOW_FERNET_KEY` | Airflow Fernet key | | ✓ | +| `$AIRFLOW_SECRET_KEY` | Airflow Secret key | | ✓ | +| `$AIRFLOW_WEBSERVER_HOST` | Airflow webserver host | `127.0.0.1` | ✓ | +| `$AIRFLOW_WEBSERVER_PORT_NUMBER` | Airflow webserver port. | `8080` | ✓ | +| `$AIRFLOW_LOAD_EXAMPLES` | To load example tasks into the application. | `yes` | ✓ | +| `$AIRFLOW_BASE_URL` | Airflow webserver base URL. | | ✓ | +| `$AIRFLOW_HOSTNAME_CALLABLE` | Method to obtain the hostname. | | ✓ | +| `$AIRFLOW_HOSTNAME_CALLABLE` | Method to obtain the hostname. | `socket.gethostname` | ✓ | +| `$AIRFLOW_POOL_NAME` | Pool name. | | ✓ | +| `$AIRFLOW_POOL_SIZE` | Pool size, required with AIRFLOW_POOL_NAME. | | ✓ | +| `$AIRFLOW_POOL_DESC` | Pool description, required with AIRFLOW_POOL_NAME. | | ✓ | +| `$AIRFLOW_DATABASE_HOST` | Hostname for PostgreSQL server. | `postgresql` | ✓ | +| `$AIRFLOW_DATABASE_HOST` | Hostname for PostgreSQL server. | `127.0.0.1` | ✓ | +| `$AIRFLOW_DATABASE_PORT_NUMBER` | Port used by PostgreSQL server. | `5432` | ✓ | +| `$AIRFLOW_DATABASE_NAME` | Database name that Airflow will use to connect with the database. | `bitnami_airflow` | ✓ | +| `$AIRFLOW_DATABASE_USERNAME` | Database user that Airflow will use to connect with the database. | `bn_airflow` | ✓ | +| `$AIRFLOW_DATABASE_PASSWORD` | Database password that Airflow will use to connect with the database. | | ✓ | +| `$AIRFLOW_DATABASE_USE_SSL` | Set to yes if the database is using SSL. | `no` | ✓ | +| `$AIRFLOW_REDIS_USE_SSL` | Set to yes if Redis(R) uses SSL. | `no` | ✓ | +| `$REDIS_HOST` | Hostname for Redis(R) server. | `redis` | ✓ | +| `$REDIS_HOST` | Hostname for Redis(R) server. | `127.0.0.1` | ✓ | +| `$REDIS_PORT_NUMBER` | Port used by Redis(R) server. | `6379` | ✓ | +| `$REDIS_USER` | User that Airflow will use to connect with Redis(R). | | ✓ | +| `$REDIS_PASSWORD` | Password that Airflow will use to connect with Redis(R). | | ✓ | +| `$REDIS_DATABASE` | Name of the Redis(R) database. | `1` | ✓ | +| `$AIRFLOW_LDAP_ENABLE` | Enable LDAP authentication. | `no` | ✓ | +| `$AIRFLOW_LDAP_URI` | LDAP server URI. | | ✓ | +| `$AIRFLOW_LDAP_SEARCH` | LDAP search base. | | ✓ | +| `$AIRFLOW_LDAP_UID_FIELD` | LDAP field used for uid. | | ✓ | +| `$AIRFLOW_LDAP_BIND_USER` | LDAP user name. | | ✓ | +| `$AIRFLOW_LDAP_BIND_PASSWORD` | LDAP user password. | | ✓ | +| `$AIRFLOW_LDAP_USER_REGISTRATION` | User self registration. | `True` | ✓ | +| `$AIRFLOW_LDAP_USER_REGISTRATION_ROLE` | Role name to be assign when a user registers himself. | | ✓ | +| `$AIRFLOW_LDAP_ROLES_MAPPING` | Mapping from LDAP DN to a list of Airflow roles. | | ✓ | +| `$AIRFLOW_LDAP_ROLES_SYNC_AT_LOGIN` | Replace ALL the user roles each login, or only on registration. | `True` | ✓ | +| `$AIRFLOW_LDAP_USE_TLS` | Use LDAP SSL. | `False` | ✓ | +| `$AIRFLOW_LDAP_ALLOW_SELF_SIGNED` | Allow self signed certicates in LDAP ssl. | `True` | ✓ | +| `$AIRFLOW_LDAP_TLS_CA_CERTIFICATE` | File that store the CA for LDAP ssl. | | ✓ | -#### User configuration - -* `AIRFLOW_USERNAME`: Airflow application username. Default: **user** -* `AIRFLOW_PASSWORD`: Airflow application password. Default: **bitnami** -* `AIRFLOW_EMAIL`: Airflow application email. Default: **user@example.com** - -#### Airflow configuration - -* `AIRFLOW_EXECUTOR`: Airflow executor. Default: **SequentialExecutor** -* `AIRFLOW_FERNET_KEY`: Airflow Fernet key. No defaults. -* `AIRFLOW_SECRET_KEY`: Airflow Secret key. No defaults. -* `AIRFLOW_WEBSERVER_HOST`: Airflow webserver host. Default: **127.0.0.1** -* `AIRFLOW_WEBSERVER_PORT_NUMBER`: Airflow webserver port. Default: **8080** -* `AIRFLOW_LOAD_EXAMPLES`: To load example tasks into the application. Default: **yes** -* `AIRFLOW_BASE_URL`: Airflow webserver base URL. No defaults. -* `AIRFLOW_HOSTNAME_CALLABLE`: Method to obtain the hostname. No defaults. -* `AIRFLOW_POOL_NAME`: Pool name. No defaults. -* `AIRFLOW_POOL_SIZE`: Pool size, required with `AIRFLOW_POOL_NAME`. No defaults. -* `AIRFLOW_POOL_DESC`: Pool description, required with `AIRFLOW_POOL_NAME`. No defaults. - -#### Use an existing database - -* `AIRFLOW_DATABASE_HOST`: Hostname for PostgreSQL server. Default: **postgresql** -* `AIRFLOW_DATABASE_PORT_NUMBER`: Port used by PostgreSQL server. Default: **5432** -* `AIRFLOW_DATABASE_NAME`: Database name that Airflow will use to connect with the database. Default: **bitnami_airflow** -* `AIRFLOW_DATABASE_USERNAME`: Database user that Airflow will use to connect with the database. Default: **bn_airflow** -* `AIRFLOW_DATABASE_PASSWORD`: Database password that Airflow will use to connect with the database. No defaults. -* `AIRFLOW_DATABASE_USE_SSL`: Set to yes if the database is using SSL. Default: **no** -* `AIRFLOW_REDIS_USE_SSL`: Set to yes if Redis(R) uses SSL. Default: **no** -* `REDIS_HOST`: Hostname for Redis(R) server. Default: **redis** -* `REDIS_PORT_NUMBER`: Port used by Redis(R) server. Default: **6379** -* `REDIS_USER`: User that Airflow will use to connect with Redis(R). No defaults. -* `REDIS_PASSWORD`: Password that Airflow will use to connect with Redis(R). No defaults. -* `REDIS_DATABASE`: Database number for Redis(R) server. Default: **1** - -#### Airflow LDAP authentication - -* `AIRFLOW_LDAP_ENABLE`: Enable LDAP authentication. Default: **no** -* `AIRFLOW_LDAP_URI`: LDAP server URI. No defaults. -* `AIRFLOW_LDAP_SEARCH`: LDAP search base. No defaults. -* `AIRFLOW_LDAP_UID_FIELD`: LDAP field used for uid. No defaults. -* `AIRFLOW_LDAP_BIND_USER`: LDAP user name. No defaults. -* `AIRFLOW_LDAP_BIND_PASSWORD`: LDAP user password. No defaults. -* `AIRFLOW_USER_REGISTRATION`: User self registration. Default: **True** -* `AIRFLOW_USER_REGISTRATION_ROLE`: Role for the created user. No defaults. -* `AIRFLOW_LDAP_ROLES_MAPPING`: Mapping from LDAP DN to a list of Airflow roles. No defaults. -* `AIRFLOW_LDAP_ROLES_SYNC_AT_LOGIN`: Replace ALL the user's roles each login, or only on registration. Default: **True** -* `AIRFLOW_LDAP_USE_TLS`: Use LDAP SSL. Defaults: **False**. -* `AIRFLOW_LDAP_ALLOW_SELF_SIGNED`: Allow self signed certicates in LDAP ssl. Default: **True** -* `AIRFLOW_LDAP_TLS_CA_CERTIFICATE`: File that store the CA for LDAP ssl. No defaults. > In addition to the previous environment variables, all the parameters from the configuration file can be overwritten by using environment variables with this format: `AIRFLOW__{SECTION}__{KEY}`. Note the double underscores. @@ -396,7 +406,7 @@ To configure Airflow to send email using SMTP you can set the following environm * `AIRFLOW__SMTP__SMTP_SSL`: To use SSL communication. Default: **False** * `AIRFLOW__SMTP__SMTP_USER`: User of SMTP used for authentication (likely email). No defaults. * `AIRFLOW__SMTP__SMTP_PASSWORD`: Password for SMTP. No defaults. -* `AIRFLOW__SMTP__SMTP_MAIL_FROM`: To modify the "from email address". Default: **airflow@example.com** +* `AIRFLOW__SMTP__SMTP_MAIL_FROM`: To modify the "from email address". Default: **** This would be an example of SMTP configuration using a GMail account: