Skip to content

Galasa Releases

0.42.0 - Release Highlights

Changes affecting the Galasa Service

  • Cancel a run group using the Group ID. See the new command syntax

  • For developers of Galasa: Easier development of the Web user interface

    • A Personal Access Token can now be used to run a local instance of the web user interface, targetting an existing Galasa Service.
  • Added a configuration setting kubeLaunchIntervalMillisecs in the Galasa Helm chart to control the time between launching of successive test runs, to space out launches more evenly so that Kubernetes is not as stressed.

  • Various defects, fixes, version uplifts

Changes affecting tests running locally or on the Galasa Service

  • IMS-TM Manager - Improvements to how the manager handles active conversations (See issue #2250)

Other changes

  • Make contributing code easier:

    • Code for the Galasa documentation has moved git repositories, to the galasa repository. This simplifies the build process for the Galasa documentation and makes changes on a git fork easier to build and verify. It also facilitates closer integration between the javadoc, REST interface, CLI syntax and the rest of the material.
  • New look for the Galasa web site:

    • The look and feel of the Galasa website and documentation has been improved. The site now includes page-indexes on the right to navigate each page of the documentation. The site also supports light and dark mode for easy-reading. Command-line tool syntax is now more integrated with the documentation, and is searchable.

0.41.0 - Release Highlights

Changes affecting the Galasa Service

  • Streams Service:

    • Streams can now be created, updated and deleted using a new set of REST API endpoints.
    • Command-line tool list or delete report streams, or create and apply changes to stream resources using the galasactl apply -f command.
  • Resource Management:

    • Custom managers can have their cleanup code executed in a new "Resource Cleanup Monitor" construct, allowing for more cleanup of remote resources after test failures.
    • Cleanup monitors load resource management code from a given test stream.
    • New REST API commands allow manipulation and query of stream definitions.
    • Improved command-line can enable or disable monitors dynamically.
  • Tagging of test run results:

    • Test runs can be submitted with extra tags, which are combined with the annotation tags inside the test source code such that the test results are also tagged with the combined set of tags.
    • Extra tagging in test run details can help categorise failures and can contribute to better charting of results over time.
  • Kubernetes CPU and Memory resources:

    • For each pod, including pods that runs tests, can optionally specify resources constraints. Telling Kubernetes how much CPU and memory each pod needs helps Kubernetes spread workload among nodes in the cluster. The default install now specifies such limits.
  • Miscellaneous:

    • Tests which are re-queued or cancelled get marked as finished, rather than appearing to be active forever.
    • Querying runs with the --active flag no longer returns cancelled runs. Cancelled runs are marked as finished now.
    • Web user interface footer shows the version of the Galasa service, and a health indicator.
    • Test runner handles exceptions from rogue manager code better, so test cleanup can be performed.

Changes affecting local tests

  • Managers vetoing method execution changes:

    • Managers implementing anyReasonTestMethodShouldBeIgnored are no longer asked whether the test method should be ignored before running the @Before and @After methods. If the test method is ignored, then the @Before and @After methods are also ignored.
  • Tests can find out if the test has failed yet:

    • Test code can ask for a TestStatus provider to be injected into their object. This can be used to find out if the test has failed yet or not, and can be useful when doing complex cleanup of resources allocated during the test.
  • 3270 Manager can now process SSCP-LU-DATA:

    • Unformatted data screens are processed and the contents made available to test applications.
  • @ContinueOnTestFailure annotations:

    • These annotations are now respected by the Galasa framework.

Other changes

  • Make contributing code easier:

    • Code for the galasactl command-line tool has moved git repositories, to the galasa repository. This simplifies the build process and makes changes on a fork easier to build and verify.

0.40.0 - Release Highlights

  • Nameculture:

    • The term "Galasa Ecosystem" is being replaced with "Galasa Service" because it more clearly describes Galasa components that are deployed onto a Kubernetes cluster, providing testing as a service.
  • Galasa Service Changes:

    • A submission ID is generated for each test run submitted. A new field has been added to the test structures passed over the REST interface. Client programs can use the submission ID to query test runs from the Results Archive Store (RAS).

    • Each user now has a role, which dictates what that user can do. See the documentation on Role Based Access Control (RBAC) for more details.

    • The Helm chart can configure specific users to be owners of the system, such that these users are immutable administrators of the system. Configuring owners is used to set up a system with some initial administrators, and to recover a system that no longer has any functioning administrators.

    • Completed test pods now count when calculating the maximum number of pods that Galasa creates. Use the Helm chart parameter max_engines to configure the maximum number of pods.

    • When tests complete, the pod for the test disappears quicker than in previous releases, to free up resources on the cluster. Instead of up to 5 minutes, completed pods are cleaned up within 2-4 seconds.

    • It is now possible to configure the Galasa service to use an etcd server that is external to the Galasa namespace, for Dynamic Status Store traffic. This option is not recommended but may be useful for allowing testcase developers to use the same resource pools as the rest of the Galasa service.

  • Framework and Manager changes:

    • The addition of an IMS manager for contacting, controlling, and asserting against an IMS system.
  • The Web User interface changes:

    • Everyone logged-in to the Galasa service can see the list of users on the system, and their roles.

    • Administrators on the Galasa service can delete the tokens of other users, change their role, or delete their entire user record.

  • Command-line tool (galasactl) changes:

    • Users launching tests can use multiple override files with the --overridefile option. These files are combined into a single collection of properties, with warning messages generated in the logs if any property keys clash.
  • Development process, infrastructure, and contributing:

    • Improvements to the build process and instructions you use to fork the code, and build your own Galasa binaries in your own GitHub organisation.

    • Added experimental instructions describing how to install the Galasa Service into Minikube. Minikube can be used when developing contributions to Galasa, but is not suitable as a useable run time platform.

  • Various other component version upgrades and bug fixes.

0.39.0 - Release Highlights

  • Forks and fork builds are now supported making it easier to contribute to Galasa!

  • All Galasa components now use a common version number.

  • CPS property names can now include the '@' character.

  • The galasactl runs get command supports a new --group option to query test runs by the group ID they were launched with.

  • Gherkin now respects the framework.continue.on.test.failure flag so it doesn't need to exit a feature when the first scenario fails.

  • This release also includes instability fixes, and dependency updates.

0.38.0 - Release Highlights

  • CLI updates:

    • You can get, set and delete secrets from the credentials store using the galasactl secrets command. Secrets support base64 encoding to handle special characters.

    • Managing Ecosystem encryption keys describes how to use galasactl secrets get and galasactl resources apply to replace the encryption key being used to encrypt credentials in the Galasa Ecosystem's credentials store.

    • Users can now be deleted with the galasactl users delete command.

  • Web UI updates:

    • A new settings page has been added to the web UI to manage access tokens.

    • Recent login activity is now available on the profile page.

  • This release also includes bug fixes, security updates, and other dependency updates.

0.37.0 - Release Highlights

  • Galasa now supports Java 17.

  • You can delete a test run by using the galasactl runs delete command. Deleting a test run removes all information about the test run along with any associated artifacts from an ecosystem's RAS.

0.36.0 - Release Highlights

  • You can now create Galasa projects and build and compile Galasa test code using Gradle version 8. For more information, see the Upgrading tests to compile using Gradle version 8 section in the Upgrading documentation to understand the changes you need to make.

  • Log into the Galasa Ecosystem and revoke a personal access token by using the galasactl auth tokens delete command.

  • Set terminal size within Gherkin tests (previously only available in Java tests) and use Scenario Outlines.

  • Various updates to the Galasa Web UI

  • Various defect fixes

  • Various documentation updates