Arkindex 1.11.0

We are happy to announce that a new Arkindex release is available. You can explore Arkindex and try out the newest features on our demo instance, demo.arkindex.org.

Processes

Logging has been improved on the steps taken before a task starts. When a large Docker image or model version gets downloaded and the task is still Pending, the task logs now include some progress information.

JSON elements listing

In this release, creating or starting a process now enables the Skip JSON elements listing option by default. This option decreases process startup time by removing the generation of an elements.json file in the initialization task and requiring workers to use a different API to receive elements.

Support for elements.json will be removed in Arkindex 1.12.0. Worker developers are encouraged to ensure their workers use version 0.5.1 or later of Base Worker to support this feature.

Worker configurations

In Arkindex 1.9.1, the work on our new worker configuration format reached a level where it could be considered stable. As the use of this new format is becoming more widespread, we added deprecation notices for the previous configuration format in Arkindex 1.10.1. The previous configuration format is now holding up further enhancements on configuration management, worker development, and process execution.

Support for importing workers based on previous configuration format based on .arkindex.yml will be removed in Arkindex 1.12.0. Workers that were previously imported may continue to work, but they will not be officially supported.

Worker developers should follow the migration guide to migrate workers to the new configuration format.

Secrets

Secrets are a feature only available in Enterprise Edition. To avoid having to implement separate workers for each edition of Arkindex, the secret fields of the new worker configuration format now behave like regular text fields in Community Edition. While Enterprise Edition users will get to select a secret that they have previously saved or were granted access to, Community Edition users now must copy and paste their secret into the configuration directly.

Worker developers must upgrade their workers to version 0.5.2 or later of Base Worker to support this feature.

Users

The user menu in the top-right corner of the Arkindex frontend now displays the display name of the account you are logged into, instead of the email address. This display name can be changed through the Profile option of this menu.

The Login API endpoint now properly prevents inactive users from logging in. Previously, inactive users could still login successfully through this API endpoint, but subsequent API requests would detect the inactive state and fail.

API

The following API endpoints have been migrated to the new error format:

The documentation for each of those API endpoints contains a detailed description of the structure of this new format.

Upgrade notes

To upgrade a development instance, follow this documentation.

To upgrade a production instance, you need to:

  • Deploy this release’s Docker image: registry.gitlab.teklia.com/arkindex/backend:1.11.0

  • Run the database migrations: docker exec ark-backend arkindex migrate

  • Update the system workers: docker exec ark-backend arkindex update_system_workers

The main changes impacting developers and system administrators are detailed below.

Root-less images

All of the Arkindex Docker images now use a non-privileged user instead of the default root user. This change could prevent the startup of the Arkindex backend, as it might no longer have the necessary permissions to read its configuration file. This could also cause issues with database exports or tasks.

You may override this user when starting the container using the --user <UID> argument of docker run or the user: <uid> option of Docker Compose.

We do not recommend running in production with the root user, as it allows some security exploits that are not possible with a non-privileged user.

To learn more, see the dedicated section of the setup documentation.

OpenID Connect support

These changes only apply to Enterprise Edition.

This release introduces support for single sign-on through OpenID Connect. This feature is disabled by default and requires some additional configuration, both in Arkindex and on the OpenID Connect provider. Once enabled, it will be possible for users to both register and login through OpenID Connect, and existing local accounts may be linked to OpenID Connect if they have the same email address.

To learn more, see the documentation on OpenID Connect support in Arkindex.