Skip to content

Releases: RyaxTech/ryax-engine

26.4.0

18 May 12:40

Choose a tag to compare

We are proud to announce the release of:

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Ryax 26.4.0

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

New features

New scheduling policy

We have added a new multi-objective scheduler that combines static scores, runtime prediction, node-pool pricing,
and empirical execution history to automatically select the best execution pool according to performance and cost preferences.

Site Registration

The Ryax Site registration (from the main site to one with a Worker) is now done in the Ryax UI.
This simplifies the Worker configuration make it more secure and fix issues with dynamic registration token.

Bug fixes and Improvements

  • Fix unable to create user in the UI
  • Centralized Helm repository in ryax-engine so simplify install and development
  • Emit Every and Stop action is now properly stopping in all case
  • Fix memory warm start with last successful allocation in Intelliscale
  • Reduce Intelliscale recommendation timeout to avoid stall deployment
  • Modularize scheduling policies to accommodate external policies support

Upgrade to this version

The Worker that was packaged inside the Ryax installation is now removed and the Worker install will be done separately.
This simplifies the configuration and makes the Ryax installation independent of user code execution.

To upgrade your main cluster, find the values file from your previous install or restore them using:

helm get values -n ryaxns ryax --output yaml > values.yaml

Then, run the upgrade with :

helm upgrade ryax oci://registry.ryax.org/release-charts/ryax-engine:26.4.0 \
  -n ryaxns \
  -f values.yaml

To restore your local worker, we need to extract the worker config to be able to attach the database to the same volume.
To do so extract the worker values with:

yq -y .worker ./values.yaml > worker.yaml

The new registration mechanism requires you to enter the site and node pools ids.
To do so, edit this file to add the config.site.id and the config.spec.nodePools[].id ids that
you can find in the Web UI in the Infrastructure view.

Here is an example of configuration:

postgresql:
  auth:
    password: KSODJAOPP2
config:
  site:
    id: Site-1777972967-vlyxkb72 # Add this field
    spec:
      nodePools:
      - id: NodePool-1777972967-duf9w7tu # Add this field
        selector:
          k8s.scaleway.com/pool-name: default
      - id: NodePool-1777984371-q43o0vc6 # Add this field
        selector:
          k8s.scaleway.com/pool-name: small

And then run:

helm install -n ryaxns ryax-worker oci://registry.ryax.org/release-charts/ryax-worker:26.4.0 -f worker.yaml

26.2.0

03 Mar 13:23

Choose a tag to compare

We are proud to announce the release of:

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Ryax 26.2.0

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

New features

Fully Compatible Helm Installation

Starting from release 26.2.0, installation is done using Helm, and ryax-adm must not be used anymore.
The new installation documentation is available here.

The switch from ryax-adm to helm breaks the retro-compatibility for clusters installed under Ryax version 26.2.0. Workflows, images, and data can be migrated, but clusters installed with adm cannot be operated directly with Helm and vice versa.

We are developing tools to migrate clusters to pure-helm installation without data loss.

Air gap version of ryax

Ryax now supports air-gapped clusters, where one can build and run workflows in a completely isolated environment.

More information in our installation documentation related to air-gapped clusters here.

Navigation and UI

  • This release also brings new features related to the fine-grain observability of executions and resource consumption.
  • Project navigation has been improved: a top bar that enables you to switch between your projects.
  • User and project management is now in the top menu for admins.
  • Resource usage data is now available in the UI for system administrators.
  • We added an infrastructure view that shows the current topology of the underlying infrastructure (including workers, sites, and node pools).
  • Complete rework of the installation: now use Helm (ryax-adm is deprecated).

Bug fixes and Improvements

  • The fix URL is now stripped of its whitespace when adding a repository.
  • Project deletion when the active user's current project leads to a stalled UI.
  • Move the user documentation to MkDocs.

Upgrade to this version

Upgrades of old Ryax versions (before 26.2) will need to go through adapted cluster migration. The procedure will be provided soon. Users needing a rapid migration can contact us directly.

25.10.0

23 Oct 12:34

Choose a tag to compare

We are proud to announce the release of:

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Ryax 25.10.0

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Optimize the Resources, make Build Simple

New features

  • More robust intelliscale, enhanced detection mechanism
  • Improved monitoring
  • Built-in action resource usage monitoring
  • Track cpu and memory usage per execution
  • Several features to enhance multi objective scheduling

Bug fixes and Improvements

  • Bug that made worker create queues indefinitely in some situations
  • Fix sudden decomissioning of bitnami repo
  • Prevent builder failure when the wrapper git reference is unavailable
  • Fix builder persitency that was making automatically garbage collection fails
  • Fixed bug that let actions build stuck on starting state
  • Switch to uv for python packaging
  • Upgrade to traefik 3

Upgrade to this version

Before you start

Install CRDs for traefik v3 migration.

kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.5/docs/content/reference/dynamic-configuration/kubernetes-crd-definition-v1.yml

First if you have a job on ryaxns named ryax-studio-scale-down delete the ryax-studio-scale-down job to avoid imagePullBackOff due the
sudden decommissioning of bitnami.

kubectl delete job -n ryaxns ryax-studio-scale-down

If your ryax_values.yaml file has an empty storageClass: """, remove this entry
and ensure you have one and only one as default.

Upgrade

Apply the upgrade with adm by changing version to 25.10.0 on values files.
Update all external workers installed by editing the values to use 25.10.0.
Remove the vpa helm installation.

helm uninstall -n ryaxns ryax-vpa

25.02.0

28 Feb 15:37

Choose a tag to compare

We are proud to announce the release of:

✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Ryax 25.02.0

✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Optimize Resources with Ryax IntelliScale, make your life simpler with Reproducible Action Builds

New features

  • Reproducible Action build with lockfile support
  • Automatic Action resource scaling with NVIDIA MIG support
  • Automatic retries
  • Resources accounting (Preview)

Bug fixes and Improvements

  • Fix: issue when enabling Action Builder Nix store persistence
  • Fix: enable deletion of workflow even when on error
  • Fix: only use GPU node if asked
  • Fix: state inconsistency in Execution and Deployment in some cases
  • Fix: optional inputs on SSH_SLURM
  • Fix: disable deploy triggers on SSH_SLURM

Upgrade to this version

The Worker now comes with the vpa service that powers the Ryax IntelliScale.
To configure it, see the configuration documentation

Then apply the update as usual.

24.12.0

13 Dec 13:04

Choose a tag to compare

We are proud to announce the release of:

✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Ryax 24.12.0

✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Stability and better UI experience

New features

  • GPU support for SSH SLURM with Singularity
  • Runtime Class support for the Kubernetes add-on
  • Action Builder now uses a persistent cache (Nix Store)

Bug fixes and Improvements

  • Use PostgreSQL instead of SQLite as database by default for the Worker
  • Fix Dynamic Output edition form UI reload too often
  • Better deploy constraints settings site type filter
  • Fix CPU per task option for in Slurm execution mode
  • Fix Worker configuration update is now taken into account
  • Fix missing logs for very short execution
  • Avoid workflow error when double deploy
  • Avoid action stuck on Building in case of Action Builder failure
  • Fix RabbitMQ memory leaking due to dangling queues

Upgrade to this version

Because the Worker changes from SQLite database to PostgreSQL, you have to reset its state.
To do so, remove the worker with:

helm uninstall ryax-worker -n ryaxns

We also need to clean broker state to clean internal state:

helm uninstall rabbitmq -n ryaxns
kubectl delete pvc -n ryaxns data-ryax-broker-0

Runner should also be cleaned:

ryax-adm clean runner

For external workers, be sure that you have the values.yaml file that you used
for the previous installation and then run, for example:

helm uninstall ryax-other-worker -n ryaxns
helm install -n ryaxns --values ryax-other-worker.yaml

Then apply the update as usual.

24.10.0

23 Oct 14:21

Choose a tag to compare

We are proud to announce the release of:

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Ryax 24.10.0

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Multi-site full power!

New features

  • A new service called Ryax Worker can now be used to attached any Slurm or Kubernetes cluster resources
  • Ryax can now run any action on SLURM and Kubernetes seamlessly
  • Action are now scheduled according to user defined constraints and objectives
  • Add the possibility to pin Ryax services to a dedicated resources (nodeSelector)
  • Enhance Ryax documentation with updated content (doc)
  • New Jupyter Notebook action with GPU support in default actions
  • Action builds now can be canceled
  • Kubernetes addon now support injection of service

Bug fixes and Improvements

  • Fix volume permission for NFS based storage volumes (defaults to 1200 now)
  • Fix fail properly when a pip install fails during builds

Upgrade to this version

This is a major release of Ryax which implies some extra step for the upgrade.

Update configuration

This release introduce a new service, the Worker. In order to define the nodes that will be used by your actions, the Worker requires a site configuration. Please, add a configuration in your Ryax installation configuration file using the following example: in your local cluster has a node pool named default with a label my.provider.com/pool-name: default on each node, it has 4 CPU and 8G of memory per node.

worker:
  values:
     config:
       site:
         name: local
         spec:
           nodePools:
           - cpu: 4
             memory: 8G
             name: default
             selector:
               my.provider.com/pool-name: default

See the Worker configuration documentation for more details.

Update DNS

If you use public IP with TLS enabled, you will need to create a new DNS entry to support all subdomain for your cluster. This is used for example for an external Worker to access the internal container repository.
Please add an entry in your DNS using star notation:
*.<clusterName>.<domainName>

See installation doc for more details.

Add HPC site

The users of HPC actions have to install a Worker dedicated to each cluster following this documentation.

Apply and clean

Once configured, you can apply the configuration with ryax-adm as usual.

The log capture service, Loki, was moved into the ryaxns namespace. Thus, the old Loki deployment can be removed.
After applying, we have to remove the old deployment:

helm uninstall -n ryaxns-monitoring loki
kubectl delete pvc -n ryaxns-monitoring storage-loki-0

The Worker is now handling deployment. So, to avoid dangling actions and failing deployment, you have to clean the Runner state.
Be aware that, this will reset the execution history and stop all running workflows.

ryax-adm clean runner worker

24.06.0

18 Jun 12:41

Choose a tag to compare

We are proud to announce the release of:

✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Ryax 24.06.0

✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Control and stability.

New features

  • Add a Kubernetes Addon to customize action deployment (label, nodeSelector, annotations, serviceAccount)

Bug fixes and Improvements

  • Fix impossible to add dynamic output enum Values
  • Fix addon default values from ryax_metadata.yaml no available in UI
  • Better error handling for action deployments
  • Fix hpc addon support of files in custom script
  • Fix python-cuda build fails in some case
  • Fix UID overlap when using NFS CSI Driver
  • Fix OutOfMemory during git scan lead to inconsistent state

Upgrade to this version

Usual process: update the version in the config file and apply!

24.01.0

12 Jan 11:37

Choose a tag to compare

We are proud to announce the release of

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Ryax 24.01.0

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

This release focus on Reliability and Security 💪

The changelog:

Bugfixes and Improvements

  • Fix connection issues on broker restart
  • migrate Helm chart repository to an OCI standard repository
  • Fix SSH Slurm execution issue with files
  • Do not use root user inside the action builder container

Upgrade to this version

If you have set the chartRegistry (you probably didn't) in your configuration values file please change the Chart repository URL to url: registry.ryax.org/release-charts.

24.02.0

09 Feb 10:12

Choose a tag to compare

We are proud to announce the release of

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Ryax 24.02.0

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

This release brings better HPC offloading support !

The changelog:

Bug Fixes and Improvements

  • Add HPC offloading capability to run custom script on nodes directly for
    parallel jobs
  • Better error handling in HPC offloading deployment and execution
  • Fix HPC Offloading log capture
  • Runs can now be canceled and deleted from the UI
  • Fix dynamic outputs edition and improve display
  • Fix action not undeployed in some corner case

Upgrade to this Version

HPC action have to be deleted and recreated to have the custom script
parameters available.

23.12.0

28 Dec 13:29

Choose a tag to compare

We are proud to announce the release of

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

Ryax 23.12.0

​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​ ​✨​

This release focus on Scaling and Performance 🚀

The changelog:

New features

  • Improve HPC offloading with optimized IO and image build
  • 1 to N scaling of actions with better Kubernetes autoscale support
  • Show a clear error message on Action failure due to resource limits
  • Optional IO for Actions

Bug fixes and Improvements

  • Improve database query performance and Runner responsiveness
  • Fix actions undeploying during Runner restarts
  • Fix monitoring configuration for KubeProxy
  • Fix workflow deletion failed in some conditions
  • Fix RabbitMQ failure to respond to liveness probe

Upgrade to this version

The RabbitMQ deployment needs to be replaced. To do so, uninstall it before the
update (communication between services will stop during update):

helm uninstall -n ryaxns rabbitmq

Then, proceed with the normal upgrade process.

To avoid errors on connections between service, restart them after the upgrade with:

kubectl delete pod -n ryaxns -l ryax.tech/resource-type=internal