Version 2.6.12 ============== New Features ------------ * Provided an implementation for `xdg-open` which communicates back to the workshop dashboard to request opening of a URL in the browser. Note that due to possible focus issues (or general browser restrictions), this is not always working the first time used, but if triggered a second time it then works. The issue is still being investigated. * Added data variables for use in the workshop definition called `$(workshop_environment_uid)` and `$(workshop_session_uid)`. These can be used in `environment.objects`, or `session.objects` and `request.objects` respectively, for setting up owner references in resources created, against the `WorkshopEnvironment` and `WorkshopSession` resources for a workshop. This is most useful when using `App` in `objects` in order to apply overlays to generated resources to set owner references so can then set `noopDelete: true` and still have resources cleaned up when cluster scoped resources are used. This works around problems when using `App` where the service account used for `App` can be deleted before `App` reconciliation gets to run, resulting in a stuck namespace and orphaned cluster scoped resources. Features Changed ---------------- * When using `educates serve-workshop` with a local Kubernetes cluster, it would set the proxy host to the equivalent of `localhost.$(ingress_domain)` to access the local Hugo server instance. This has been changed to use `loopback.default.svc.cluster.local`, which is an external name service which in turn maps to `localhost.$(ingress_domain)`. This is to enable ability to override the target for the service for a cluster when running Educates in Educates. Note that it was realised after release this should actually be `loopback.default.svc.$(cluster_domain)` in order to work where a Kubernetes cluster doesn't use `cluster.local`. A change to this will be made in a subsequent release. * Progress message logging was added to `educates` CLI commands such as `publish-workshop`, `deploy-workshop`, `browse-workshops` and `serve-workshop`, so you knew what was happening. Bugs Fixed ---------- * When using `educates serve-workshop --patch-workshop` the local settings directory for the CLI wasn't being created if it didn't already exist. * When the training image was added to the list of images to pre-pull to the cluster, the ability to disable the image pre-puller by setting the list of workshop images to pre-pull in the data values file to an empty list was lost. This ability to disable image pre-puller has been restored. * When the temporary directory for file uploads was changed to be in the same volume as the home directory, the `uploads` directory was used as the temporary directory. Problem was that the user could change what the uploads directory was and it actually defaults to the home directory. Because the image upload code always creating the temporary directory even when uploads was not enabled, you ended up with a `uploads` directory polluting the home directory. The temporary directory for uploads has now been changed to `$HOME/.local/share/uploads` so is out of view.