Release notes
1.18.9 (02-10-2024)
features
- [Airflow]: Update Airflow to 2.10.2
- [Airflow]: The Airflow on-demand mode is made more robust. It now runs 2 web instances, that prefer to be run on different nodes. When nodes are consolidated due to scheduling optimisations, only one web instance at a time will be removed. This change should eliminate downtime for the Airflow UI under normal circumstances.
- [AWS]: Updated minimal role template to version 1.3.0, this new versions allows Conveyor to retag AWS resources with new tags when requested by the customer. Resource tags can only be changed if they have a name starting with Conveyor (or the old name Datafy), or have the tag Conveyor=True which is set during resource creation.
- [Costs]: The costs page now shows both the current and previous period, for easier identification of changes.
- [Docs]: Added a new how-to for configuring a default identity.
- [Docs]: Updated azure identity docs to include user managed identities
bugfixes
- [Azure]: Fixed an issue with keeping warm IDE nodes, that would result in IDE being slow in startup
- [General]: Fix issues with Azure price changes impacting cost calculation
1.18.8 (27-09-2024)
bugfixes
- [Airflow]: Backport a bugfix to Airflow dag args validation that was added in Airflow 2.10.x
1.18.7 (26-09-2024)
features
- [Airflow]: Upgrade Airflow to 2.10.1, this changes the dark mode from our custom theme to the official Airflow dark theme
- [dbt]: Release dbt 1.8.6 image
- [UI]: Add a configuration option under settings to prevent the creation of projects and environments through the UI
- [UI]: Add the ability to change the name of an IDE
- [AWS]: Upgrade Karpenter to 1.0.2
- [IDE]: Upgrade code-server to 4.92.2
1.18.6 (17-09-2024)
features
- [Airflow]: Update PgBouncer to 1.23.1
- [CLI]: Extend the list of instance types that can be selected when creating a notebook
- [Notebooks]: Creation of notebooks using Python 3.7 and 3.8 is deprecated. Python versions 3.11 and 3.12 are now supported instead.
- [AWS]: Upgrade the following EKS components:
- EKS addon Amazon VPC CNI upgrade to v1.18.2-eksbuild.2
- EKS addon kube-proxy upgrade to v1.29.7-eksbuild.2
- EKS addon CoreDNS upgrade to v1.11.1-eksbuild.11
bugfixes
- [IDE]: Make IDE snapshotting more robust, also added up to 3 retries when the snapshotting process fails
- [UI]: Fix redirect in onboarding flow after logging in
1.18.5 (09-09-2024)
bugfixes
- [Airflow]: Fix a possible crash when opening the Web UI for the first time.
- [CLI]: The CLI will no longer present the error that Docker is not running for operations that do not require it.
1.18.4 (04-09-2024)
features
- [UI]: The cost charts have been updated to offer more accurate estimates, and allocate those costs to different categories.
- [Spark]: We've released new images for Spark 3.5.2, this also updates the delta lake (3.2.0) and iceberg (1.6.1) libraries:
public.ecr.aws/dataminded/spark-k8s-glue:v3.5.2-hadoop-3.3.6-v1
public.ecr.aws/dataminded/spark-k8s-glue:v3.5.2-2.13-hadoop-3.3.6-v1
- [UI]: Add custom link icon for api endpoints
bugfixes
- [UI]: Navigating from Airflow to the Conveyor pipeline detail will now match the task name exactly
1.18.3 (28-08-2024)
features
- [AWS]: Update Karpenter to 1.0.1
- [Airflow]: Update Kubernetes provider to 8.3.4
- [UI]: Support the Amazon CloudWatch icon as an option for project links
- [UI]: The new projects page will automatically load task logs when navigated to from Airflow
bugfixes
- [UI]: Improve the settings page so that users can be removed from projects with a long name
- [UI]: IDEs will automatically open again after their build is done
- [UI]: The redirect-after-login route redirects properly again
1.18.2 (22-08-2024)
features
- [AWS]: Updates to components:
- VPC CNI to 1.18.3
- Karpenter to 0.37.1
- [Airflow]: Use private registry for Airflow validation images instead of public ECR
bugfixes
- [UI]: The buttons to open an IDE in a new window now all link to the correct URL
1.18.1 (14-08-2024)
features
- [IDE]: 🎉 IDEs are out of preview 🎉
- [Airflow]: Made the authentication flow of
ConveyorExternalTaskSensor
more robust - [Airflow]: Apply security patches for underlying dependencies
- [IDE]: Update code-server to 4.91.1
- [IDE]: Made installing extensions more robust
- [IDE]: Updated default installed extensions:
- ms-python.python@2024.12.2
- ms-toolsai.jupyter@2024.6.0
- ms-toolsai.jupyter-keymap@1.1.2
- ms-toolsai.vscode-jupyter-cell-tags@0.1.9
- ms-toolsai.vscode-jupyter-slideshow@0.1.6
bugfixes
- [Airflow]: Fix the conveyor task execution button such that it links to the task execution instead of the general project page
- [CLI]: Fix usage of
conveyor run
when package dependencies are used
1.17.10 (06-08-2024)
bugfixes
- [UI]: Fix login issues
1.17.9 (06-08-2024)
features
- [UI]: We now warn the user to not leave the IDE build page when the build is running
bufixes
- [UI]: Made sure that manual runs use the environment specified
1.17.8 (01-08-2024)
features
- [General]: Added project links! This feature allows you to add extra links to the project page. For example you can add links to your production Snowflake setup, or Databricks. This allows the developers of the project to more easily go to the tools they need to do their job.
- [Airflow]: Upgrade Airflow to 2.9.3.
- [UI]: Added the possibility to see manual runs to the projectV2 UI
- [Costs]: Include the cost of IDEs in the cost overview.
bugfixes
- [UI]: Correctly render the delete action for projects and environments when users have this permission through their teams.
- [CLI]: Passing the deletion protection value is no longer forced when executing an environment update.
- [CLI]: Fix DAG validation when running on Gitlab CI.
- [Airflow]: Allow Airflow workers to recover from start-up failures.
- [UI]: Improve the performance to querying tasks for a pipeline execution in the projects v2 page.
- [Packages]: Fix an issue with deleting packages on Azure.
- [Packages]: Fix support for Conveyor templates.
1.17.7 (22-07-2024)
features
- [Airflow]: Added deadlock detection on Airflow to mitigate bugs in Airflow that could deadlock the Airflow scheduler (for example issue 7935 and issue 15938). After an hour of running we check if the scheduler has launched any tasks in the past hour, and if it hasn't we restart it. This means that if a deadlock has happened the scheduler will be restarted automatically after an hour at maximum.
- [UI]: Improve tasks logs when the Airflow job is queued or running, but the Conveyor job has not started yet.
1.17.6 (18-07-2024)
bugfixes
- [Airflow]: Through load testing we found out the fix from 1.17.5 regarding a recoverable error was not enough. In this release we fix that. The error occurs in kubelet when the create container call times out and is still busy when kubelet retries to create the container. Eventually everything is all right, but Airflow is too aggressive and assumed the container could never recover.
1.17.5 (17-07-2024)
bugfixes
- [Airflow]: Ignore a recoverable error from kubernetes when processing status updates from executors in the Airflow kubernetes scheduler. The error occurs when kubelet runs into a deadline creating a container.
1.17.4 (17-07-2024)
bugfixes
- [Airflow]: Improved logging on certain issues with the Airflow kubernetes scheduler
1.17.3 (16-07-2024)
bugfixes
- [CLI]: fix an issue with pulling the Airflow dag validation image while building.
1.17.2 (16-07-2024)
bugfixes
- [IDE]: Fixes an issue with IDE nodes not booting up properly
- [Airflow]: Incorporated backport of: https://github.com/apache/airflow/pull/40806
1.17.1 (16-07-2024)
features
- [Packages]: In this release we add a new feature for packages! Packages can be used to deploy code to every Airflow environment, this makes it easy to share common alerting code, ingestion code etc... For more info have a look at our how-to guides.
- [CLI]: Upgraded the Conveyor template to version 1.7.0, which includes a template for packages.
- [UI]: On the redesigned project page you can now filter pipelines on name or only show those with failures.
bugfixes
- [UI]: Fix an issue where the metrics of a running job would not be shown in the UI.
- [UI]: Fix the gitpod url link when not linking to a private gitpod installation
- [UI]: Fixed a small issue with the rendering of users pages for environment and project
1.17.0 (15-07-2024)
Release skipped because of issues with the build
features
1.16.14 (05-07-2024)
bugfixes
- [UI]: Fix task filtering on task executions page
- [UI]: Fixed an issue when opening task details page for a
conveyor run
task - [General]: Fix an issue where resources were not cleaned up on the k8s cluster
1.16.13 (02-07-2024)
bugfixes
- [AWS]: Gave aws-node more memory, this component is responsible for networking. It would sometimes go out of memory when a bunch of nodes would be launched at once.
1.16.12 (01-07-2024)
features
- [DBT]: Release image
public.ecr.aws/dataminded/dbt:v1.8.3
- [AWS]: Upgrade the follow eks components:
- EKS addon Amazon VPC CNI upgrade to v1.18.2-eksbuild.1
- EKS addon kube-proxy upgrade to v1.29.3-eksbuild.5
- EKS addon CoreDNS upgrade to v1.11.1-eksbuild.9
- [General]: Update templates to 1.6.2
bugfixes
- [UI]: Ensure the styling for project descriptions correctly changes based on the chosen theme.
- [UI]: Fix crash in page load when viewing logs in the new projects page.
1.16.11 (26-06-2024)
features
- [Airflow]: Improve the stability of Airflow web on Azure by assigning a dedicated nodepool for long-running workloads.
- [IDE]: Upgrade code-server to v4.90.3
bugfixes
- [Airflow]: Downgrade the version of urllib3 used by Airflow to resolve scheduling errors.
1.16.10 (25-06-2024)
features
- [UI]: Enable switching by try number on the application runs details page.
- [UI]: Allow filtering tasks by name on the new pipeline executions page.
- [IDE]: IDE builds automatically fail when taking more than an hour.
bugfixes
- [Airflow]: Downgrade the kubernetes provider to the version used on Airflow 2.8. The new version causes issues with rescheduling sensors after a spot interrupt.
- [UI]: Log lines should no longer be able to overlap.
1.16.9 (19-06-2024)
bugfixes
- [General]: Rework cognito user validation such that it also works when an SSO username contains uppercase characters.
1.16.8 (18-06-2024)
features
- [Airflow]: Upgrade Airflow to 2.9.2
- [UI]: The new Projects page is now active by default. You can switch back to the old version at any time.
- [UI]: Make it easier to expand the logs on the new Projects page, clicking on the row will expand the logs.
- [UI]: Replace the logs button with a details button in the new Project actions list.
- [UI]: The create Conveyor IDE button now first asks you if you want to continue working on an old IDE on the new Projects page.
- [UI]: Improve the error page when a user does not have access to a project.
- [IDE]: Using the Conveyor CLI inside an IDE no longer requires you to login anymore, you will be automatically logged in.
- [Docs]: Document the process for installing the AWS GuardDuty agent on a Conveyor EKS cluster.
bugfixes
- [General]: Fix a bug in the authorization flow that would lead to 503 errors in rare cases.
- [UI]: The description card for projects v2 will no longer overflow the box.
- [UI]: Fixed an issue in redirecting from Airflow to the projects v2 page.
- [UI]: The calculation of pipeline and task success rate is now correct when project names share the same prefix.
- [UI]: We show more information on the projects v2 page where the logs of the run would show an empty page when no logs are available.
- [UI]: Usernames are no longer duplicated in their selection menu
- [General]: Rework cognito user validation such that it also works when a sso username contains upper case characters.
1.16.7 (10-06-2024)
features
- [UI]: Show IDE build logs after the build has finished.
bugfixes
- [UI]: Fix an issue where the base image build logs were not shown in the UI for Azure.
- [UI]: Fix reset button in date filter.
- [CLI]: Fixed an issue where a
conveyor run
would not package the DAGs, if you deploy the build created byconveyor run
the DAG would be removed from the Airflow environment.
1.16.6 (29-05-2024)
features
- [UI]: ✨Projects redesign released ✨This redesign gives a more prominent place to the project page. You can switch between the old and new version.
- [General]: Improved the SSO group syncing performance
- [CLI]: Allow including inactive deployments when listing deployments via
conveyor project deployments --include-inactive
. - [dbt]: We provide a new dbt image:
public.ecr.aws/dataminded/dbt:v1.7.15
bugfixes
- [CLI]: The command
conveyor project add-alert-config
no longer ignores the passed environment flag. - [CLI]: The command
conveyor notebook ide-connect/ide-disconnect
works again.
1.16.5 (22-05-2024)
bugfixes
- [AWS]: The sandbox image for kubernetes will no longer be garbage collected.
1.16.4 (21-05-2024)
features
- [Azure]: Upgrade AKS to 1.29.2
- [Azure]: Upgrade Cilium from 1.13.9 to 1.14.10
- [Azure]: Update the available resources for the Conveyor instance types.
- [AWS]: Upgrade EKS to 1.29
- [AWS]: Upgrade AWS EBS CSI driver to v1.30.0
- [AWS]: Upgrade EKS VPC CNI from v1.16.4-eksbuild.2 to version v1.18.1-eksbuild.1
- [AWS]: Upgrade Secrets Store CSI driver from v1.4.2 to v1.4.3
- [IDE]: Upgrade code-server to v4.89.0
bugfixes
- [UI]: Fix detection of missing log streams and return a proper error message.
- [UI]: Fix state propagation when starting an IDE.
- [IDE]: Make sure to use the latest image version for base image builds.
1.16.3 (02-05-2024)
features
- [dbt]: We provide a new dbt image:
public.ecr.aws/dataminded/dbt:v1.7.13
- [Templates]: Upgraded templates to 1.6.1.
bugfixes
- [IDE]: Fix an issue where IDE build for Azure failed when using a base image.
- [UI]: Fix an issue with the datepicker not showing the dates specified as a query parameter.
- [UI]: Improve handling of empty log pages when filtering.
1.16.2 (02-05-2024)
Release skipped
1.16.1 (18-04-2024)
security
- [Airflow]: Upgrade gunicorn to fix CVE-2024-1135
bugfixes
- [CLI]: Remove leftover debug output
1.16.0 (16-04-2024)
features
- [IDE]: Allow editing user settings within an IDE.
- [Airflow]: Added the possibility to use the xcom value from a
ConveyorContainerOperatorV2
in dynamic task mapping. More info can be found in the docs.
bugfixes
- [Airflow]: Correctly detect when an invalid container image is provided as argument of the Conveyor operators.
- [UI]: Disable downloading of streaming application logs for now until we are sure how to handle it.
- [UI]: Fix an issue where navigating the streaming application logs worked incorrectly.
preview
- [IDE]: This release introduces support for creating custom base images for your IDEs and share them across projects. This feature is currently in preview, if you want to try it out, you can start by taking a look at the introduction video or the how-to-guide for more details.
1.15.7 (09-04-2024)
features
- [IDE]: Made IDE's more robust to memory kills, the IDE service itself has a memory limit set, so instead of crashing the whole container only the IDE service itself will restart. This way your local changes to the IDE or your code do not get lost!
- [IDE]: Allow users to remove IDE settings through the UI and CLI
1.15.6 (09-04-2024)
Release skipped
1.15.5 (03-04-2024)
features
- [General]: We have a new logo!
- [Airflow]: Upgrade Airflow to 2.8.4
- [AWS]: Upgrade Karpenter from v0.35.1 to version v0.35.4
bugfixes
- [UI]: Filtering the application logs on a term containing parentheses works again.
- [AWS]: Improve the handling of missing timestamps in the application logs.
- [General]: The allowed characters for project names haven been made more strict. This prevents issues when creating the container repository for a project.
- [General]: Deleting the same project multiple times will no longer result in an error.
- [General]: Improve the detection of spot node interrupts in Airflow.
1.15.4 (28-03-2024)
bugfixes
- [General]: Fix an issue with cleaning up old builds
- [General]: Fix an issue with new auth0 users not having the tenant information attached
1.15.3 (26-03-2024)
features
- [Spark]: Introduce mode
cluster-v2
in the ConveyorSparkSubmitOperatorV2. This mode speeds of the launching of your spark job, by at most 3 minutes. It is the new default mode when usingconveyor run
, but can also be set in the operator. After extensive testing and feedback this will become the default. - [Airflow]: Allow xcom to be used with
ConveyorContainerSensors
in the same way as theConveyorContainerOperatorV2
- [Spark]: Automatically prefix the application property of the
ConveyorSparkSubmitOperatorV2
withlocal://
if it is not present. For more details look here
bugfixes
- [Airflow]: Revert acryl-datahub-airflow-plugin to version 0.12.1 as the latest version introduced a breaking change in the
Ownership
model.
1.15.2 (19-03-2024)
features
- [Airflow]: Upgrade Airflow to 2.8.3
bugfixes
- [General]: Fixed a bug where canceling an application might result in the state getting stuck in canceling. This happens when a canceled application completes successfully in the 30s window where a canceled application can cleanly shut down
1.15.1 (13-03-2024)
features
- [AWS]: Upgrade EKS VPC CNI from v1.15.5-eksbuild.1 to version v1.16.4-eksbuild.2
bugfixes
- [UI]: Improve the error handling when updating the environment/project settings
- [UI]: Ensure chart area of the executor metrics remains visible when many executor need to be shown
- [UI]: Fix regression in the text color of Airflow tasks when using dark mode
1.15.0 (05-03-2024)
features
- [Airflow]: Upgrade Airflow to 2.8.2
- [Airflow]: Upgrade acryl-datahub-airflow-plugin to 0.12.1.5
- [Spark]: Remove support for spark_main_version variable, this was only needed for spark 2.x support, but that has been deprecated for a long time
- [Spark]: We've released new images for Spark 3.5.1, this also updates the delta lake (3.1.0) and iceberg (1.4.3) libraries:
public.ecr.aws/dataminded/spark-k8s-glue:v3.5.1-hadoop-3.3.6-v1
public.ecr.aws/dataminded/spark-k8s-glue:v3.5.1-2.13-hadoop-3.3.6-v1
- [dbt]: Released new dbt image:
public.ecr.aws/dataminded/dbt:v1.7.8
- [IDE]: Upgrade code-server to v4.21.1
- [Templates]: Upgraded templates to 1.6.0.
bugfixes
- [UI]: The state of the Airflow UI is now fully synchronized to the page URL, allowing for easier link sharing and navigation.
- [UI]: Fixed an issue with IDE build permission in the UI
- [UI]: Fixed a bug where undeploying a project would not update the deployment list
- [UI]: Make sure the error message is correctly shown in the UI when something goes wrong.
- [General]: Fixed the processing of errors of jobs to clearly label disk pressure issues
1.14.8 (22-02-2024) - Hotfix
bugfixes
- [Azure]: Hotfix for node creation on Azure
1.14.7 (21-02-2024)
bugfixes
- [Docs]: Remove trailing slashes from URLs so that links keep on working.
- [CLI]: The previous release broke interactive task selection in the
conveyor run
command, this now works again. - [General]: Improve handling of cancelled tasks
1.14.6 (14-02-2024)
features
- [Airflow]: Add a new macro to fetch the project that a task belongs to
- [dbt]: Release a new dbt image, based on dbt 1.7.7
- [IDE]: Upgrade code-server to v4.20.1
- [UI]: Log filtering is now case-insensitive
bugfixes
- [IDE]: The spark-history executors page will now be properly rendered when ran inside an IDE.
- [UI]: Fix an issue where the Spark Submitter logs failed to show.
- [UI]: Fix a visual bug when deleting two projects after each-other.
1.14.5 (31-01-2024) - Hotfix
features
- [Docs]: The implementation of the search functionality has been changed to offer better results.
bugfixes
- [General]: Fix our integration with Auth0
1.14.4 (30-01-2024)
features
- [Spark]: Our
ConveyorSparkSubmitOperatorV2
now supports setting the--verbose
flag on the spark-submit command - [Airflow]: This change has also been incorporated in the new version of the types-conveyor package
bugfixes
- [AWS]: We now correctly handle an additional error case during secret mounting.
- [AWS]: Switch to using the regional STS endpoints for the cloudwatch agent.
1.14.3 (23-01-2024)
features
- [UI]: Show the logs of an IDE build
- [UI]: Show the SSO groups of users in the UI
- [CLI]: Allow changing the spark image used by
conveyor project spark-history
- [Airflow]: Update python types-conveyor package to version 0.0.6, take a look here
- [Terraform]: Released a new version of the terraform provider
bugfixes
- [UI]: Make sure IDP Group mapping syncing happens on every logout/login cycle
- [CLI]: Make it possible to open the spark history in a Conveyor IDE
- [IDE]:
sudo
is no longer required in order to update the Conveyor CLI within an IDE
1.14.2 (17-01-2024)
bugfixes
- [General]: Fixed an issue when tailing logs of pods. When using
conveyor run
orconveyor ide cache
, sometimes errors could occur when following the logs. We now wait until the node is fully ready before trying to show the logs. - [IDE]: Fixed the "failed writing project config" error when executing
conveyor run
inside IDEs. - [IDE]: Properly set the project folder used by git clone during IDE startup
- [IDE]: The
.bashrc
config file should now remain constant between restarts
1.14.1 (15-01-2024)
features
- [CLI]: You can now change where the conveyor CLI stores settings and tokens by setting the
CONVEYOR_HOME
environment variable - [IDE]: Upgrade code-server to v4.20.0
- [IDE]: Upgrade sysbox to version 0.6.3
- [IDE]: Added to possibility to use Snowflake setup with SSO to be used inside a Conveyor IDE, look at the how-to-guide for more details
- [AWS]: Upgrade eks to 1.28
- [Azure]: Upgrade aks to 1.28
bugfixes
- [CLI]: Using conveyor run for a job that failed with secrets access would not give any helpful error message. The error message is now properly propagated.
- [Airflow]: Fixed an issue were the scheduler could stop properly scheduling when sending out alerts when a dag run fails
1.14.0 (10-01-2024)
features
- [General]: Allows teams to be mapped to groups from the SSO provider
- [Airflow]: Support the automatic configuration of connections/variables for your Airflow environments. The content is loaded from a secret store (e.g. AWS secrets manager or Azure Key vault). For more information look here
- [AWS]: Added support for C instances, for information on cpu and memory see Instances
- [UI]: Added support for undeploying a project from an environment in the UI
- [UI]: Added multiline parsing for python and java stack traces. This makes it easier to see your stack trace when using search functionality
- [IDE]: Sped up shutdown of the IDE when suspending, this means the snapshot process can start earlier and suspending will be faster
- [General]: Switch links in our emails from the legacy https://datafy.cloud... to https://conveyordata.com... domain.
- [CLI]: Improve conveyor auth configure documentation
- [AWS]: Upgrade coredns to version v1.10.1-eksbuild.6
- [AWS]: Upgrade karpenter from v0.32.4 to version v0.33.1
- [AWS]: Upgrade eks vpc cni from v1.15.3-eksbuild.1 to version v1.15.5-eksbuild.1
bugfixes
- [Airflow]: Bring back the old behavior to support configuration options when triggereing a DAG in the UI. This was removed in Airflow 2.7.0, new advice is described here
- [UI]: Fix an issue where adding users to environment/projects used the wrong user in some cases
- [Notebook]: Do not allow the creation of notebooks that have a too long name (>63 characters)
- [UI]: Fixed an issue with wrap long lines in the logs
- [General]: Fixed a rights issue when downloading logs as a non-admin
- [IDE]: When storing too much data (apt packages, pip install, or data) inside your IDE it could happen snapshotting would fail because we ran out of storage. We made snapshotting more storage efficient and faster, and now mount a separate volume. This way we can never run out of storage.
1.13.1 (20-12-2023)
features
- [UI]: Allow admins to disable the Notebooks and/or IDE features
- [CLI]: Switch to using the regional STS endpoint by default
- [IDE]: The AWS CLI now comes pre-installed in the IDEs
- [AWS]: Karpenter has been upgraded to 0.32.4
bugfixes
- [IDE]: Fix a small issue where certain images displayed in the readme were not properly loaded
- [General]: Fixed the caching of terraform provider on the agent, this results in faster deploys of resources
1.13.0 (11-12-2023)
features
- [UI]: Added a project create button
- [UI]: Allow you to make the git repo blank in the UI
- [UI]: Added the IDE button for Conveyor on the project page even if the git repo is not specified
- [Airflow]: Added a proxy to serve the static Airflow files, this will result in faster load times of web pages. All static files are served almost twice as fast
- [Airflow]: Add support for automatically mounting Azure keyvault secrets in containers and spark jobs. For more details look here
- [AWS]: Upgrade Karpenter from v0.31.1 to v0.32.2
- [AWS]: Upgrade our conveyor-install-role-and-policies.template to version 1.0.1, we removed some rights for Karpenter that are now unnecessary in version v0.32.2
- [Airflow]: Add support for multiple
task_ids
in theConveyorExternalTaskSensor
, for more details look here - [IDE]: Upgrade code-server to version v4.19.1
- [Spark]: Released new images for Spark 3.3.3
public.ecr.aws/dataminded/spark-k8s-glue:v3.3.3-hadoop-3.3.5-v1
andpublic.ecr.aws/dataminded/spark-k8s-glue:v3.3.3-2.13-hadoop-3.3.5-v1
- [DBT]: Released new dbt images:
public.ecr.aws/dataminded/dbt:v1.6.9
public.ecr.aws/dataminded/dbt:v1.7.3
- [General]: When using on-demand nodes prefer recent instance generation over older generations
- [General]: Added support for m7i, m7a, r7i and r7a instances
bugfixes
- [IDE]: Bash autocompletion was removed in the IDE with an upgrade, it was added again. Now bash auto-complete will work for Conveyor in the IDE
1.12.0 (28-11-2023)
features
- [Airflow]: Upgrade Airflow to 2.7.3
- [UI]: The homepage has changed from Environments to Projects
- [UI]: The UI is now available in Dutch as well as English
- [UI]: You can now control the Gitpod URL in the integrations, this is useful when using your own installed Gitpod environment
- [AWS]: Upgrade the VPC CNI addon from v1.13.4-eksbuild.1 to v1.14.1-eksbuild.1
- [AWS]: Upgrade Secrets Store CSI driver from v1.3.4 to v1.4.0
- [CLI]: Improve the debug output for build commands
- [Docs]: The table of container images is now split in multiple tables for better ease of use
- [Terraform]: Release Conveyor terraform provider 0.3.0
bugfixes
- [General]: Restrict the allowed environment names
- [Azure]: Downloading logs now also works on Azure
- [Azure]: Fix a regression with IDEs on Azure where the Azure SDK cannot be installed
- [Airflow]: Make sure conveyor run works for DAGs in a local timezone and with a cron schedule multiple times a day
- [Airflow]: Set the correct message when retrieving the logs for an Airflow task that did not run
- [CLI]: Fixed an issue when using
conveyor run
to run an image of a project your project depends on
1.11.23 (20-11-2023)
features
- [CLI]: Add the image build to the json output of
conveyor build
- [UI]: Add the ability to download the logs of a task
- [AWS]: Update multiple components on the EKS cluster:
- Upgrade EBS CSI driver from v1.19.0 to v1.25.0
- Upgrade kube proxy addon from v1.27.4-eksbuild.2 to v1.27.6-eksbuild.2
- Upgrade vpc cni addon from v1.12.6-eksbuild.2 to v1.13.4-eksbuild.1
- Upgrade aws-observability/aws-for-fluent-bit from 2.23.3 to 2.32.0
- Upgrade cloudwatch agent from 1.247352.0b251908 to 1.300031.1b317
- Upgrade k8s dns node cache from 1.22.16 to 1.22.27
- [Azure]: Update multiple components on the AKS cluster:
- Upgrade Cilium from 1.13.6 to 1.13.9
- Upgrade fluent-bit from 1.8.15 to 1.9.10
- Upgrade k8s dns node cache from 1.22.16 to 1.22.27
1.11.22 (13-11-2023)
features
- [Spark]: We've released new images for Spark 3.5.0, containing support for Delta and Iceberg table formats.
- public.ecr.aws/dataminded/spark-k8s-glue:v3.5.0-hadoop-3.3.6-v2
- public.ecr.aws/dataminded/spark-k8s-glue:v3.5.0-2.13-hadoop-3.3.6-v2
- [General]: Upgrade pgbouncer to version 1.21.0
bugfixes
- [UI]: Make sure the retention parameter for cloudwatch logs is taken into account when querying at application runs.
1.11.21 (07-11-2023)
bugfixes
- [AWS]: Increase the memory available for the secrets backend to resolve a second issue in secret mounting.
- [AWS]: Reduce the inline policy used for building projects as to not hit the PackedPolicyTooLarge when using long project names.
1.11.20 (30-10-2023)
bugfixes
- [IDE]: Fixed a race condition that can happen when suspending an IDE, the result was the snapshotting of the IDE was started twice resulting in the second snapshot being empty and a failure when starting up the IDE again.
- [IDE]: Node startup for IDEs is now more robust after fixing two small issues.
- [AWS]: Resolved an issue causing secret mounting to fail under high load.
- [CLI]: Running
conveyor build
could remove thedefault-iam-role
and other fields by accident from the project. Please make sure to update your CLI.
1.11.19 (24-10-2023)
features
- [CLI]: Change the usage of
conveyor build --build-arg
argument to be inline with how it is used in Docker. - [CLI]: Improve
conveyor project validate-dags
to also detect duplicated DAG ids. - [IDE]: Upgrade code-server version to v4.17.1
- [Airflow]: Migrate to
securecookie
webserver backend, thedatabase
implementation has some advantages that are currently covered by the Conveyor authorization checks, and thesecurecookie
implementation puts less pressure in the database. This change also speeds up the airflow webserver by quite a lot.
bugfixes
- [CLI]: The stdout stream of
conveyor build --output json
is no longer polluted by other messages. - [Airflow]: Airflow proxying is working again when using dark mode.
- [UI]: The support chat button will now hide itself when scrolling down, preventing overlap with other components.
1.11.18 (16-10-2023)
features
- [UI]: Support viewing and updating the environment settings.
- [UI]: Allow updating the default IDE configuration in the project settings.
- [Airflow]: We released a new version of the types-conveyor package, which adds a couple of missing function parameters.
- [AWS]: Karpenter has been upgraded to 0.31.1.
bugfixes
- [UI]: Fix an issue where clearing the defaultIamIdentity does not work on the project settings page.
- [General]: Fix an issue where we could get throttled by auth0 when checking user permissions.
- [IDE]: Fix an issue where 2XLarge IDE nodes would not start up on Azure.
1.11.17 (09-10-2023)
We introduced a breaking change in the conveyor deploy command when using the git hash flag.
If you are using: conveyor deploy --env <some-env> --git-hash <some-git-hash>
, we will now fail immediately if the git hash is dirty.
The reason for this is that a dirty git hash may link to multiple conveyor builds, which can result in you deploying unwanted code.
features
- [Spark]: Released initial Spark 3.5.0 images.
Iceberg and Delta Lake unfortunately do not support Spark 3.5 yet,
so these dependencies are not included for now.
- public.ecr.aws/dataminded/spark-k8s-glue:v3.5.0-hadoop-3.3.6-v1
- public.ecr.aws/dataminded/spark-k8s-glue:v3.5.0-2.13-hadoop-3.3.6-v1
- [Airflow]: You can now set the navbar color of Airflow on a Conveyor environment
- [CLI]: Add support for deleting tags in the CLI
bugfixes
- [Airflow]: Fix an issue when using Airflow in dark mode where some panels would fail to load.
- [Airflow]: Cosmetic improvements when using dark mode.
- [UI]: Fixed an issue where users could not be unlinked from projects/environments after being removed from AD.
- [UI]: Fix an issue where deleting an environment resulted in weird behavior in the UI.
- [UI]: Fix sorting of teams in the settings page.
- [CLI]: Prevent deploying a project when using the git hash flag and passing a dirty hash. This fix contains a breaking change, see warning.
1.11.16 (26-09-2023)
bugfixes
- [Airflow]: Downgrade Airflow dependencies upgrade in 1.11.15, this resulted in increased memory pressure for Airflow web in certain environments
- [Airflow]: Fix an issue in the links between Conveyor and Airflow where they always landed on the Airflow home page
1.11.15 (26-09-2023)
features
- [Docs]: The table describing our Docker images now includes a column for the OpenJDK version
- [UI]: Move Instance type in the Create IDE Dialog from advanced to the main form. This removes the advanced form
bugfixes
- [IDE]: Fix an issue where writing to the /tmp directory fails for IDE builds
- [CLI]: DAG validation now works when using podman on Apple Silicon
- [UI]: Filtering deployments by "deployed by" works correctly again
1.11.14 (18-09-2023)
features
- [IDE]: Allow users to configure user-specific settings for their IDEs
bugfixes
- [Airflow]: Fix issue causing unnecessary scheduler restarts
1.11.13 (12-09-2023)
features
- [UI]: The application runs details page now shows the container image that was used
- [IDE]: Reuse the manifest of previous IDE builds to speed up subsequent builds
- [IDE]: Ensure that all environment variables are also visible in a Jupyter notebook environment
- [Notebooks]: Upgrade the Spark installation used by notebooks from Spark 3.3 to Spark 3.4
- [AWS]: Improve the mounting options of EFS, this will result in less downtime when AWS upgrades EFS in October
- [Airflow]: Upgrade Python from 3.9 to 3.11
bugfixes
- [UI]: The tag creation dialog works properly again
- [Azure]: Spark event logs are now correctly expired on Azure
- [Airflow]: The recycling rate of Airflow web workers has been increased to reduce the memory pressure. This change should result in fewer restarts
1.11.12 (12-09-2023)
Release skipped
1.11.11 (04-09-2023)
features
- [Azure]: Upgrade AKS to 1.27.3
- [AWS]: Upgrade EKS to 1.27
- [UI]: Pinning of environments now also has a dedicated action button.
- [Airflow]: Airflow scheduler and web now exactly match an mx.small conveyor instance, this means that a bit more resources are available
bugfixes
- [General]: Fixed an issue with the permissions in our minimal installation role. This prevented proper deletion of an IDE when launched in a different account than the default Conveyor cluster.
- [IDE]: Fix issue where Azure tokens could not be used in IDEs.
- [Airflow]: Backport Airflow PR #33063 to fix the URLs generated by TaskInstances.
- [General]: Improve default error handling of secret mount issues for cases that we do not explicitly handle.
- [Spark]: Fix an issue with the eventlog file was not uploaded in certain cases.
- [IDE]: Improve the robustness of the IDE snapshotting process
1.11.10 (28-08-2023)
features
- [Airflow]: Upgrade to Airflow 2.6.3
- [Terraform]: Release terraform provider 0.2.0
- [General]: Improve performance of checking notebook access
- [General]: Improve performance of checking Airflow access
- [IDE]: Allow creating an IDE from the project list
bugfixes
- [CLI]: The spark-history command will now wait for the server to finish loading before opening the browser window.
- [IDE]: Handle failures when suspending an IDE in a more robust way.
- [General]: Fix a race condition that could return a ProjectNotFound error for a valid DeleteProject request.
- [Airflow]: The Airflow UI will now automatically refresh in case of temporary unavailability.
1.11.9 (21-08-2023)
features
- [IDE]: Improved the performance of proxying the IDE for the user
- [DBT]: The ConveyorDbtTaskFactory will now filter out ephemeral models and not add them as tasks
- [DBT]: Released our 1.6.0 dbt image: public.ecr.aws/dataminded/dbt:v1.6.0, you can see find the full list of supported software in our docs
- [Airflow]: Added support for email alerting on failures of dags, you can read more here
- [Airflow]: Upgrade apache-airflow-providers-slack to 7.2.3
- [CLI]: Make Docker BuildKit the default when using a Docker version of 23.0.0 or higher, just like Docker does
- [Azure]: Upgrade AKS to 1.26.6
- [UI]: Pinning projects in the overview page now has a dedicated action button
- [General]: Upgrade template to 1.4.0
bugfixes
- [AWS]: Fixed an issue where searching on logs could fail if an input like
|
was used. - [Spark]: AWS_REGION and AWS_DEFAULT_REGION should now be properly set on Spark jobs.
- [Airflow]: Fix an issue where Airflow crashed when displaying
ConveyorExternalTaskSensor
links - [UI]: Legend in the metrics page was be partially cut off
1.11.8 (08-08-2023)
bugfixes
- [AWS]: Fixed an issue when building the AMI for IDEs
1.11.7 (07-08-2023)
Release skipped
features
- [CLI]: Upgrade template to 1.3.2
bugfixes
- [UI]: Fix an issue where the build ID was not correctly passed when creating a new IDE.
- [UI]: Fixed an issue where the create IDE/Notebook button is in another location for an admin vs a non-admin
- [IDE]: Fix an issue with IDE builds on Azure
- [IDE]: Fix an issue with deleting IDEs on Azure
1.11.6 (01-08-2023)
features
- [AWS]: Only allow a single metadata hop on aws ec2 instances, the limit used to be 2 for when kube2iam was still used. After its removal, the hop count can be reduced to 1, improving the security of the setup.
- [Streaming]: Streaming applications now support default roles as well.
- [CLI]: Selecting an IDE to resume or suspend now uses the name instead of the ID of the IDE in the selector, thus making it easier to select the right one
- [Spark]: Release Spark 3.4.1 images, you might need to make some changes to your scala spark jobs, see docs here
- public.ecr.aws/dataminded/spark-k8s-glue:v3.4.1-hadoop-3.3.6-v1
- public.ecr.aws/dataminded/spark-k8s-glue:v3.4.1-hadoop-3.3.6-v1
- [IDE]: Automatically clone the configured git repo for a Project when opening an IDE for the project
- [IDE]: Changed the username from coder to conveyor in the IDE
- [UI]: Support creating IDEs from the UI
1.11.5 (24-07-2023)
features
- [IDE]: Added the ability to set a default IDE config for a project through the CLI
conveyor update project --default-ide-config
command. This will later be used when people start their IDE from the UI, for now it is used as a fallback when noide.yaml
is included in the project. - [IDE]: Prefer 6th generation instances, in our testing 6th generation instances can be twice as fast as first generation instances when running tests in a pyspark project
bugfixes
- [IDE]: Fix using a cloud identity when using IDE's
1.11.4 (19-07-2023)
features
- [IDE]: Installed some extra packages to make the first experience smoother:
build-essentials
,python3.10-venv
,python3-pip
,python3.10-dev
bugfixes
- [IDE]: Make sure packages that install man pages in
/usr/share/man/man1
can do so, for example, installingopenjdk-11-jre
was not able to install - [IDE]: Resuming after auto-suspend sometimes, suspended the IDE automatically again. This is now fixed
1.11.3 (18-07-2023)
features
- [IDE]: Added suspend and resume functionality for IDEs. IDEs will also automatically suspend after 60 minutes of inactivity to save costs
- [IDE]: IDE's are upgraded from ubuntu 20.04 to ubuntu 22.04
- [CLI]: Update conveyor templates to 1.3.1
bugfixes
- [IDE]: Fixed an issue with pulling the base image when building a custom IDE
1.11.2 (10-07-2023)
features
- [Terraform]: We've released v0.1.5 of our Terraform provider.
- [Airflow]: The Conveyor Airflow operators now support using default IAM identities configured on the project level. You can find more information on the default IAM identity in the project documentation.
- [UI]: It is now possible to promote deployments to a different environment using the web interface.
- [IDE]: AKS nodes will be pre-warmed to reduce the startup time of IDEs on Azure.
bugfixes
- [RBAC]: We now assign the correct permissions to 'Contributor' users for them to view logs and metrics of streaming applications.
- [IDE]: The git routine used by IDEs has been made more robust so that the generated
git clone
command is always valid.
1.11.1 (10-07-2023)
Release skipped
1.11.0 (05-07-2023)
features
- [IDE]: This release container a preview version of IDE support on Conveyor. To get started, check out our two how-to-guides:
- [AWS]: Karpenter has been upgraded to version 0.28.1
bugfixes
- [Notebooks]: Make sure that starting a notebook from the CLI works when messages are processed with a delay.
- [Notebooks]: Fix an issue during the creation of a notebook which was not persisted in the notebooks.yaml.
- [CLI]: Airflow images will now be pulled using the correct credentials, avoiding rate-limiting errors.
1.10.18 (12-06-2023)
bugfixes
- [General]: Make sure there can be no overlapping names on kubernetes for the spark operator, there was a very small chance we used overlapping names for certain resources, these are now guaranteed to be unique.
- [Airflow]: Fixed a bug in the ConveyorDbtTaskFactory where a model could have no dependency on start when a previous model was filtered out because of tag filtering.
1.10.17 (05-06-2023)
features:
- [AWS]: Upgraded eks to 1.26
- [AKS]: Upgrade aks to 1.26.3
- [General]: Improve logging of internal components to reduce the costs on Azure
1.10.16 (31-05-2023)
bugfixes:
- [Azure]: Make sure
conveyor build
andconveyor run
works again on Azure
1.10.15 (31-05-2023)
bugfixes:
- [CLI]: Make sure conveyor update downloads the latest CLI instead of 1.10.2
- [General]: Fix referencing the same secret from aws ssm parameter store multiple times
1.10.14 (31-05-2023)
bugfixes
- [Notebooks]: Fix an issue with websockets used in notebooks
1.10.13 (30-05-2023)
features
- [General]: We've updated the machine images that are used on the cluster, resulting in even faster start-up times for your jobs.
bugfixes
- [Airflow]: Revert the changes made in 1.10.4 regarding the DataHub integration. The 'cluster' parameter will now default to "prod" again.
- [General]: Make sure you can use the same secret/ssm parameter multiple times in environment variables.
- [Spark]: Make sure to set the aws-region for Glue automatically such that we do not rely on ec2 instance metadata.
- [CLI]: Make sure we take quiet flag into account during conveyor build
- [CLI]: On a default installation of docker desktop the daemon socket is not at
unix:///var/run/docker.sock
but at another location in the home directory. We now check that one first - [CLI]: Improved the conveyor run connection, sometimes it timed out and we restarted it. We added keep alive messages on the connection to make sure it isn't closed
- [General]: Make cleaning up old builds more robust, this should result in fewer old builds staying around
- [Airflow]: Fix an issue with Airflow scheduler liveness probe.
1.10.12 (09-05-2023)
experimental
- [CLI]: We offer a new way to run dbt commands on Conveyor, directly from your command line. As this is an experimental feature, all feedback is welcome! Please refer to the documentation page for more information on the feature.
bugfixes
- [CLI]: Change location for temporary folders in
conveyor project
commands. In CI, we use local working directory and otherwise the default temp folder for your OS. - [Spark]: Our latest Spark images contain a fix for reading tables that are partitioned by date from AWS Glue. For more info, have a look here.
- [Airflow]: Fix an issue where Airflow workers are not scheduled on on-demand nodes for Spark jobs.
- [Airflow]: Backport PR https://github.com/apache/airflow/pull/31128 to Conveyor Airflow.
1.10.11 (02-05-2023)
features
- [General]: Upgraded Azure AKS to 1.25, this forces the use of cgroupsv2 on Azure. Certain JVM versions do not detect memory correctly, for Spark jobs this is no issue since we set the memory correctly. However, Java jobs using the ConveyorContainerOperatorV2 need to be upgraded to use JDK 11 (patch 11.0.16 and later) or JDK 15 and above.
- [General]: Upgrade AWS EKS to 1.25
- [Airflow]: Upgrade Airflow to 2.5.3
- [General]: Release DBT image 1.5.0
- [CLI]: Upgrade to use conveyor templates 1.3.0
bugfixes
- [General]: Fix an issue where a notebook can get stuck in pending due to a bug in the EBS CSI driver.
- [UI]: Improve the performance when fetching application runs.
- [UI]: Make sure that the default IAM role can be rendered for a project contributor.
- [UI]: The behavior of the notebook creation dialog was adapted to match your expectations.
- [UI]: Toast messages which report errors are now rendered correctly.
1.10.10 (25-04-2023)
features
- [Azure]: Upgrade AKS to 1.24.9
- [UI]: We've made a minor visual update to our breadcrumbs.
- [Terraform]: release terraform provider version 0.1.4
bugfixes
- [CLI]: Fix the root cause for the
file already closed
message while building a notebook
1.10.9 (24-04-2023)
bugfixes
- [Airflow]: Added a friendly error message when passing invalid values into the
cmds
argument of the ConveyorConveyorOperatorV2. - [General]: Fixed a race condition that popped up when running lots of tasks that use secrets from AWS Parameter Store or AWS Secrets Manager.
1.10.8 (19-04-2023)
bugfixes
- [Airflow]: Fix an issue with the external task sensor
- [Terraform]: Add examples for tags in the terraform provider
1.10.7 (19-04-2023)
features
- [CLI]: Add support for team commands on an environment.
preview
- [Airflow]: We've released type hints that you can use when developing your Airflow DAGs on Conveyor. You can refer to our documentation page for the installation instructions and more information.
bugfixes
- [CLI]: We now make sure that container image pulls and runs triggered by Conveyor use the correct platform configuration.
1.10.6 (12-04-2023)
bugfixes
- [UI]: We now show an informative message if a page is not found instead of a blank screen.
- [CLI]: Fix an issue where conveyor build failed when using Podman.
- [General]: Change cloudwatch metrics configuration to not use ec2 instance metadata.
1.10.5 (04-04-2023)
features
- [Spark]: We've built a new Spark 3.3.2 image that only packages 1 version of netty. For more details you can refer to our technical-reference.
- [Spark]: Additionally, we released new Spark 3.3.2 image also comes with hadoop 3.3.5, which contains several CVE fixes as well as an important fix for using Azure blob storage. More details can be found in our technical-reference as well. Azure users that use Hadoop 3.3.2 or 3.3.4 are recommended to switch to hadoop 3.3.5.
- [Spark]: When using Spark on Azure with Hadoop 3.3.5,
you can now use the
ManifestCommitter
as an alternative to theFileCommitter
. More information on this committer can be found here. - [CLI]: Update
conveyor deploy
to show a message on how to rollback to the previous deployment - [CLI]: Add functionality to
conveyor deploy
for deploying a project based on a git hash as an alternative to the build id
bugfixes
- [General]: Make sure
AWS_REGION
is also defined when users setAWS_DEFAULT_REGION
. as the region cannot be retrieved from EC2 instance metadata when kube2iam is disabled. - [CLI]: Fix an issue where the
validate-dags
functionality does not work on GitLab CI anymore. - [UI]: Some visual edge-cases in the tag creation flow have been taken care of.
1.10.4 (29-03-2023)
features
- [CLI]: Support dependent projects in
Conveyor build/run/validate-dags
command. More details can be found here - [Notebooks]: It is now possible to define a default IAM identity for your projects. This default role can be automatically used when creating a new notebook. More information on how to configure the default identity can be found in the CLI docs.
- [Docs]: Time for spring-cleaning! We made some modifications to our documentation to make sure everything is clear and tidy.
- [Airflow]: Add support for XComs in the
ConveyorContainerOperatorV2
.
bugfixes
- [Airflow]: When enabling the DataHub integration, the 'cluster' parameter is now set to the name of your environment, instead of defaulting to "prod".
- [Notebooks]: The integrated notebooks view again scales properly to your page height.
- [Notebooks]: Fixed an issue where we asked to download files when deleting notebooks in
ide
mode.
1.10.3 (22-03-2023)
features
- [Airflow]: Upgraded Airflow to 2.5.2
- [UI]: Allow filtering on sensor applications in the application runs pages for environment and project
bugfixes
- [CLI]: Improve cancellation handling in the
Conveyor run
command - [Airflow]: Fix the
Conveyor application runs
button for sensors, this button used to filter out the application runs incorrectly and showed nothing as a result
1.10.2 (15-03-2023)
features
- [Docs]: Added documentation on how to improve dbt startup latency, you can find the documentation here.
- [Airflow]: Add support for grouping tasks into
taskGroups
with theConveyorDbtTaskFactory
, more details here - [Terraform]: Released the conveyor terraform provider 0.1.0, with extra data sources concerning users of projects, environments and teams
bugfixes
- [General]: Added extra validation on environment variable keys, before when the key was invalid the job would hang. Now we fail it
- [Airflow]: In the generation of kubernetes object from the Conveyor operator, we sometimes produced invalid names. This is fixed now
1.10.1 (08-03-2023)
features
- [Notebooks]: The number of driver cores will be automatically configured depending on the instance size
- [CLI]: The behaviour of the ide-connect cli command is now consistent with the other notebook commands
- [UI]: You can now create and attach tags to your projects for easier filtering
- [UI]: The notebook creation dialog now hides optional configuration options by default
- [General]: On AWS we optimised the way we are running EC2 machines for all jobs. We now collocate the Airflow scheduler and web pods. This should result in less Airflow downtime and an optimised the cluster. For job smaller than xlarge, we know keep the VM alive for up to 5 minutes to accept new jobs. This should result in less VM churn, which results in lower EC2 startup overhead, and less AWS Config costs if that is enabled.
- [Templates]: Upgraded templates to 1.2.1.
bugfixes
- [RBAC]: Fix an issue where the GetDefaultCluster call fails for non admin users
- [General]: Improve the error handling when the IAM role cannot be assumed by your container/spark application
- [UI]: Fix an issue where the collapsed sidebar icons were not clickable
- [UI]: Fix an issue where the login can get stuck
1.10.0 (27-02-2023)
features
- [Spark]: Create new spark images for Spark 3.3.2, more details can be found here
- [General]: AWS: Improved node startup latency, by upgrading to EKS CNi to 1.12.2, and configuring it correctly the average startup latency of a node went down to 50s from 60s.
- [Airflow]: Added support for configuring certain parameters of Airflow.
At the moment we support 2 parameters in the core section
parallelism
andmax_active_tasks_per_dag
. You can find more information on when to configure these here.
1.9.0 (21-02-2023)
features
- [General]: Added support for sending Airflow lineage to DataHub, read our how-to to get started!
- [Azure]: Update the VM's used for user nodepools to the Dsv5-series instead of the Dsv3-series
- [Terraform]: Release the Conveyor terraform provider 0.0.8 with support for configuring the Airflow DataHub integration
bugfixes
- [CLI]: Fix an issue where creating a project from a template uses the wrong project name in some cases
- [Notebooks]: Fix an issue where ide notebooks did not get deleted after they were idle for too long
1.8.9 (16-02-2023)
features
- [Docs]: Small improvements to the RBAC documentation
bugfixes
- [General]: Fix prepush of images on Azure when using images from public ecr
- [Airflow]: Fix an issue where Airflow web restart fails due to pid file
1.8.8 (15-02-2023)
Skipped due to database performance issues.
1.8.7 (09-02-2023)
bugfixes
- [Airflow]: Fixed an issue with scheduling on-demand jobs on Conveyor. After this we will reset all jobs currently stuck in scheduling
1.8.6 (09-02-2023)
features
- [Notebooks]: Add support for updating files of a notebook running in IDE mode
- [Airflow]: Upgrade the database used to use gp3 storage, which should give the same or better performance for a lower price
- [Airflow]: Support attaching external storage to container pods. This is useful for container jobs that need a lot of temporary storage.
bugfixes
- [Airflow]: Fixed an issue that made retries stop working when Spark submit fails
1.8.5 (06-02-2023)
features
- [UI]: Display a clear error message when there are no logs because the retention period is expired
bugfixes
- [Notebooks]: Fix an issue where deleting a notebook by name deleted the wrong notebook
- [General]: Fixed an issue in the onboarding flow, where the role could not be properly registered
1.8.4 (02-02-2023)
bugfixes
- [UI]: Fixed a bug where the memory metrics where not showing correctly for the spark driver, or container application
- [Airflow]: Fixed an issue that made retries stop working with the Conveyor Airflow Operators
1.8.3 (01-02-2023)
features
- [Airflow]: In airflow we now show you your last 100 log lines of your failed application. We also add a link to the logs that takes you straight to the logs in Conveyor. Tou can copy and paste into your web browser.
- [Airflow]: Update datahub integration to 0.9.6
- [Airflow]: Added the ability to override the start and end task in the ConveyorDbtTaskFactory
- [Templates]: Upgraded templates to 1.2.0.
bugfixes
- [CLI]: rework
conveyor completion
command to work without internet connectivity such that you can source is in a terminal. - [Airflow]: Fixed a bug where the
Conveyor Application Runs
button would not work when a user created a manual run with a self supplied run_id. - [UI]: show correct spark executor instance lifecycle and type in details table.
- [Airflow]: Fix an issue where the application run button does not generate the correct link for new projects
- [UI]: The spark executor metrics legend sometimes did not match the actual executor of which the metrics are shown. We now make sure the legend matches the correct metric
- [UI]: Fix broken redirect when pressing the logs button on the task executions page
1.8.2 (19-01-2023)
bugfixes
- [UI]: Fix an issue with the sorting of executors
- [Spark]: Fix an issue where Karpenter is allowed remove nodes with a Spark submitter pod
1.8.1 (18-01-2023)
features
- [Docs]: Improved the documentation of the ConveyorDbtTaskFactory in regard to start and stop task
bugfixes
- [UI]: Fix an issue where the filtered string was not taken into account when switching between pods
- [UI]: Fix an issue where navigating from execution details to executor log is broken
1.8.0 (18-01-2023)
In this release we reworked the task execution pages. When clicking on a row in the task executions
page, you now go to the details of that run, showing more info on different pods of the Spark/container/sensor job.
By clicking on a row in the details page, you will go the logs of that specific pod (driver, submitter or executor).
If you immediately want to go from the task executions
page to the logs of Spark driver or container pod, as was the default behavior in previous releases, you should now use the logs button in the Actions
column.
features
- [Airflow]: Do not restart Airflow web on redeploys as it is not needed anymore, we know made sure the
Conveyor Application Runs
button still works - [UI]: Rework the task executions in the UI to add a tab that displays detailed information for a job next to the logs and metrics. This tab shows the start date, duration, instance type as well as the failure reason for all pods of a given job. This is useful for Spark to get a quick overview on why executors are failing.
- [UI]: allow filtering when choosing an executor/driver on the task execution logs page.
- [UI]: add tooltip with resources available when displaying the instance types.
bugfixes
- [Spark]: A spark application used to hang when setting "spark.driver.memoryOverheadFactor" or "spark.executor.memoryOverheadFactor" for a spark version < 3.3.0, now we accept but ignore the value just like Spark would
- [Logs]: Fixed an issue where sometimes the logs of short running jobs would not be stored. We fixed the startup issue of the log aggregation service so now logs should always be available.
- [UI]: Show specific error message when a spark executor has no logs instead of showing generic error message.
- [Spark]: Fix an issue with the spark history command to allow cross account access to the artifacts bucket
1.7.9 (10-01-2023)
bugfixes
- [Airflow]: Revert the change to not restart airflow on redeploys, the change made the
Conveyor Appliation Runs
button fail
1.7.8 (10-01-2023)
features
- [Templates]: Mount a template git repo to the cookiecutter container instead of a folder within the repo
- [Airflow]: Do not restart Airflow web on redeploys as it is not needed anymore
- [Airflow]: Change
ConveyorExternalTaskSensor
to request taskInstances from the db in order to fix 404 errors on Airflow web restarts
bugfixes
- [RBAC]: Fix an issue where a non-admin user could not list Streaming Applications
- [Airflow]: Fix an issue where restarting the scheduler leads to temporary missing dags in the web UI.
1.7.7 (09-01-2023)
features
- [Airflow]: Log the node on which the Airflow worker is running, this makes it easier when needing to debug node outages
1.7.6 (04-01-2023)
bugfixes
- [Airflow]: Fix an issue with the Airflow dag-syncer init container going OOM
- [General]: Added a fix to logs and metric fetching on Azure
1.7.5 (03-01-2023)
bugfixes
- [RBAC]: Fix an issue with RBAC when fetching the list of task executions
features
- [Spark]: Add support for Iceberg in the latest images
- public.ecr.aws/dataminded/spark-k8s-glue:v3.3.1-hadoop-3.3.4-v2
- public.ecr.aws/dataminded/spark-k8s-glue:v3.3.1-2.13-hadoop-3.3.4-v2
1.7.4 (02-01-2023)
features
- [General]: Upgrade to eks 1.24
- [General]: Upgrade to aks 1.24
- [General]: On Azure run the CNI controller on the default node
- [Spark]: Add the ability to see the spark executor and submitter logs in the UI for both batch and streaming
- [notebooks]: Upgrade images to use ubuntu 22.04 as a base
- [notebooks]: Remove support for python 3.6
1.7.3 (27-12-2022)
features
- [Notebooks]: Use Spark 3.3.1 in notebook images
bugfixes
- [Spark]: Fix an issue in Spark controller where eventlog directory was deleted before driver was terminated.
1.7.2 (21-12-2022)
features
- [CLI]: Support updating the project description through the
project update --description <content>
command - [Airflow]: Allow operatorLinks to be inherited
bugfixes
- [General]: Reduce the time and improve robustness when deploy Conveyor projects
- [UI]: Made the log fetching in the UI more robust for AWS. This should make certain uses cases where AWS returned nothing work again.
- [Spark]: Fix an issue when using spark on-demand executors
- [Costs]: Fix an issue in calculating costs for new g5 and g4dn instances
- [UI]: Fix an issue with displaying top x project/environment costs
1.7.1 (14-12-2022)
features
- [Airflow]: Upgrade Airflow to 2.4.3
- [Airflow]: Upgrade datahub packages to 0.9.3.1
1.7.0 (05-12-2022)
🎉 We are happy to announce that Notebooks, one year after the initial introduction, are now out of preview 🎉 .
Over the past year we improved the Notebooks feature in terms of stability as well as user experience. From now on the API is stable, and we will ensure that all changes are backwards compatible.
features
- [General]: Remove the unused Airflow role
- [UI]: Improved the task execution page for a spark job running in local mode. We do not try to show spark executor metrics now, and we show the mode in the overview
- [CLI]: add Support for Podman next to Docker
- [Spark]: Released spark 3.2.3 images:
- public.ecr.aws/dataminded/spark-k8s-glue:v3.2.3-2.13-hadoop-3.3.4-v1
- public.ecr.aws/dataminded/spark-k8s-glue:v3.2.3-2.13-hadoop-3.3.4-v1
- [General]: Switch the EFS volume used for Spark event log, and Airflow logs from bursting to elastic (the new recommended mode)
bugfixes
- [UI]: Do not allow the deletion of admin users, make sure they are removed from the administrators first.
- [UI]: Fix an issue where inviting a user would sometimes fail because of a wrongly generated password
- [UI]: Fix an issue where filtering on streaming applications would not work
- [UI]: Fix an issue where the create environment modal was behind the guided tour
- [UI]: Improved log readability. It used to be that multiple whitespaces were collapsed into on, printing for whitespaces like this:
foo bar
, would show like:foo bar
. Reducing readability when printing tables with whitespace. - [General]: Fixed an issue where spark applications using multiple R-instance executors would not launch
- [General]: Fixed an issue with zone limitations when using R-instances
- [CLI]: Make sure conveyor run loads the Airflow backports
- [Costs]: Fixed a bug in cost calculation for Spark, this has a low impact on the cost calculation
1.6.0 (22-11-2022)
In this release we add support for R instances on AWS. These instances use Karpenter (a new autoscaler) for the cluster which should result in faster node startup. It is a new component, with which we have less experience, so we will be monitoring it closely. If you notice any issues when using these instances, do not hesitate to contact Conveyor support.
features
- [General]: Add support for R instances on AWS. These instances have a higher memory to cpu ratio than the M instances on AWS. They are useful when loading in large data sets with limited computation. They are currently only supported on AWS.
- [General]: Use the new
price-capacity-optimized
allocation strategy. This is a new strategy that will use the spot pools which are least likely to be interrupted and selects the lowest price from these spot pools. It is the new recommended strategy by AWS. It will result in a cost savings compared to the previous recommendedcapacity-optimized
strategy. For more info you can look at the release blog by AWS - [Docs]: Added documentation on how the
executor_disk_size
setting may improve performance. - [General]: Optimised the log storage on AWS, this should reduce the cloudwatch logging bill
- [General]: Release terraform provider 0.0.7
bugfixes
- [Spark]: Handle Spark applications that launch multiple spark contexts gracefully and do not upload their event logs
- [UI]: Fix an issue with filtering the logs of streaming applications
- [UI]: Make cancel button for Spark tasks clickable without using horizontal scrollbar
- [Airflow]: Fixed a bug where the Airflow scheduler could get into a faulty state when scheduling Dynamic tasks. This is now fixed
1.5.15 (16-11-2022)
features
- [Airflow]: Remove db cleanup job now it has executed successfully
1.5.14 (16-11-2022)
features
- [General]: Expose extra Airflow metrics to monitor Airflow environments more thoroughly
bugfixes
- [UI]: Improve the spark history server dialog
1.5.13 (15-11-2022)
bugfixes
- [Airflow]: ConveyorContainerOperatorV2
arguments
allow None values to be passed - [Airflow]: ConveyorSparkSubmitOperatorV2
application_args
allow None values to be passed
1.5.12 (15-11-2022)
bugfixes
- [General]: Fix an issue with internal Airflow metrics
1.5.11 (15-11-2022)
features
- [UI]: In the task executions list, change the default match from exact to fuzzy
- [Airflow]: In the ConveyorContainerOperatorV2 we now raise an exception if the
arguments
passed are not all of type string - [Airflow]: In the ConveyorSparkSubmitOperatorV2 we now raise an exception if the
application_args
passed are not all of type string
bugfixes
- [Airflow]: Fix incorrectly stored on-demand task instances affected by bugfix
1.5.10 (14-11-2022)
features
- [Spark]: Rework spark-history support, now you can create a spark-history server locally instead of sharing one per client, which caused many issues
bugfixes
- [Airflow]: Load the backport of Airflow bugfix earlier so that the scheduler picks it
1.5.9 (09-11-2022)
bugfixes
- [General]: Fixed an issue with deleting environment, where certain undeploys where processed multiple times. This resulted in long waiting times to delete environments
- [Airflow]: Backported an Airflow bugfix which impacted on-demand tasks
1.5.8 (09-11-2022)
features
- [Airflow]: Upgrade to Airflow 2.3.4
- [Spark]: Release spark 3.3.1 images, more details in the docs
- [UI]: Show progress when deleting/updating an environment in the environment events
- [Airflow]: Airflow version 1 support has been removed
bugfixes
- [General]: Fix an issue with cleaning up temporary files while deleting an environment
- [CLI]:
conveyor notebook start
had an issue where it asked for you notebook twice, this was fixed - [CLI]:
conveyor notebook
commandsstart
,stop
,open
now only show notebooks you own - [General]: Fix autoscaling from zero for our autoscaling groups, there was an issue with notebooks not properly detecting the Availability zone of the volume
1.5.7 (27-10-2022)
features
- [General]: Deployments are now attributed to the user who trigger them
- [Docs]: Added documentation on the needed IAM rights to use secrets in the operators
- [UI]: The guided tour can now be stopped and resumed even after refreshing the application
- [UI]: Admin users are now displayed in the user list page
- [UI]: Allow multiple users to follow the guided tour without interfering with each other
bugfixes
- [CLI]: Let the exit code of the
conveyor run
command mimic the exit code of the Airflow task - [UI]: Previously used logins are now always kept in lowercase
- [General]: Fixed a bug where old spark application where not cleaned up properly. This could block the deletion of environment.
1.5.6 (18-10-2022)
features
- [Airflow]: Added support for dynamic tasks in
conveyor run
. For more information go here - [Spark]: Release support for Spark 3.2.2
- [CLI]: Added support for updating the airflow instance lifecycle (on-demand, spot) via the CLI. Before you could only supply it during creation.
- [CLI]: Added conveyor completion commands to the docs
- [General]: AWS Upgrade EKS to version 1.23
- [General]: Azure upgrade AKS to version 1.23.12
- [General]: AWS and Azure decrease logging costs for fluent-bit
- [General]: Azure decrease logging cost, we do not store the logs of certain verbose Azure managed components
- [Notebooks]: When opening a terminal, the working directory is your conveyor project
- [Notebooks]: Install ssh by default
bugfixes
- [UI]: Fixed the project link not work on the task execution detail page
- [UI]: Fix the option to partially or fully select a task in the task executions page
- [UI]: Fix an issue where multiple people could not create a notebook with the same name
- [CLI]: Do not validate the setup.py and requirements.txt when using your own Dockerfile for notebooks
- [General]: Fix a bug in the airflow scheduler liveness probe
- [Spark]: Fixed a bug where the spark history server link would point to a wrong file name in certain rare cases, this could happen when a spark job was shut down unexpectedly
- [Notebook]: In a certain edge case a notebook delete would not do anything, this has been fixed
1.5.5 (06-10-2022)
bugfixes
- [UI]: Fix a bug that made the executions page fail to load
1.5.4 (06-10-2022)
features
- [General]: Added a Conveyor tag to all aws resources
- [General]: Increase the responsiveness of the kubernetes cluster autoscaler after a failure
bugfixes
- [Airflow]: Improved the liveness check of Airflow to use standard airflow code, this should result in less scheduler restarts
1.5.3 (21-09-2022)
bugfixes
- [CLI]: The previous release introduced a bug in the promotion mechanism which is now fixed.
- [UI] Prevent accidental clicks on project/environment pins
1.5.2 (20-09-2022)
features
- [UI]: You can now use Conveyor in Dark Mode, including the Airflow and Notebooks UIs.
- [UI]: Added an option to list all past deployments of a project, with their build ids and git commit hash ; not only the active one.
bugfixes
- [Airflow]: Fixed an issue with dbt factory when models contain the word model.
- [UI]: Sorting projects on last activity was not working correctly.
- [Streaming/RBAC]: Fixed an issue with a missing RBAC permission to validate a Streaming application.
1.5.1 (13-09-2022)
features
- [Airflow]: Added function to add conveyor executions URL to alerting, see documentation here
- [Spark]: Backport hadoop 3.3.4 for older Spark images.
Full details on the images are available at docs
- public.ecr.aws/dataminded/spark-k8s-glue:v3.2.1-hadoop-3.3.4-v8
- public.ecr.aws/dataminded/spark-k8s-glue:v3.2.1-2.13-hadoop-3.3.4-v8
- public.ecr.aws/dataminded/spark-k8s-glue:v3.1.3-hadoop-3.3.4-v3
- public.ecr.aws/dataminded/spark-k8s-glue:v3.0.3-hadoop-3.3.4-v7
bugfixes
- [CLI]: fix an issue where the git repo detection was not correctly filled in on a project.
- [Notebooks]: downloading notebooks was mistakenly overwriting the local src folder with the content of the notebooks folder.
- [CLI]: use a different command for detecting the current git commit hash such that it also works for repos with annotated tags.
- [General]: fix an issue with cost calculation such that it works again.
- [UI]: recent and pinned projects/environments were not properly removed when the corresponding project/environment is deleted.
1.5.0 (05-09-2022)
features
- [CLI]: Add commands for teams and use them in tf provider
- [Notebooks]: The notebook storage has been migrated from EFS to EBS. The migration will be handled automatically as soon as you have paused your notebook. The reason for this is that the EBS performance is more consistent, the downside is you have to specify a size up front, the default is 10Gi.
- [Notebooks]: We now not only persist your code and notebooks but also your venv. So if in a notebook you install
new packages these will be persisted across restarts. We do this by persisting the folder
/home/jovyan/work
. - [Notebooks]: Opening a terminal in the notebook has your virtual environment automatically activated (only for newly started notebooks).
- [Notebooks]: Added the plugin
jupyterlab-system-monitor
by default to show the current memory usage of your notebook - [Notebooks]: Added start/play button to the notebook details overview.
- [Notebooks]: The details overview can now always be opened even if the notebook is not ready or stopped.
- [Notebooks]: In the list view, the action open notebook UI now always opens in a new tab
- [Notebooks]: Added documentation on how to install jupyter extensions for notebooks.
- [CLI]: When running
conveyor notebook start
we now open it automatically when it has been started - [CLI]: Added the
conveyor notebook open
command to open your notebook in a browser - [CLI]:
conveyor notebook create
gives more feedback to the user on what is going on - [CLI]: Added icons to indicate that certain steps have finished when using
conveyor notebook create
andconveyor run
- [UI]: When creating a notebook, we now open it automatically
- [UI]: Rework how logs are shown in the UI. Make the UX simpler and allow searching logs across all pages.
- [Spark]: Include delta 2.1.0 in spark 3.3 images
- [UI]: Task executions can now be filtered by clicking on the corresponding environment/project/task/dag buttons from the table columns
- [UI]: Filtering on task executions columns now matches exactly the filter, unless you prefix it with ~
- [UI]: Added shortcut buttons for recently visited environments and projects
- [UI]: You can now pin projects and environments so that they show up on top of the lists
bugfixes
- [General]: Inviting a user could sometimes result in an email with a non-working url. We have fixed the encoding so inviting someone should always work.
- [RBAC]: Users were not properly removed from RBAC when being deleted. It is now fixed.
- [RBAC]: When RBAC is disabled show all the settings pages
1.4.2 (23-08-2022)
features
- [Airflow]: Support running Airflow scheduler/web on on-demand nodes to ensure that they are always available, which might be useful for production environments. For more info
- [Spark]: Added spark images for hadoop 3.3.4
- public.ecr.aws/dataminded/spark-k8s-glue:v3.3.0-hadoop-3.3.4-v1
- public.ecr.aws/dataminded/spark-k8s-glue:v3.3.0-2.13-hadoop-3.3.4-v1
- [UI]: All users can now be deleted by admins, including SSO users. If an SSO user gets deleted, he will simply be recreated on the next login. However, his previous permissions will be lost and will need to be set again.
- [Templates]: Upgrading to the latest version of the templates 1.1.0
- [UI]: Include chat option in UI to contact the support team
- [UI]: Add readonly demo environment for potential users
- [Templates]: Use strict uuid pattern matching in the resources. (@stijndehaes)
- [Templates]: Upgrade the resource folder assume role policies to use the service account. (@stijndehaes)
- [Templates]: Upgrade spark images to our latest releases. (@stijndehaes)
- [Templates]: Upgrade to dbt 1.1.0 (@pascal-knapen)
- [Templates]: Add gitpod and codespaces configuration (@pascal-knapen)
bugfixes
- [Azure]: Fixed an issue with calculating the memory of pods on Azure
- [General]: Fixed detection of the command or entrypoint of a container not working. Also adding documentation on how to debug the issue
1.4.1 (09-08-2022)
features
- [UI]: Admin users can now delete users from the Conveyor installation, if they are not part of the identity provider
- [Airflow]: Conveyor Airflow operators V1 are now obsolete and have been removed, after their deprecation period. If you still have V1 operators in some projects, please refer to https://docs.conveyordata.com/technical-reference/airflow/operators/conveyorcontaineroperatorv2#upgrading-from-v1
- [Streaming]: Added the possibility to modify
restartsThreshold
,restartsWindow
,restartsAlertCoolDown
for Spark streaming applications - [UI]: Links to Gitlab repositories are now supported
1.4.0 (01-08-2022)
features
- [General]: We improved the security of containers running on the kubernetes were possible.
Our own kubernetes management applications and Airflow run with the following settings:
- We enable read only root file system where possible, this makes it harder for attackers to exploit the root file system
- We run the containers as a non-root user, this makes privilege escalation harder
- We disable privilege escalation, this disables privilege escalation to the node
- We disable the Automount of service account tokens on pods that do not need it, by disabling this an attacker can not receive an authorization token for the kubernetes API We run user containers with the following extra settings:
- We disable privilege escalation
- We disable the Automount of service account tokens on pods that do not need it In the future we might look into enabling more of these settings, or allow the you to define them for your containers.
- [UI]: The embedded Airflow view now persists the navigation to its various pages in the conveyor url. This makes it easier to share the url with others, or revisit it yourself.
- [UI]: You can now easily navigate from the Task Execution list and details pages to the Airflow DAGs and Tasks pages
- [RBAC]: The error message that is returned when an action is not authorized is now more descriptive.
- [General]: The reset password email was still mentioning Datafy. It is now changed to Conveyor.
- [Docs]: Added a contact and support page
- [UI]: We now show the guided tour to first-time users by default
- [Airflow]: Decrease the load on NFS by Airflow by decreasing the dag processing logging to Error, and only creating the files when needed
- [Airflow]: Added docs on assume cross account iam roles for operators.
- [General]: Fixed an issue with the user invitation flow where an invalid invitation link was sometimes generated
- [UI]: You can now view the AWS IAM role or the Azure Application Client Id used by task executions in the Task Execution details view.
bugfixes
- [UI]: Fixed an issue with filtering task executions on multiple values of status, type, ...
- [CLI]: Fix an issue where the cli does not listen to your keystrokes after logging in, e.g. when creating a notebook
1.3.12 (26-07-2022)
features
- [General]: On Azure we upgraded kubernetes to 1.22.11
bugfixes
- [General]: Lower the usage of EFS by airflow executors, EFS was a critical component for airflow. Because of issues from the past we are lowering our dependency on it, thus increasing availability.
- [General]: Fixed a memory leak by upgrading one of the libraries we use
1.3.11 (19-07-2022)
features
- [General]: On aws we enable image tag immutability on the ECR repositories we manage
bugfixes
- [General]: On Azure we are seeing networking timeouts when pods start up, this is very problematic for the airflow scheduler as it never recovers. We now restart it when we detect the issue. We are also into contact with Azure support to find the root cause.
1.3.10 (14-07-2022)
bugfixes
- [UI]: Fixed an issue with the project pages not properly loading
1.3.9 (14-07-2022)
bugfixes
- [UI]: Fixed a race condition when logging in
1.3.8 (13-07-2022)
features
- [UI]: Adding buttons to open a project in gitpod or github codespaces
bugfixes
- [General]: Make the algorithm to detect different memory configurations from 1.3.7 more robust. We do not accept changes that are considered too low, this way we are more tolerant to faulty configurations.
- [Airflow]: Remove some dangling tables after airflow 2.3 migration
1.3.7 (12-07-2022)
bugfixes
- [General]: Not all aws instances get the same amount of memory. In one instance group we see heavy fluctuations. The difference between from one m5.4xlarge to another can be in the range of several 100Mbs. This can result in an issue when calculating the memory for your container. We now autocorrect these values.
- [Notebooks]: Fixed an issue where downloading notebook files would fail if the old
datafy.cloud
domain was configured - [Docs]: Add
mx.nano
instance type back to our ConveyorContainerOperatorV2 documentation.
1.3.6 (11-07-2022)
The notebook API has been updated in a non backwards compatible way, please upgrade to the latest CLI.
features
- [Notebooks]: Reworked our notebook API to be more consistent
bugfixes
- [Airflow]: Fixed an issue in fetching the spark submit logs from airflow
- [Notebooks]: Fixed an issue with notebooks where notebooks would be invisible when the SSO connection creates usernames with capitals
- [CLI]: Fixed
conveyor run
execution date detection when no schedule is set on a DAG - [Spark]: Fixed an issue where environment variables weren't propagated in local mode
- [UI]: Fixed an issue where the embedded Airflow view would not render properly when the access token is expired
- [UI]: Fixed an issue where a project git repo would not be updated after modifying it
1.3.5 (05-07-2022)
features
- [Airflow]: Reduce logging of airflow scheduler and file processor to efs.
- [Airflow]: Change how Airflow dag fetching works for the scheduler and web instance, this reduces load on EFS by 75%
bugfixes
- [UI]: Fixed an issue where the UI would use the user email with capital letters
1.3.4 (30-06-2022)
bugfixes
- [Airflow]: Preventing Airflow tasks to be marked as failed when an API 410 exception is thrown
- [Airflow]: Lower the logging of Airflow to EFS
1.3.3 (30-06-2022)
features
- [Spark]: Big spark jobs (mx.xlarge, mx.2xlarge, mx.4xlarge and more then 1 executor), will now be scheduled in a single Availability zone. We select the availability zone based on the least amount of spot interrupt change when running on spot. This will reduce network costs, and reduce network overhead for spark.
bugfixes
- [Spark]: We are investigating and issue where the EFS volume used for the spark event log is overloaded. We added a global Admin option for ourselves to disable spark event log upload, that we can enable when we notice issues in an environment.
- [Airflow]: Backported https://github.com/apache/airflow/pull/24478 to fix an issue with retrying old tasks in the UI
- [Airflow]: Backported https://github.com/apache/airflow/pull/24117 to fix an issue with retrying old tasks in the UI
1.3.2 (29-06-2022)
features
- [docs]: Advocate the use of strict uuid pattern matching when assuming roles
- [Airflow]: Upgrade to airflow 2.3.2
- [Airflow]: Allow users to template
num_executors
in ConveyorSparkSubmitOperatorV2 - [General]: Allow folders in dags and resources folder
- [General]: Added warning about v1 operator deprecation into UI
- [CLI]: Conveyor run now lets you select an environment interactively
- [CLI]: Conveyor run now lets you select a DAG and a task interactively
- [CLI]: Conveyor run now automatically uses the last execution date compatible with the DAG schedule if none is provided
- [Spark]: Added support for Spark streaming on Azure
- [Spark]: Added a spark local mode to the ConveyorSparkSubmitOperatorV2, see the docs for more info
- [CLI]: Support passing additional build arguments to the container engine
- [Spark]: Added section on improving performance when Spark on Conveyor
- [Costs]: Added a global overview per day
- [Azure]: Initial version of Azure metrics available in UI
- [Spark]: We now run big (more than 1 executor, and executor instance type mx.xlarge, mx.2xlarge, mx.4xlarge) batch spark applications in a single AZ by default. When using spot we use the aws spot placement score API to determine the best AZ when your spark application is launched. This improves the availability of the spark application, and reduces network costs and overhead.
- [Spark]: Added spark 3.3.0 images:
- public.ecr.aws/dataminded/spark-k8s-glue:v3.3.0-hadoop-3.3.1-v1
- public.ecr.aws/dataminded/spark-k8s-glue:v3.3.0-2.13-hadoop-3.3.1-v1
- [Azure]: Support enabling microsoft defender for cloud on Azure
- [Spark]: Released new images with reduced logging when using spark local mode:
- public.ecr.aws/dataminded/spark-k8s-glue:v3.0.3-hadoop-3.3.1-v6
- public.ecr.aws/dataminded/spark-k8s-glue:v3.1.3-hadoop-3.3.1-v2
- public.ecr.aws/dataminded/spark-k8s-glue:v3.2.1-hadoop-3.3.1-v7
- public.ecr.aws/dataminded/spark-k8s-glue:v3.2.1-2.13-hadoop-3.3.1-v7
- [Templates]: Use strict uuid pattern matching in the resources. (@stijndehaes)
- [Templates]: Upgrade the resource folder assume role policies to use the service account. (@stijndehaes)
- [Templates]: Upgrade spark images to our latest releases. (@stijndehaes)
bugfixes
- [UI]: Pressing ENTER when filtering columns was not working
- [UI]: Add executor info to spark detail page
- [UI]: Show all states for an environments in the UI, such that users can see what is going on when it is being deleted
- [UI]: Fixed an issue where inviting a user would result in Airflow UI's not loading untill the users logged out and in again
- [CLI]: Fixed an issue where logger wouldn't respect being set to quiet
- [CLI]: Fixed an issue with deleting notebooks
- [General]: Update ebs csi driver so it doesn't go out of memory when many pods are being scheduled. This improves reliability when using the spark option
executor_disk_size
- [General]: Fixed a bug where the metrics would show double the CPU usage on AWS
- [CLI]: Do not print the m2m token when logging in
1.3.1 (27-06-2022)
bugfix
- [Azure]: Correct daemonset overhead calculation to include the azure-cni component after switching away from calico
1.3.0 (20-06-2022)
features
- [Airflow]: Update Datahub packages to latest stable version (0.8.36)
- [Azure]: Prepush notebook and project base images when they originate from the project acr or the conveyor ecr registry
- [Azure]: Implement project and environment costs
- [RBAC]: You can now manage team of users and assign teams to projects and environments. For more details, see https://docs.conveyordata.com/technical-reference/security/role-based-access-control-rbac#teams
1.2.5 (14-06-2022)
bugfixes
- [Airflow]: Fixed a bug where removing tags from a dag would make it fail to load
- [UI]: Fixed the link to the git repo in deployments, and on the project view
- [CLI]: Do not show version out of date warning when using
conveyor update
command
1.2.4 (13-06-2022)
bugfixes
- [Notebooks]: Update spark image used in notebooks to version: 3.2.1-hadoop-3.3.1-v6
- [UI]: Tour won't let you move past step 7
1.2.3 (09-06-2022)
bugfixes
- [General]: Fixed an issue where the new single availabilty zone option that could result in jobs being slow to launch
1.2.2 (08-06-2022)
features
- [General]: Added more instance types to our autoscaling groups. This will help to get the most stability out of spot instance on AWS
- [General]: Made the single availability zone option more robust for on-demand. When the preferred instance type is unavailable it will move on to the next preferred type in a list
bugfixes
- [General]: Fixed an issue where the new single availabilty zone option would always use on-demand instances
1.2.1 (08-06-2022)
features
- [UI]: Add optional tracking for analytics purposes
- [Airflow]: Resubmit Spark application when spot termination is detected during submission
- [Spark]: Allow users to select an availability zone for your spark application using ConveyorSparkSubmitOperatorV2
bugfixes
- [UI]: fix links to docs page
- [UI]: Fixed an issue on Azure where big logs would fail to load
- [Spark]: Handle an extra case as spot interruption instead of a regular spark submit failure
1.2.0 (07-06-2022)
features
- [Spark]: Added support for spark decommissioning, Spark decommissioning helps you to not lose data when an executor has a spot interrupt.
Before the spot interrupt goes through spark will try to send all intermediate results to other executors. Thus saving time and money for this job.
The feature is only supported in our latest spark 3.2 images:
- public.ecr.aws/dataminded/spark-k8s-glue:v3.2.1-hadoop-3.3.1-v6
- public.ecr.aws/dataminded/spark-k8s-glue:v3.2.1-2.13-hadoop-3.3.1-v6
bugfixes
- [Spark]: Created a new spark image which fixes a bug in MsalTokenprovider for using spark on Azure
1.1.6 (31-05-2022)
bugfixes
- [General]: use the api server address as master on Azure instead of internal kubernetes service.
- [Airflow]: Fix an issue where manual airflow runs were not filtered correctly in the task executions
1.1.5 (31-05-2022)
bugfixes
- [CLI]: Fix the conveyor update progressbar
- [General]: Make sure the cluster-autoscaler can handle the taint set by spot termination: aws-node-termination-handler/spot-itn
- [Spark]: Upload the spark eventlog under the correct name, this makes the spark history server work again
- [UI]: Fixed a typo on the admin page where it said projects instead of environments
1.1.4 (30-05-2022)
bugfixes
- [Airflow]: Lower the Airflow usage of EFS by changing
min_file_process_interval
from 10 to 30 anddag_dir_list_interval
from 60 to 300. - [General]: Added some improvements to the code that will lower EFS usage
1.1.3 (27-05-2022)
bugfixes
- [UI]: Fix filtering on task executions
started_at
field - [General]: Allow more parallel processing in our operator. This reduces waiting time when a lot of spark/container jobs are launched
1.1.2 (27-05-2022)
bugfixes
- [General]: We only keep failed container CRD's around for 30 min instead of 3 days. They piled up and took too much resources.
1.1.1 (27-05-2022)
features
- [UI]: Remember previously used email in login screen
- [General]: Implement cleanup of old project builds for Azure
bugfixes
- [Airflow]: Catch 502 and 504 errors in External Task Sensor
- [General]: Fix an issue where project deletion on Azure failed
- [General]: Fixed an issue where an environment that failed to create could get into and unrecoverable state
- [Notebooks]: Cleanup unused notebook images from ACR
- [Spark]: Fix the spark eventlog upload failing
1.1.0 (24-05-2022)
features
- [CLI]: Change CLI to use environment variables with CONVEYOR prefix as a preferred
- [CLI]: update the
upgrade-dags
command to also rename imports and classes in dags fromDatafy
toConveyor
- [CLI]: Move the ~/.datafy profiles directory to ~/.conveyor
- [CLI]: Add warnings when running
conveyor build
if the dags still useDatafy
instead ofConveyor
. - [General]: Display the node id in the UI as well as in Airflow when the node got spot terminated.
- [Templates]: The github repository for templates has been renamed to
conveyor-templates
- [Notebooks]: The working directory for notebooks has been renamed from
datafy_project
toconveyor_project
. This might cause loss of data for existing notebooks. - [Projects]: Projects now get their configuration from the
./conveyor
directory, with fallback to the./datafy
directory
bugfixes
- [CLI]: Conveyor run now creates the date interval just like a scheduled Airflow run, before it behaved like a manual Airflow run
- [Spark]: Wait with uploading the event log until the spark application has finished, before there were instances where an upload happened before the spark application was shut down
- [Airflow]: Allow primitive types as env_vars and convert them to strings
- [Airflow]: Handle spot interrupts in ConveyorContainerSensor and ConveyorExternalTaskSensor tasks with
reschedule
mode by rescheduling them on another node - [Airflow]: Handle spot interrupts in all Sensor tasks which use mode
reschedule
by rescheduling them instead of crashing - [Airflow]: ConveyorExternalTaskSensor now also can now also watch for manually scheduled runs
1.0.2 (20-05-2022)
features
- [Aiflow]: Increase parallelism from 64 to 128
- [UI]: Improve the navigation breadcrumbs and the page icons
1.0.1 (19-05-2022)
bugfixes
- [CLI]: Fix issue with
datafy update
renaming the cli binary to conveyor
1.0.0 (19-05-2022)
features
- [General]: Rename Datafy to Conveyor
- [CLI]: Cleanup command to delete managed docker images
- [CLI]: The
datafy
CLI executable will be automatically renamed toconveyor
when usingdatafy update
- [UI]: Fix a bug with embedded Airflow view auto-resizing
bugfixes
- [Airflow]: Retry pods that fail due to kubeletOutOfResources (more details about the bug in k8s: https://github.com/kubernetes/kubernetes/issues/106884) up to 5 times.
0.63.3 (10-05-2022)
features
- [Spark]: Integrate azure libraries in our standard spark image.
- [Templates]: Use new spark image which supports both azure and aws
bugfixes
- [Notebooks]: Configure the notebook to work on azure
- [Notebooks]: Fix notebook configuration to include azure specific properties and jars
- [Notebooks]: Fixed a bug where the memory of the spark context was not changed according to the instance size
- [Notebooks]: Fixed a bug where files were not persisted when notebook was created from the UI
0.63.2 (05-05-2022)
bugfixes
- [UI]: Fix an issue to get current user roles when using SSO
0.63.1 (05-05-2022)
features
- [Airflow]: Removed the possibility to create airflow v1 environments, airflow v1 environments are deprecated for a long time now. They will be phased out in 2022. Airflow 1.x does not receive community support anymore and relies on very old libraries which are becoming less and less secure to use.
bugfixes
- [UI]: Use username to get user roles in UI
0.63.0 (05-05-2022)
features
- [CLI]: Pass environment variables to airflow for dag validation or using the
run
command - [UI]: Added the m2m tokens in the Conveyor UI Settings page
- [General]: Add support for detecting spot termination on Azure
- [Templates]: Make the templates work for both azure and aws
- [Templates]: Use newest spark version: 3.2.1 in the templates
- [Templates]: Update python versions such that they work with Apple Clang 13+
bugfixes
- [UI]: Fixed an issue with SSO users showing up with weird names in the list, this is only relevant for installations starting from 2022
- [Airflow]: Fixed an issue with cleaning up old airflow logs
- [Airflow]: Make airflow workers more robust against connection reset errors while watching kubernetes pods
- [UI]: Show the azure application client id for notebooks.
- [General]: Increased timeout on Azure when deleting container repositories.
0.62.7 (27-04-2022)
features
- [Spark]: Added a new failure mode for spark batch applications, if the application has lost more than 5 times the amount of executors requested the application will fail. The chances of such an application ever finishing are very low, and it would continue to take up resources in the cluster otherwise.
- [Airflow]: When an airflow executor shuts down unexpectedly we check if this was because of a spot interrupt. If that is the case we put a message in the logs. This should make debugging issues easier
- [General]: Add new failure mode for batch applications, if kubelet has not enough resources (cpu, memory, pods) but scheduler did assign the pod to the node, which caused it to fail.
bugfixes
- [UI]: Fixed an issue with SSO users not showing up in the user list, this is only relevant for installations in 2022
- [General]: Fixed an issue where updates of spark application with more than 600 executors would not be updated in our UI
- [CLI]: Fixed
datafy notebook download
being broken - [Docs]: Fixed broken link to connect-ide docs
0.62.6 (21-04-2022)
features
- [CLI]: Add support for Azure DevOps git when using templates to create a project
- [CLI]: Made the
datafy project stop-run
command more useful, it can now handle multiple matches. And allows you to stop runs in batch - [CLI]: Conveyor run now checks before starting if there are other manual runs with the same properties in the environment. If there are it will ask if you want to clean these up first. This will stop manual runs from piling up.
bugfixes
- [UI]: Fixed an issue where the cancel run button wouldn't work, but just redirect to the job logs
- [Airflow]: Fixed an issue where the datafy application runs button would not filter on the environment
- [Airflow]: The ConveyorExternalTaskSensor would fail if the Airflow instance was unavailable(for example because of a spot interrupt). Now we gracefully retry the sensor on the next poke
- [General]: Fix a bug where a new users wouldn't be able to register when using SSO
- [CLI]: Fix a bug for
datafy notebook
commandsdelete
,start
,stop
,download
where filling in only thename
orenvironment
flag would not filter properly on these flags
0.62.5 (15-04-2022)
bugfixes
- [Airflow]: Make airflow workers more robust against glitches in kubernetes instead of failing immediately
- [UI]: Return a 404 instead of a 500 when requesting nonexisting logs such the UI does not handle it as an error.
- [Notebook]: Fix errors in our notebook operator when using cross account clusters
features
- [Airflow]: Support instance_life_cycle option for dbt tasks
- [Airflow]: Support instance_life_cycle option for airflow sensors
0.62.4 (13-04-2022)
features
- [General]: Upgrade Aws EKS version to 1.22
0.62.3 (08-04-2022)
features
- [General]: Upgrade Aws for fluent bit to version: 2.23.3
- [General]: Upgrade aws load balancer controller in preparation of eks 1.22 upgrade
0.62.2 (07-04-2022)
features
- [Airflow]: Upgrade following dependencies for Airlfow 2: Airflow to 2.2.5, upgrade apache-airflow-providers-apache-spark to 2.1.3, apache-airflow==2.2.5 apache-airflow-providers-cncf-kubernetes to 2.2.0, apache-airflow-providers-slack to 4.2.3, acryl-datahub to 0.8.31.6, boto3 to 1.21.32
- [General]: When scheduling an application, we now don't fail at the first ImagePullBackOff happening in kubernetes, we need three failure events. This makes the operator more robust to temporary network failures.
- [UI]: On the costs page add the selected cost range to the URL, this makes it easier to share URL's with other people
- [UI]: On the streaming application pages added the selected filter to the URL, this makes it easier to share URL's with other people
- [CLI]: Added the command
datafy project generate-config
, which will generate the.datafy/project.yaml
file for a project. This is useful when forgot to check it into git or when you use the terraform provider.
0.62.1 (04-04-2022)
features
- [CLI]: add login fallback when the automatic cli login does not work or is not supported.
- [UI]: If your login is expired, and you go to your Airflow URL, we now redirect you to your Airflow page again after logging in.
bugfixes
- [UI]: Go to the correct landing page after logging in from an invitation link
- [DOCS]: Small cleanup in the pyspark and spark tutorial
0.62.0 (29-03-2022)
features
- [General]: Run the on-demand instances autoscaling group as a mixed instance fleet, that way we can handle a certain instance type note being available on aws
- [Spark]: Released new spark images that add a new
log4j-executor.properties
file that reduces logging for spark executors, this results in cloudwatch cost savings. The new images are:- public.ecr.aws/dataminded/spark-k8s-glue:v3.2.1-hadoop-3.3.1-v3
- public.ecr.aws/dataminded/spark-k8s-glue:v3.2.1-2.13-hadoop-3.3.1-v3
- public.ecr.aws/dataminded/spark-k8s-glue:v3.1.3-hadoop-3.3.1
- public.ecr.aws/dataminded/spark-k8s-glue:v3.0.3-hadoop-3.3.1-v5
- [UI]: Added type email to our login email field, this way browsers and password managers will recognize it better
- [UI]: Simplify create environment modal when there is only 1 cluster
bugfixes
- [General]: Fixed an issue when migration our datafy config file
- [CLI]: Fix an issue when deleting of notebooks fails
- [UI]: Fix login flow from CLI
0.61.7 (18-03-2022)
bugfixes
- [UI]: Revert runtime-config
0.61.6 (18-03-2022)
bugfixes
- [UI]: Correct runtime-config for production
0.61.5 (17-03-2022)
bugfixes
- [General]: Add cluster endpoints to management API
0.61.4 (16-03-2022)
bugfixes
- [CLI]: Fix cicd flow when passing environment variables
0.61.3 (16-03-2022)
bugfixes
- [General]: Fix listing users
- [CLI]: Fix cicd flow
0.61.2 (16-03-2022)
bugfixes
- [General]: Make sure the Conveyor team can access the tenants
0.61.1 (16-03-2022)
bugfixes
- [Docs]: Regenerated docs for template release 0.15.5
- [UI]: Fix IDP login for dataminded users
0.61.0 (16-03-2022)
features
- [UI]: Revamped login flow
- [Templates]: Update the spark settings so the aws glue integration works again
- [Templates]: Use dots instead of underscores for specifying the Conveyor_instance_type. (@nclaeys)
0.60.1 (10-03-2022)
bugfixes
- [Spark Streaming]: Fix missing applications in the UI.
0.60.0 (08-03-2022)
features
- [UI]: Add button for administrators to invite new users
- [Airflow]: Make conveyor_instance_type specification consistent by using dots everywhere
- [Spark Streaming]: Added an alerting option to spark streaming support, for more info see here
- [General]: Upgrade aws ebs csi driver to 2.6.3
- [Airflow]: Upgrade Airflow 2 to 2.2.4
bugfixes
- [CLI]: Remove debug message when copy image fails due to access denied
- [UI]: Fix filtering on environment and schedule in task executions page
- [UI]: Refresh page of streaming application that is in state pending every 10 seconds
- [CLI]: Refactor the result of
datafy project list-users
anddatafy environment list-users
to not include/User/
string
0.59.4 (18-02-2022)
bugfixes
- [Airflow]: Do not set tcp_keepalive when using airflow v1 as it does not exist.
- [CLI]: Fix
datafy update
for Apple Silicon Macs - [General]: Change the spark version used by the spark history server to not have issues with verifying the S3 ssl certificates
0.59.3 (16-02-2022)
bugfixes
- [Notebooks]: Use the correct images when launching a notebook from the UI
0.59.2 (16-02-2022)
features
- [UI]: Added instance type and lifecycle to task execution details page
- [UI]: Show deletion protection status in environments page
- [UI]: Added delete button in environments page
- [UI]: Added button to create new environments
- [UI]: Added button to create notebooks
- [General]: We run our agent on the cluster instead of on ECS
- [Spark]: Release spark 3.2.1 images
- [Docs]: Added documentation about spark hive integration issues.
- [Docs]: Migrated the documentation to Docusaurus, this should allow us to make the documentation more user-friendly
- [Notebooks]: Do not copy the virtual environment to nfs but only the project related files in order to speed up notebook creation
0.59.1 (03-02-2022)
bugfixes
- [CLI]: Make sure the docker client used by Conveyor also uses the typical Docker environment variables
- [CLI]: Allow uploading of dag files larger up to 16MB, up from 1MB. Also fail if a larger file is detected instead of printing a warning
- [UI]: Fix an error that was appearing on the first page load
- [UI]: Fix a problem in the admin user panel where a project could not be added to a user
- [UI]: Fix a scrolling issue in the embedded Airflow page
0.59.0 (31-01-2022)
features
- [Notebooks]: Added support for notebooks persistence. This means notebooks can now be stopped and started using the CLI and the UI.
- [General]: Cleanup unused aws secrets manager secrets
- [General]: Improved the pg-bouncer SSL setup to the RDS server by validating the RDS CA, the RDS only accepts encrypted connections now
- [CLI]: Added the same docker build flags for notebook create that are supported in project build
- [CLI]: Support for podman as container manager
bugfixes
- [General]: fix 2 small issues with the configuration of notebook properties
- [Airflow]: Update the connections used by Airflow 2 to be sourced from the environment. That way we should have fixed the issues with a connection being temporarily unavailable and that leading to a job failure
- [RBAC]: Fixed an issue where a project admin could not manager users on a project
0.58.1 (10-01-2022)
bugfixes
- [CLI]: Fixed an issue when building a project would not work
- [PySpark]: Update pyspark images such that setuptools (>=60.0.0) also installs global python packages in the correct directory for debian.
- [Template]: Upgrade templates to 0.15.4
0.58.0 (7-01-2022)
features
- [General]: Release the preview of the costs feature.
- [General]: Pre cache notebook and project base images to speed up uploading images the first time.
- [General]: use m6i instances instead of m5 when launching new nodes as they are more cost efficient
bugfixes
- [UI]: Fixed a bug where a job duration wasn't updated, and it also refused to show the metrics because of that.
- [General]: Fixed an issue where trying to use a secrets from aws without an IAM role would take 30m to fail.
- [CLI]: Fixed an issue where starting a new notebook wouldn't work