Version 2


Keeping it short and sweet for a bug release!

SOFTWARE RELEASE

Please log in to Keel and approve the latest deployment. Please approve the “…/management-portal.:2.15.200” image first and wait a minute or two before approving the rest – see below:

BUG:

A client (thank you!) identified an issue where the very last row of a file download was incomplete. We’ve rectified that issue in this release.

  • Downloads will now be ZIP files.
  • Users will now see a ‘thumbs up’ notification when the download has completed.

As always, thanks to our clients for their contributions!


Welcome to our first release of 2024 – a release that sees a major upgrade to Microsoft .Net 8 (performance, bug ,and security improvements), solution performance, and remediation of bugs.

Please find here the latest third-party scan results associated with this release.

ENGINEERING RELEASE

  • Confirming that the solution works on Kubernetes 1.28.3.
  • The solution now runs on Microsoft .Net 8 (an upgrade from .Net 7); The new version of .Net is more optimised and will help improve our engineering capabilities and improve performance of the solution.
  • Development time has been spent on dashboard refinements and improvements due to refactoring (where the developers restructure the code to make it more optimal, without impacting the functionality).

SOFTWARE RELEASE

Please log in to Keel and approve the latest deployment. Please approve the “…/management-portal.:2.15.196” image first and wait a minute or two before approving the rest – see below:


ID TITLE COMMENTS
570 Map missing travellers Abridged Dashboard wasn’t displaying travellers.
902 Abridged Print Tables were blank when printing the Abridged Dashboard.
903 Font Size / Rendering Larger numbers weren’t fitting in to the cards on the Abridged Dashboard.
904 Font Size Graph When showing 000k numbers on the Abridged dashboard, the Y axis values didn’t render properly.
912 Vendor Code in Supplier Table Rail VendorCode (rather than VendorName) was being displayed in the Supplier table in the abridged dashboard.
915 Hierarchy # bookings disappears when selecting a supplier in the connected tables. When selecting a supplier on the Abridged dashboard, the hierarchy tables mis-reported.
916 Months missing from graphs When there is no data for a given month, the month was removed from graphs.
922 Lowest Fare Incorrect The lowest fare rail KPI donut was calculating incorrectly.

As always, thanks to our clients for their contributions!


We’re continually ensuring that our solution works on the latest version of Kubernetes.

ENGINEERING RELEASE

We have completed the testing of Kubernetes 1.28.3 within our environments and can confirm that clients can upgrade.

Please engage with your appropriate teams to upgrade your existing version to 1.28.3.

Additionally, please ask that following completion of the upgrade, that all Client PODs are restarted – this enables them to reconnect to the Management Portal.

If you have any questions, please get in touch in the usual manner.


Our security monitoring has identified the requirement to patch some of our Microsoft components. Please refer to Microsoft Security Advisory CVE-2023-36558 for detailed information.


SECURITY RELEASE

Please log in to Keel and approve the latest deployment. Please approve the “…/management-portal:2.14.76” image, wait two minutes, and then approve the upgrade to your remaining resources.
If you have any questions, please get in touch in the usual manner.

Please refer to the release instructions below, showing the changes required within Azure Kubernetes. You will need to align with IT to get the full benefits of this deployment.


Release instructions Link


When IT have done their thing, you can upgrade normally, approve the Management Portal, wait for 2 minutes, and then approve everything else.

ENGINEERING RELEASE

  • PBI 868: Significant improvement in the underlying security of the containers. Working with an existing client (thank you, you know who you are!) and using Windows Defender for Cloud, we established that baseline container images/functions weren’t running their latest versions. This release has addressed most, and we continue to work on the outstanding ones.
  • Following recommendations from Microsoft, within the Azure Kubernetes Environment, we have set “Automatic Upgrade” (within the “upgrade Kubernetes version”) to “Enabled with node image”. We haven’t seen any issues within our environments and propose that clients hosting on AKS can set the same - do your own research in advance!
  • We’re currently running Kubernetes 1.26.3 in Production, but 1.27.3 is in our testing environments – we’ll confirm when we’re happy for a production release to the latest version.
  • PBI 869: We’ve upgraded OpenSearch to version 1.3.12 in this release. We are working on the upgrade to version 2.x. Please refer to the supplemental document for information on upgrading to 1.3.12.

MAINTENANCE RELEASE

MANAGEMENT PORTAL

PBI 782: Additional Management Portal Roles have been introduced in this sprint:

  • Support: Users assigned with this role have read-only access to clients and users.
  • UserAdmin: Users with UserAdmin permissions can view clients, add users to clients and create new users, but are unable to perform client configuration tasks.
  • ClientAdmin: These users can modify client and user settings.

Data Downloads:
  • BUG 807: When downloading, the data ranges were in the US format – we’ve addressed for our UK clients who will have UK dates in their downloads.
  • BUG 808: There was an issue where AdvancedBooking and AdvancedPurchase columns in the download weren’t being calculated consistently.
  • PBI 866: We’ve removed extra columns from the data download.
  • BUG 806: We’ve fixed an issue where users were unable to download data based on certain date ranges.
MapS
  • We have added Arrival and Departure toggles on the maps to enable users to switch between views.
  • BUG 848: Following feedback from clients we’ve updated our geo enrichment services to display more accurate cities on the maps.
  • BUG 849: When clicking on a dot, the corresponding tables in Rail and Hotel weren’t updating. That has now been fixed.
Dashboards
    NEW MEETINGS
  • BUG 875/6: The 'Total Spend by Supplier Category' stacked bar graphs displayed additional unlabelled stacks that we’ve removed.

  • EXEC SUMMARY
  • BUG 880: The carbon graph wasn’t display the prior year when selected – this has been rectified.
  • BUG 839: When drilling down on tables within the Behaviours section, there was no way to revert up a level – we’ve introduced a reset button to improve this.
  • BUG 852: When hovering over the rail behaviours, incorrect donuts and values were returned – the hover-overs now reflect the rail dashboard / data.
  • BUG 879: The YTD Spend Graph wasn’t displaying the forecast correctly when selected in certain combinations.

  • ABRIDGED SUMMARY
  • BUG 841: The tables directly below the map weren’t all linked – clicking a row on one table didn’t link through to the another.
  • BUG 840: The hierarchy table wasn’t using the same counting algorithms as the other dashboards – all have been aligned.

  • HOTEL
  • BUG 831: The preferred and non-preferred buttons weren’t working as expected – that’s now been fixed.

  • AIR
  • BUG 882: We’ve resolved an issue with a flat spend line on the Ticketing graphs when drilling down to airline.

A quick upgrade to improve the Meetings dashboard.

ENGINEERING RELEASE

We can confirm that clients can now upgrade to Kubernetes 1.26.3. We’ve tested internally and deployed to production successfully.

SOFTWARE RELEASE

Please log in to Keel and approve the latest deployment.
Please approve the “…/management-portal” image and wait a minute or two before approving the rest.

Features

• In the meeting dashboard we introduced a new Toggle on the tables so that clients can switch between Transaction view and Event view.

As always, many thanks to our clients for the continued feedback!



As we aim to keep the solution simple to manager, we’ve introduced a mechanism that enables multiple SSO providers within a single solution.

SOFTWARE RELEASE

Please log in to Keel and approve the latest deployment.
Please approve the “…/management-portal” image and wait a minute or two before approving the rest.

Features

• By adding in a specific JSON file into a client share, you can determine that client’s SSO provider. The new file overrides the global SSO provider settings and brings added flexibility. Please get in touch with the team to find out more.


We’re continually looking to improve our Meetings dashboard and this release includes an improvement to the drill down section.

SOFTWARE RELEASE

Please log in to Keel and approve the latest deployment.
Please approve the “…/management-portal” image and wait a minute or two before approving the rest.

Features

• When hovering over the bar graphs within “Drill Down” the values are now displayed in a user friendly format.


An exciting and significant release waiting for clients to deploy – a release we really like, and hopefully, you will too.

ENGINEERING RELEASE

We have tested Kubernetes version 1.24.6 and can confirm everything continues to work – let your IT guys know that they can upgrade to this version.

SOFTWARE RELEASE

Please log in to Keel and approve the latest deployment.
Please approve the “…/management-portal:2.12.33” image and wait a minute or two before approving the rest.

Features

  • The developers have added more sorcery to our drill-down tables – they’re now more interactive with slick filtering and the added ability to drill down more effectively into hierarchy levels.
  • A new ‘Tour’ feature has been added too – this enables users of the dashboards to take ‘an interactive tour’. Simple, neat, and effective.
  • We’ve introduced the mechanism to display bill back bookings in the Hotel dashboard. Go to the widget and start typing “Bill back” select to see all Bill back transactions.

Bugs
  • In the Summary dashboard, we’ve split out “Rail” in the Suppliers table, so now users can see the individual rail suppliers.
  • Several graph axis labels have been re-formatted so they make a little more sense on different screen sizes and browser resolutions.
  • We’ve fixed an issue with the Data Download and “Return Date” which was displaying a default, incorrect date.

A huge thank you to our clients for their great feedback – we’re always looking to make the tool the best it can be and couldn’t do it without input. Thank you.



A small - but great – deployment here! The dashboards can load data as frequently as you want anyway, but we’ve enhanced the Management Portal so that the reporting period reflects daily data – if you want it to.

SOFTWARE RELEASE

Please log in to Keel and approve the latest deployment – 2.11.19.

Features

  • Log in to the Management Portal and Edit a client – you’ll see the option to enable “Current Day” reporting. Click that, log in to your client and you’ll see reporting up to the current day..

Bugs
  • With bug 781, we’ve moved some inconsistencies with the traveller counts – everything is now counted using TravellerId, and not a blend of unique TravellerName and TravellerId.
  • There was a minor issue with card rendering on the Executive Summary – Hotel spend wasn’t being rounded, so there were occasions when it knocked the rest of the cards out of alignment because of too many digits.

The developers are on fire! We have a release that’s improved the look and feel of the dashboards, as well as applying some fixes.

SOFTWARE RELEASE

Please log in to Keel and approve the latest deployment.

Features

  • The dashboards have a new look and feel – they look great on different devices.

Bugs
  • We’ve introduced a mechanism for managing mixed case web tokens when authenticating.
  • The Management Portal had a bug when applying data filters in the hierarchy – we’ve simplified the process and removed the bug.
  • There was an issue on the Ticketing table in the Air dashboard – when drilling down spend and average ticket price went missing.
  • The Meetings dashboard has had a bit of an overhaul – looks better, hierarchy drill down is now working, and a bug on the bar chart visuals has been resolved.

SOFTWARE RELEASE

A quick and low-risk upgrade that can be completed via Keel.

Thank you to the client who raised the concern relating to the vulnerable JS library – we were aware of it and indeed had it marked as a ‘Medium’. However, a third-party scanning company positioned the issue to a ‘High’, so we’ve addressed it. Clients will receive the ZAP results in their release notes.

Bugs

  • Removal of “Vulnerable JS Library” vulnerability.
  • We had an issue with the Summary Cards where the “Month” and “Year” were displayed incorrectly – we’ve rectified that!
  • We’ve added in more information into the behaviours tool tips to explain how the LM and LY comparisons are calculated.
  • In Meetings, we’ve re-organised the dashboard so the user experience is improved – it didn’t quite work before, but we think it works better now.

We are working on some big projects this summer, this release is preparing for a larger upcoming release:

ENGINEERING

We’ve been testing Kubernetes 1.24.3 and can confirm we’ve encountered no issues – our production environment is running 1.24.3.

Additionally, it’s recommended (bug fixes, stability, and new features) that all clients upgrade to version 1.3.0 of the Nginx controller within their environments. The Nginx controller is the service that is responsible for routing external traffic correctly.

Azure clients please refer to the points below – all other clients please log a ticket if you need assistance for your platforms.

  1. Go to Azure and click to go to your AKS Cluster
  2. Click on Workloads and then select the “Deployments” tab
  3. Click on the deployment external-access-ingress-nginx-controller-unlockeddata”
  4. Click YAML on the left-hand menu
  5. Scroll through the YAML until you reach the image tag, as per below (the line should be on, or around, 223)
  6. Replace all the text starting “k8s.gcr.io…” (in example above, line 224) and replace with the following text: registry.k8s.io/ingress-nginx/controller:v1.3.0@sha256:d1707ca76d3b044ab8a28277a2466a02100ee9f58a86af1535a3edf9323ea1b5
  7. Click “Review and Save”
  8. Tick to “Confirm manifest changes” and click “Save”
  9. This will automatically upgrade the Nginx controller (the virtual appliance that controls access to the solution) to the latest version (v1.3.0).

SOFTWARE RELEASE

The software upgrade can be completed via Keel, and you’ll be good to go with the changes within a couple minutes!

Features

  • It’s now possible to configure a default reporting year for reporting. We’re aware that clients report on calendar years, April-to-March (and others), so we’ve added a feature in the Management Portal that enables bespoke configuration.
  • We’ve introduced a toggle on the widget that enables our clients to view travel spend inclusive or exclusive of tax. Include tax in the data, and the solutions will now take that into account!
    • Data model version 1.6 will be distributed to enable tax to be included.

Features
  • We had a bug with calculations on the Average Room Rate graph in the hotel dashboard – that’s been rectified.
  • In the Management Portal we found a bug when there we no clients configured which we’ve fixed.
  • We’ve updated missing images and text on the Meetings dashboard, and we changed the wording on the summary cards from “events” to “meetings”.

What’s New

A couple of minor improvements in release 2.7.34.

Bugs

  • We had some missing images in the Meetings dashboards, so Bug 712 was created to fill the gaps.
  • The Management portal client list didn’t work when there were no clients (a problem we hope nobody should be seeing!), so we rectified in Bug 742.

What’s New

Welcome to release 2.7.31! This release includes some good new enhancements and useful bug fixes. The upgrade is available via Keel and can be applied in alignment with your change control processes and procedures.

Features

  • Demand was high for us to introduce a mechanism for manually enabling and disabling the different dashboards, so we introduced it with the completion of PBI 706. Within the Management Portal, authorised users can select which dashboards are enabled / disabled.
    • Please note that Client-Side clients will need to log out and re-login to see the changes to dashboard availability.
  • We have enabled access to the solution’s built in User API for third party user synchronisation – instructions available upon request. Get in touch if you want to know more!
Bugs

  • We were made aware of an issue with the EnrichmentAPI where the Container was consuming too much memory. Thank you to the client who worked with us on resolving. A memory leak was identified and remediated in Bug 740.
  • In the Meetings dashboard the Behaviours tab was labelled BookerName but the data was for TravellerName. Bug 713 saw the BookerName field utilised.
  • In a previous release we introduced a “Show details on hover” toggle within the Executive Summary to enable dashboard users to get quick insights into the Behaviours of travel. However, we put the same toggle on all other dashboards too – Bug 711 saw us rectify.
  • Bug 726 addressed an issue with colours on the three summary cards in the Abridged dashboard – the colours weren’t changing on the Spend card.
  • An unpleasant error message was displayed when a user was authenticated by the third-party provider, but the user wasn’t set up in the Management Portal. This issue has been resolved in Bug 641.

What’s New

Engineering Release

We like to stay on top of new infrastructure releases and solution components. Two updates included:

Firstly, we’ve successfully tested Kubernetes 1.23.5 and we haven’t seen any issues; we successfully completed testing across multiple environments and we’re running 1.23.5 in our Production environment. We suggest that our clients look at upgrading their Kubernetes environments too.

Secondly, we’ve successfully tested version 1.2.0 of the Nginx Ingress. This version is live across all Unlocked Data environments, and we can confirm that we’ve encountered no issues. Azure clients please refer to the points below – all other clients please log a ticket if you need assistance for your platforms.

1. Go to Azure and click to go to your AKS Cluster
2. Click on Workloads and then select the “Deployments” tab
3. Click on the deployment “external-access-ingress-nginx-controller-unlockeddata”
4. Click YAML on the left-hand menu
5. Scroll through the YAML until you reach the image tag, as per below (the line should be on, or around, 223)
6. Replace all the text starting “k8s.gcr.io…” (as image below) and replace with the following text:
k8s.gcr.io/ingress-nginx/controller:v1.2.0@sha256:d8196e3bc1e72547c5dec66d6556c0ff92a23f6d0919b206be170bc90d5f9185

The code should look like this:


7. Click “Review and Save”
8. Tick to “Confirm manifest changes” and click “Save”
9. This will automatically upgrade the Nginx controller (the virtual appliance that controls access to the solution) to the latest version (v1.1.1).


What’s New

Thank you to the client who identified and reported a new bug to the team. We created Bug 707 to remediate.

Software Release
• This is an upgrade that can be completed via Keel – click to approve the upgrade to image 2.6.33.

• When attempting to access – using the client-side configuration only – Air and Rail dashboards some of the spend cards were missing. The issue was down to a problem with the way the currency service was executed; an issue that has now been resolved.

What’s New

Welcome to version 2.6.32. This is an upgrade that can be completed via Keel. The latest images will be waiting to be approved.

Engineering Release
• In PBI 703 we introduced a more scalable solution for those clients using Microsoft Azure. You won’t notice anything, but we’ve removed any potential limitation on the number of clients that can be implemented.

Software Release
Features
  • We’ve introduced a new hover-over feature in the Executive Summary (PBI 666) - following feedback from clients we’ve introduced hover-overs of the behaviour cards in the Executive Summary – for example, if Air is 50% compliant, you can hover over the card to see why it’s 50% - removes the initial need to navigate to the Air dashboard for the information. You need to be in “behaviours” and look out for the “show details on hover” switch.
  • In the Executive Summary, the monthly spend visualisation is currently based on calendar year, so we’ve introduced a switch that enables users to move to a ‘rolling 12 months’ view, in PBI 681.

Bugs
  • We had a user-experience fault with regards to downloading filtered data – bug 650 resolves that. If no filters are in place, the option for filtered download isn’t available.
  • Bug 705 resolved an issue with Meetings dashboards rendering poorly because of issues with the X-axis. We’ve tilted the numbers so the graph now makes more sense!
  • In the Summary dashboard, the monthly spend X-axis labels were incorrect so we’ve fixed it in bug 696.


What’s New

Engineering Release

We’ve been testing Kubernetes 1.22.6 and can confirm we’ve encountered no issues – our production environment is running 1.22.6 and we can confirm our clients can do the same.


Additionally, it recommended (bug fixes, stability, and new features) that all clients upgrade to version 1.1.2 of the Nginx controller within their environments. The Nginx controller is the service that is responsible for routing external traffic correctly.


Azure clients please refer to the points below – all other clients please log a ticket if you need assistance for your platforms.

  1. Go to Azure and click to go to your AKS Cluster
  2. Click on Workloads and then select the “Deployments” tab
  3. Click on the deployment “external-access-ingress-nginx-controller-unlockeddata”
  4. Click YAML on the left-hand menu
  5. Scroll through the YAML until you reach the image tag, as per below (the line should be on, or around, 223)
  6. Replace all the text starting “k8s.gcr.io…” (in example above, line 224) and replace with the following text: k8s.gcr.io/ingress-nginx/controller:v1.1.2@sha256:28b11ce69e57843de44e3db6413e98d09de0f6688e33d4bd384002a44f78405c
  7. Click “Review and Save”
  8. Tick to “Confirm manifest changes” and click “Save”
  9. This will automatically upgrade the Nginx controller (the virtual appliance that controls access to the solution) to the latest version (v1.1.1).

Software Release

This upgrade can be completed via Keel. Please get in touch if you have any questions


Features
  • In PBIs, 690, 701, 693, 692 and 691 we modified the logic with the Meetings summary cards – only data where the event and supplier status’ are “confirmed” or “cancelled” will the data being calculated.
  • We modified the logic relating to preferred locations (PBI 686) in Meetings too – a preferred location is now a preferred property in a preferred location.
  • A topic of heated debate within the Unlocked Data ranks! We’ve modified the variation percentages in the summary cards; for the avoidance of doubt, this is the calculation: ((<current reporting period> - <previous year reporting period>)/<previous year reporting period>) * 100.
  • A really good update to the Meetings dashboard Top Spend visualisation – we’ve given it an overhaul and it’s now so much more informative! PBI 601 completed!
  • We’ve replaced the Lead Time donut in Meetings with Cancellations – PBI 600 created to bring more insights to the dashboard.
  • We’ve updated the SupplierStatus data model to include more items in 701 – the data definitions will be updated accordingly. We’ll send the latest specifications out.

Bugs
  • In the Meetings dashboard, the dashboard didn’t deal with missing data properly and the dashboard would fail – if there was no hierarchy data and clients switched to the league table view, there was an ugly error – all sorted in Bug 704.
  • We introduced a bug in the Management Portal where the client configuration wasn’t being displayed accurately – that was fixed in Big 702.
  • As a part of our annual third-party scan, we had an issue with outdated JS libraries that was addressed in Bug 699.
  • Bug 697 solved an ugly problem with the summary cards in the abridged dashboard – filtering in the widget broke the joins between the data and visualisations.
  • We had an issue with client-side spend reporting within the Meetings dashboard that we resolved in 695.
  • The YTD visualisation didn’t include the previous year for comparison – bug 680 solves the problem.
  • We had an issue where the hierarchy wasn’t linked to sustainability reporting, but that’s been solved as a part of 676.
  • Bug 652 solved an issue with the behaviour donuts – where there was no data, the donuts wouldn’t populate. 652 sorts this problem out.
  • On the Meetings dashboard, we broke the Bookings Trends and Prices user experience – it didn’t work well, so we’ve updated that in Bug 555.
  • Testing picked up an issue with geo-coding in the Executive Summary – we solved that in 684.


What’s New

Engineering Release

There are two keys that need to be added to the config map – it is aprocess that will take around 5 minutes. We’ll be contacting clients and providing instructions on how to introduce client-specific-keys that enable the new currency service.


Software Release

This upgrade can be completed via Keel. As there are multiple images in this release select all images and approve. The upgrade process is smart enough to ensure that your solution is running the very latest image, so click to approve all images. The Keel dashboard, Pending card, will confirm when all images have been applied.


Highlights
  • We’ve introduced a currency service that will consolidate spend into client defined currencies. For our clients where data is consolidated globally this feature enables configuration at a client level and more accurate financial reporting – related to PBIs 603 (engineering) and 644 (user experience)
  • We’ve created a Print Dashboard feature – with a minimal number of clicks from the Abridged dashboard you get a preformatted dashboard deck that be converted to PDF (or printed) for distribution or Exec reporting

Features
  • In PBI 689, we added PolicyApprover and TripApprover to the widget for additional filtering.
  • Similarly, PBI 657 added in POSCountryCode as a filter item in the widget.
  • We’ve removed the sustainability card from Meetings – there was broad consensus from our clients that data wasn’t available to support carbon reporting for meetings and events. In PBI 658, we removed it.
  • We’re not actually receiving any Car data from our clients at this time and the Car card is complicating matters – so we’ve decided to remove the Car card from our reporting for the time being. It can be re-introduced any time (PBI 664)
  • The Abridged dashboard has additional navigation between cards – the arrows were the only way to navigate between dashboards. In PBI 664 we’ve introduced better navigation by clicking on the cards themselves to get to the relevant dashboard.
  • The well-being calculations were complicated, so we created PBI 564 to simplify – and we think its much improved.
  • PBIs 562 and 613 are refinements to the Savings dashboards. Improved visualisations, more answers to questions, improved navigation – we’re looking forward to feedback on this. A good addition to the dashboards, made better.

Bugs
  • Bug 687 resolved an issue with geo-coding on the Executive Summary map – dots may have appeared in odd places on the map – a problem that will only occur now, if the correct latitude and longitude have been used.
  • We created Bug 688 during this release! Testing identified an issue within the Management Portal when new clients were created.
  • We had an issue where Meetings data was being multiplied incorrectly. Bug 659 resolves this issue.
  • The Top Level hierarchy in Hotels looks a little bit rubbish due to an alignment problem – that issue has been resolved in Big 656
  • The minimum spend slider on the Executive Summary (used when digging into behaviours) was calculating numbers ‘on the fly’ and frankly, it looked and performed badly. Bug 605, sorted this out.

ID Title Type Tags Comment
689 Add PolicyApprover & TripApprover Product Backlog Item Widget (ALL) Add PolicyApprover and TripApprover for widget filtering
688 Client config after Keel upgrade Bug Engineering Testing of latest release identified an issue with client set up in the Management Portal – portal defaulted to ‘client-side’ config incorrectly.
687 Geocoding on Map Bug Exec Summary Testing of latest release identified a geo-coding issue on the Executive Summary.
679 Upgrade Nginx Product Backlog Item Engineering The NGINX controllers were tested and upgraded as an enabler to upgrade to Kubernetes 1.22.4.
659 Meetings card x 4 calculation Bug Exec Summary; Meetings Dashboard We had a bug where Meetings calculations where incorrectly being multiplied by four.
658 Remove sustainability card Product Backlog Item Meetings Dashboard Clients stated that sustainability data in meetings could be erroneous – so we’ve removed the card for the time-being.
657 PosCountryCode Filter Product Backlog Item Exec Summary; Widget The introduction of filtering by POSCountryCode in the widget.
667 Remove car Product Backlog Item Car Dashboard We’ve temporarily removed the Car cards from the solution as clients aren’t using that feature at this time. Will be re-introduced in the future.
656 top level hierarchy table Bug Hotel Dashboard The top level hierarchy table on the Hotel dashboard wasn’t aligned to the other tables – that’s been fixed.
664 Click cards to navigate between dashboards Product Backlog Item Abridged Dashboard The Abridged Summary dashboard navigation between cards has been improved – no need to click the arrows, just click the cards!
564 Wellbeing calculations Product Backlog Item Exec Summary Well-being calculations were ambiguous, so we’ve attempted to simplify – we’re looking forward to feedback.
644 Reporting different currencies Product Backlog Item Currencies; Dashboards; Engineering A big deal! Our improved currency reporting service – select between multiple reporting currencies.
238 2021.04 - Print Dashboards (Presentation) / PDF Booklet Product Backlog Item Dashboards The other big deal – from the Abridged Summary, click to print the dashboard to see a ready-to-go PDF / Print presentation.
662 Update Static Umbrella image to 2.3.33 Product Backlog Item Engineering Some necessary internal stuff that’s actually pretty boring.
562 Savings Dashboard Product Backlog Item Savings Dashboard We’ve refined the savings dashboard so that it’s more intuitive and provides better insights.
613 Savings overview - drill down Product Backlog Item Savings Dashboard As above.
603 Currency Service Product Backlog Item Currencies; Engineering This is the engineering side of the currency work – we had to put a lot of work in behind the scenes.
605 Minimum spend slider Bug Exec Summary The minimum slide spender on the Executive Summary was calculating ‘on-the-fly’ and looked rubbish. We’ve fixed that.

What’s New

Engineering Release

It is recommended (bug fixes, stability, and new features) that all clients upgrade to the latest release of the Nginx controller within their environments.

The Nginx controller is the service that is responsible for routing external traffic correctly.


Please note that this upgrade is a pre-requisite to upgrading to Kubernetes 1.22.4

Azure clients please refer to the points below – all other clients please log a ticket if you need assistance for your platforms.

  1. Go to Azure and click to go to your AKS Cluster
  2. Click on Workloads and then select the “Deployments” tab
  3. Click on the deployment “external-access-ingress-nginx-controller-unlockeddata”
  4. Click YAML on the left-hand menu
  5. Scroll through the YAML until you reach the image tag, as per below (the line should be on, or around, 223)
  6. Replace all the text starting “k8s.gcr.io…” (in example above, line 224) and replace with the following text:
    k8s.gcr.io/ingress-nginx/controller:v1.1.1@sha256:0bc88eb15f9e7f84e8e56c14fa5735aaa488b840983f87bd79b1054190e660de
  7. Click “Review and Save”
  8. Tick to “Confirm manifest changes” and click “Save”
  9. This will automatically upgrade the Nginx controller (the virtual appliance that controls access to the solution) to the latest version (v1.1.1).

What’s New

Software Release

In response to the bug notification on Monday 17th January (related to Executive Summary dashboard) wee have resolved the issue and version 2.3.34 is now available in Keel. As always, the process ensures that your solution is running the very latest image, so click to approve all images. The process should take less than two minutes.


Bugs:
  • We picked up on an issue in the Executive Summary where the “Cumulative Travellers” and “Travellers By Month” visualisations were incorrectly showing no travellers.

What’s New

Software Release

Please got in to Keel and upgrade images to version 2.3.33. As always, the process ensures that your solution is running the very latest image, so click to approve all images. The process should take less than two minutes.


Features:
  • Exciting change! We’ve introduced a new function that enables filters to be applied across the dashboards. Any filters applied (date range, traveller, cost centre, and so on) will remain in place across all dashboards.

  • We’ve made some big changes to the Meetings data model so the dashboards can visualise even more interesting data to provide improved insights. We’ll be distributing the changes so you can see the details.

In response to CVE-2021-45105 [ncsc link], we recommend upgrading to OpenSeach 1.2.3 which upgrades Log4j to 2.17.0. While there has been no observed reproduction of the issue described in CVE-2021-45105 in OpenSearch, version 1.2.3 does remove the risk.

Unlocked Data has successfully upgraded and tested multiple environments – previous data, indexes and saved searches all remain.

One update in Keel as OpenSearch moves from 1.2.1 to 1.2.3.

More information available - here.

Please proceed with the upgrade in alignment with your change control procedures and let us know if you have any questions or problems.


In response to CVE-2021-44228 www.ncsc.gov.uk/news/apache-log4j-vulnerability, clients will have two upgrades awaiting approval in Keel (as per PBI 653).

Unlocked Data has successfully upgraded and tested multiple environments – previous data, indexes and saved searches all remain.

Two updates – the dashboards move to 1.2.0 (from 1.0.0) and OpenSearch moves to 1.2.1 (from 1.0.0).

More information available here - https://opensearch.org/blog/releases/2021/12/update-to-1-2-1/.

Please proceed with the upgrade in alignment with your change control procedures and let us know if you have any questions or problems.


What’s New

Software Release

This upgrade can be completed via Keel. As there are multiple images in this release (details below), select all images and Approve. The upgrade process is smart enough to ensure that your solution is running the very latest image, so click to approve all images.


Features:
  • • As we work with different online authentication providers we found a need to introduce more granular logging to help diagnose issues. PBI 646 sees a flag introduced that enables more granular logging when troubleshooting log in issues (image 2.2.16 in Keel, if you’re interested!):
    • Moving the namespace key from values.yaml to client-bespoke-values.yaml – we see this as a cleaner way to enable our clients to host multiple namespaces – and therefore solutions - on a single Kubernetes cluster.
      • Logging can be enabled, but should be enabled when troubleshooting is complete – A LOT of data gets captured!
    • We needed to introduce a new data field for authentication for Ping. PBI 647 introduces as an additional field that enables Ping authentication. (image 2.2.17)

Bugs
  • We found an issue where new clients created in the Management Porta weren’t always downloading the latest solution image. Bug 642 resolves this problem (image 2.2.12).
  • Keel image 2.2.13 resolves an issue associated with 642 above.

What’s New

Engineering Release

Helm Chart Upgrade


  • There are minor changes in the 2.1.30 Helm chart, including:
    • Moving the namespace key from values.yaml to client-bespoke-values.yaml – we see this as a cleaner way to enable our clients to host multiple namespaces – and therefore solutions - on a single Kubernetes cluster.
      • For example, UAT and Production could reside on the same cluster.
    • We’ve made changes to client-bespoke-values.yaml (“bespoke config 7”) that enable us to be smarter with client and server-side client implementations.
    • The deployment – nginx controller.yaml file has changes that reflect the changes made above for client and server-side implementations.
    • The configmap.yaml file has changes that support client and server-side implementations.>

This release will require a Helm upgrade:

  • Please back up Helm chart 2.0.28 as it will contain content specific to you.
  • Download and export Helm chart 2.1.30 to a neew folder
  • Update the values in the “client-bespoke-values.yaml” file – you can use the backup from your 2.0.28 deployment as reference.
    • Bespoke Config 2 will need to be updated to reflect your IDP provider details.
    • If you assign static IP addresses to any services, you will need to update Bespoke Config 3.
    • You may assign DNS names via Bespoke Config 4 – ensure these are updated in the new file.
    • Modification to Bespoke Config 7 – you will need to enter relevant domain information here.
  • Perform the Helm upgrade using “Helm upgrade…” command
    • Please note, by adding --set abridgedAvailable=”true” will install the abridged client dashboards.
      • or Example: helm upgrade -f client-bespoke-values.yaml unlock8s . --set abridgedAvailable="true"

We think that the changes are self-explanatory, but please get in touch prior to the upgrade if you have any questions. We will support before, during and after the implementation.

Software Release

Software will be automatically deployed in Engineering step above. No Keel upgrade needed

Features:

  • We’ve introduced an easy-to-use method of migrating clients from client-side to server-side (and back, if wanted!) via the Management Portal. It’s really quick and very easy thanks to PBI 604.
  • To enable greater flexibility for our clients we’ve increased the number of hierarchy fields from 5 to 10. PBI 630 now enables our clients to apply more granular data filters.
  • Not the biggest news in this release – we’ve added a specific icon for the Savings dashboard in PBI 607
  • We’ve added the ability to filter by point-of-sale country code in PBI 612 – enables dashboard users to see performance by country. A nice addition.

Bugs:

  • Line graphs in the Meetings dashboards weren’t displaying values correctly – a lot of congestion. In Bug 577 we rotated the values on the X axis so that they were clearer.
  • In the drill-down section of the Air dashboard we hadn’t linked the four tables. Bug 585 now enables full interaction so when selecting a row of data in one table, the other three tables change context.
  • We’ve renamed the data filter button from “Cancel” to “Close” in Bug 622.
  • The data filter was case-sensitive which gave false results. In Bug 623 we removed that case-sensitivity so that the data filter is less sensitive.
  • With the data filter, there’s the potential to stop a user seeing any data. The dashboards error in this instance, so what we’ve done in Bug 624 is simply display an error message and dashboards with no data.
  • We noticed that the data import process had case-sensitivity associated with the ClientID field. Bug 629 solves that problem.
  • We had some behind the scenes work to do because of an error when migrating from server-side to client-side. Bug 631 removed the value that caused the error.
  • There was an error when attempting to assign data filters to users who were not assigned clients. Now, if a user is not assigned to a client, the option to apply a data filter isn’t available thanks to bug 632.
  • When interacting with the data filter (hierarchy management) but ultimately not making any changes the data filter would error – we’ve fixed that in bug 633.

What’s New

Engineering Release

Helm Chart Upgrade


  • This upgrade sees the introduction of Server-side processing for ‘mega-clients’ where client-side processing performance was too slow. A direct result of this change (PBI 563) is significant performance increases.
    • Please note – the migration of a client is a manual process at this time. We will provide instructions and ‘hand-holding’ for those clients that need to move to server-side. Not to worry – we do have a PBI in the backlog that will automate the process.
  • Following on from the licensing introduced by Elastic, we are migrating monitoring and alerting to OpenSearch – the open-source community’s derivative of Elasticsearch and Kibana.
    • This deployment will ‘trash-and-burn’ the existing Elasticsearch Kibana instance. All log data will be lost and Index’s will need to be recreated.
    • The deployment also see us migrate to Azure persistence storage (rather than file share) in order to reduce Shard failures previously observed.
    • Additionally, OpenSearch enables alerting and triggers that will enable proactive notifications.
  • We’ve tidied up the Helm chart too – removed a now redundant deployment that created a client that was never pertinent.

This release will require a Helm upgrade:

  • Please back up Helm chart 1.2.3 as it will contain content specific to you.
  • Download and export Helm chart 2.0.21.M
  • Copy the “client-bespoke-values.yaml” file from your 1.2.3 deployment to the 2.0.21 templates folder.
    • This ensures that your specific configuration is deployed when you upgrade.
  • Copy the “deployment – nginx controller.yaml” file from your 1.2.3 backup and paste in to the 2.0.21 templates folder.
    • This ensures that your specific TLS settings and ingress rules are included in the upgrade.
  • Perform the Helm upgrade using “Helm upgrade…” command
    • Please note, by adding --set abridgedAvailable=”true” will install the abridged client dashboards.
      • For Example: helm upgrade -f client-bespoke-values.yaml unlock8s . --set abridgedAvailable="true"
Software Release

Features:

  • We’re delighted to announce the introduction of our dashboard authorisation (client hierarchy) via the Management Portal. Using the Management Portal, it’s now possible to set up filtering rules that control what users can – or can’t – see. You can now control who sees what. An exciting development that we’ve introduced following lots of demand.
  • Additionally, we’ll be including the Beta release of our Savings dashboard. The dashboard will give you an indication as to what the final release will look like. There’s some refinement planned, but PBI 562 gives exciting insights in to what we’re doing with your data!

Bugs:

  • The Executive Summary was light on help icons and text to explain what data was being displayed, so we created bug 374 to provide more context to graphs and tables.
  • We had an issue where accepted savings on Air and Hotel weren’t being calculated correctly. This has been resolved via bug 595.
  • Bug 538 resolved the issue with the minimum spend slider on the Executive Summary – previously, the slider wasn’t changing the context of the league tables above.
  • Responding to feedback, we created bug 329 that introduced control panels on graphs that enabled year-on-year visualisations to be calculated and displayed.
  • Previously, we didn’t get the user experience relating to Behaviours quite right. So, we created bug 453 to simplify the user experience so that it’s easier to select and deselect options.
  • Behind the scenes (and ‘under-the-hood’) we did have an issue with the LAT and LON enrichment API failing on Linux pods within the solution – an issue that bug 594 resolved.
  • We were seeing random “stale file handles” on client APIs that prevented data being acquired, but bug 530 solves the problem.

Version 1


What’s New

Software Release

Keel upgrade (includes previous releases)

The first half of Sprint 15 has been heavy on bug fixing.


Bugs:

  • The Executive Summary well-being tables had “Reset” buttons that didn’t work. Bug 574 has resolved the problem.
  • We introduced performance improvements so that dashboards loaded faster, but air still had a problem. This has now been fixed in Bug 506.
  • When browsing back to the Executive Summary performance was slow – we resolved this in Bug 561.
  • Maps on the abridged dashboards weren’t always rendering to the full width of the screen, so we solved in Bug 571.
  • The abridged spend map wasn’t displaying useful content, so we’ve introduced aggregated spend by destination city in Bug 572.
  • Bug 570 resolved the issue of showing traveller destinations on the traveller map within the Abridged dashboards.
  • In Bugs 547 and 544 we had tables labelled incorrectly – these have been corrected.
  • The Behaviours interactivity across all dashboards was flawed as we had labels that looked like buttons that should be clicked. This is solved in Bug 480.
  • On the Air dashboard our advanced bookings calculations were incorrect – the code applied for Bug 519 now ensures that any bookings made 14 or more days in advance are included.
  • Within the Abridged dashboard, the traveller map wasn’t populating travellers correctly – this has been resolved in Bug 570.

Features:

  • We’ve introduced new dashboards for clients that need them – in PBI 560 we created a mechanism for making them available as needed.
  • Additionally, we wanted to add more controls to some of the graphs, so in PBI 578, we’ve introduced a widget so that graphs can be tailored to what you want to see.

Features:

  • As you know, we’ve been working hard on upgrading the solution to the .Net 6 framework so that the solution gets all the benefits with improved security, performance, and reliability of a Microsoft release. This release sees all components move to .Net6!
    • note that the Ahead-of-Time (AOT) features are not included in this release. More to follow later this month.

What’s New

Engineering Release

Added in a new deployment and associated service to assist in improving the enrichment of latitude and longitude data for improved map visualisations. Upon data acquisition the service determines whether latitude and longitude data needs enriching for each row of data, and if so, looks up city against a table of cities and geocodes and enriches.

  • Please note: as the enrichment takes place upon acquisition of data, client data will need to be reloaded.

This release will require a Helm upgrade:

  • Please back up Helm chart 1.2.1 as it will contain content specific to you.
  • Download and export Helm chart 1.2.2.
  • Copy the “deployment – nginx controller.yaml” file from your 1.2.1 backup and paste in to the 1.2.2 templates folder.
    • This ensures that your specific TLS settings and ingress rules are included in the upgrade.
  • Perform the Helm upgrade using “Helm upgrade…” command.

Software Release

Keel upgrade (includes previous releases)

  • (PBI 551) – Increase rows in Hotels drill down tables.
  • (PBI 552) – Traveller count summary cards to (minus 1) to account for missing data.
  • (PBI 543) – Add annotations relating to CO2 measurements.
  • (PBI 533) – Increase levels of drill down in Hotels tables to provide greater analytical depth.
  • (PBI 532) – Add / enrich geocoding for improved map visualisations on all dashboards.
  • (PBI 527) – Introduction of an abridged client dashboard. Please get in touch for more details.
  • (PBI 531) – Add / enrich geocoding for improved traveller map visualisations.
  • (PBI 403) – Redesigned Travellers dashboard within Executive Summary.
  • (PBI 542) – Migrate solution to .Net6.
    • Please note – this release does not include ‘ahead-of-time’ (AOT).

What’s New

Engineering Release

We’ve made some engineering improvements to the Helm chart in release 1.2.1 Updates include:

  • Added centralised external Azure DNS values in to client-bespoke-values.yaml
    • Removed from nginx controller file and enables creation of DNS and CNAME records
    • Refer to client-bespoke-values.yaml “bespoke config 4
  • Simplification of TLS configuration by removing requirement from chart to a single Kubectl command
    • TLS certificate and private key information no longer stored in plain test, in Helm chart files
    • kubectl -n unlockeddata create secret tls --cert c:\unlockeddata\tls\unlockeddata.crt --key c:\unlockeddata\tls\unlockeddata.key unlocked-tls
  • Keel approvals deadline set to 168 hours (7 days) by default
  • Removal of Service Principal details from Helm chart by running one command
    • kubectl create secret docker-registry imagepull --docker-server=unlockeddata.azurecr.io --docker-username= --docker-password='<Password as provided by UD>' –docker-email=<valid email address>
  • Keel access port changed from port 9300 to 80
  • Removal of internal NGINX controllers and redundant webhooks to simplify solution
  • HSTS enabled / disabled flag
    • Refer to client-bespoke-values.yaml “bespoke config 6”
  • Re-introduction of static IP address assignment for Management Portal, Kibana and Keel
      Refer to client-bespoke-values.yaml “bespoke config 3

Additionally, confirmation the solution is supported on Kubernetes version 1.20.7 – you can upgrade your cluster and nodes to this latest version.


Software Release

Keel upgrade (includes previous releases)

  • PBI (516) – Air Dashboard drill down tables increased to 5 rows.
  • PBI (525) – Keel Deadline increased to 168 hours (7 days).
  • PBI (515) – Rail drill down tables increased to 5 rows.
  • PBI (513) – Air dashboard ticketing table increased to fill space.
  • PBI (452) – Reposition Behaviours to second in each dashboard.
  • PBI (491) – Executive Summary sustainability to replace tree carbon offset. Testing passed, additional remarks suggested to fill space.
  • PBI (514) – Removed duplicated “Behaviour” from subtitle of Behaviour League Table.
  • BUG (529) – Newly created resources created as ClusterIP.
  • PBI (484) – Executive Dashboad sustainability (Air Class and Hotel Carbon) data issue fixed and whole section moved to 2x2 grid.
  • PBI (504) – StateProvince data field expanding to 26 characters for data loading.

What’s New

1

Dashboards & Data Load

  • Improved processing of data to increase browser performance (PBI 501)
  • Processing 24 months data (PBI 497)
  • Widget set to 24 month-time range (PBI 498)
  • Error when no client selected (Bug 485)
  • Rail image on Air dashboard (Bug 467)
  • Rail Trip Type – resolved issue with round-trip and single trips (Bug 469)
  • Data acquisition control – unable to load wrong client codes (PBI 441)
  • Loading of data for Executive Summary Spend and Compliance cards (Bug 375)
  • Set default reporting end date to last day of previous month (PBI 505)
  • TripType (Rail) card correctly displaying Journey and TicketTypes (bug 512)
  • Drill Down date slider aligned with filtered (widget) dates (bug 478)
  • Rail behaviours - minimum spend fixed for division and traveller (bug 479)
  • Rail behaviours – LowestFare card now captures all lowest fares (bug 511)
  • Behaviours – league tables and switching between division and traveller (bug 480).
2

How

  • Upgrade can be completed using Keel.
  • Zero downtime.

What’s New

1

Dashboards:

  • Logging in – remediating change made by Auth0 (bug 488) - resolved issue introduced by Auth0 relating to trailing “/” on issuerId.
  • Logging out - error (bug 475) - resolved issue introduced by Auth0 relating to trailing “/” on issuerId.
  • Hotel - total spend (bug 486) – Issue with hotel nights and hotel spend resolved.
  • Hotel – Preferred Rates (bug 487) – resolved error with specific preferred rates not loading.
  • Rail Cabin Code (bug 473) – resolved issue relating to rail cabin codes not always displaying.
  • Rail Trip Type (bug 469) – resolved issue with round-trip and single trips.
2

How

  • Upgrade can be completed using Keel.
  • Zero downtime.

What’s New

1

Dashboards:

  • Implementation of detailed logging to support data ingress (PBI 466)
  • Data download buttons included on widget (PBI 457)
  • Improved default landing page after logging in for faster navigation of dashboards (PBI 458)
  • Widget standardisation on Exec Summary (PBI 377) and Rail (Bug 448) dashboards
  • Improved Executive Summary Sustainability layout (PBI 382)
  • Log out button colour change (451)
  • Inclusion of additional Rail Ticket Types (PBI 465)
2

How

  • Upgrade can be completed using Keel.
  • Zero downtime.

What’s New

1

Dashboards:

  • Deployment primarily focused on bugs relating error handling when logging in.​
  • Improved error handling when no date range out of scope of available data.​
  • Includes improvement for handling different issuer identities (relates to “/” in tokens from provider).
  • The side-bar widget has been improved for clarity and usability.​
    • Invoice, booking and travel date.​
    • Removal of date slider.​
    • Calendar functions​
  • Kibana capturing username for improved logging.​
  • Minor look and feel relating to logging out and username (removal of drop down option)
2

Helm Chart

  • Management Portal forced to v1.0.4 in Helm Chart – no upgrade required via Keel in this release.​
  • Keel image has been moved to Unlocked Data container registry for improved control

Backlog Items

The following product backlog items were completed with improvements in solution engineering and dashboards:



What’s New

1

This release focuses on HELM chart maintenance and improvements to simplify deployments and the solution within AKS:


What’s New

1

Deployment of the Keel upgrade tool. Advantages of Keel include:

  • Faster and automated software upgrades
  • No dependency on engineering or software teams for software upgrades
  • Policy driven upgrades –manage number of approvers, reject upgrades, and more.
  • Future integration in the Management Portal
2

Instructions to enable online authentication (JWT) testing within CTE environment.

3

Updated Executive Summary and Meetings Dashboards.

Backlog Items

The following product backlog items were completed with improvements in solution engineering and dashboards:




Instructions

1

‘Tear down’ previous solution by copying and pasting the following commands.

  • kubectl delete namespace unlockeddata
  • Kubectl delete –A ValidatingWebhookConfiguration -- all

Note: In testing we have identified that an uninstall doesn’t always remove all resources. The above commands ensure resources not uninstalled automatically are removed. This process can take a few minutes as IP addresses are unallocated by Azure. Additionally, these releases will be infrequent as we move to upgrades.

2

Create the new name space by running kubectl create namespace unlockeddata.

3

Create new folder: c:\unlockedrelease1.1.4 and within Visual Studio Code navigate to c:\unlockedrelease1.1.4

4

Connect to Unlocked Data Azure Container Registry as per “…Helm Instructions.pdf”

5

Acquire latest Helm chart: helm chart pull unlockeddata.azurecr.io/helm/unlock8s:v1.1.4

6

Export chart: helm chart export unlockeddata.azurecr.io/helm/unlock8s:v1.1.4

7

Open cte-values.yaml file and enter the PingFed issuer(line 21) and appid (line 22)

8

Save cte-values.yaml.

9

Installthe solution: helm install -f ./unlock8s/cte-values.yaml unlock8s./unlock8s

10

Keel....

11

When the installation has completed type in Kubectl get svc keel or go to the Azure portal to obtain the Keel ‘external’ IP address

12

From a web browser navigate to the IP address above on port 9300. For example http://10.240.0.7:9300 and enter admin for both username and password.

Note: this activity can be completed by anyone who has access to the above URL – product implementation team, product owner, etc..

13

Click on Approvals on Keel Dashboard

Note: Keel has correctly identified a Delta upgrade. Version 1.0.0 was installed and Keel has identified a newer version in Unlocked Data’s Container Registry

14

Click on the thumb below “Action” and then click OK to upgrade the Management Portal from 1.0.0 to 1.0.2.

Note: the Management Portal - and any other images in the future - will automatically be upgraded. You can review the Keel dashboard to see updated information.