Skip to content

Commit

Permalink
SLE 2024-04 release notes (#194)
Browse files Browse the repository at this point in the history
* Add the release notes template

* Update README.md

* Add closed-bugs-sle-2024-04

* Update README.md

update helm chart versions and containers

* Update README.md

Added helm chart breaking changes and behavior changes.

* Update closed-bugs-sle-2024-04.xlsx

* Update release-notes/2024-04/README.md

Co-authored-by: Mark Black <[email protected]>

* Update README.md

* Update README.md

Updated helm and container versions

* Create sbom folder

* Add files via upload

* Delete release-notes/2024-04/sbom/delete.md

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Draft instructions for dropping workorder database

* Add files via upload

* Add files via upload

* Add files via upload

* add external mongo steps, clarify/correct some steps

* fix bullets

* reference installing for namespace/release

* casing/quoting of workorder

* MongoDB, replica sets

* work order

* Helm

* Fix linting errors

* spacing

* Cleanup new features and breaking changes

---------

Co-authored-by: CIakab-NI <[email protected]>
Co-authored-by: = <[email protected]>
Co-authored-by: Chris Pawling <[email protected]>
  • Loading branch information
4 people authored Apr 25, 2024
1 parent e20b8fa commit 8d31256
Show file tree
Hide file tree
Showing 99 changed files with 90,492 additions and 0 deletions.
84 changes: 84 additions & 0 deletions release-notes/2024-04/Drop-workorder-database.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
# Dropping the `workorder` service's database

## Assumptions

- The `workorder` service is deployed but not in use, no data needs to be retained.

- Administrator has `kubectl` access to the Kubernetes cluster from a local bash shell.

- Administrator has permission to scale deployments

- If the SystemLink Enterprise deployment uses in-cluster, per-service MongoDB replica sets.

- Administrator has command line access to pods via `kubectl exec`.

- If the SystemLink Enterprise deployment uses an external MongoDB instance.

- Local bash shell with `mongosh` installed

- Network connectivity to the external MongoDB instance.

- MongoDB connection string w/ credentials for an account that has permission to drop the `workorders` database

## Release and namespace name

Throughout these instructions, `<release>` refers to the SystemLink Enterprise Helm release name, and
`<namespace>` refers to the namespace where the Helm chart is deployed. Replace with the same names
that were used when
[Installing SystemLink Enterprise](https://www.ni.com/docs/en-US/bundle/systemlink-enterprise/page/installing-systemlink-enterprise.html#GUID-C371BF44-6A52-4ABC-89F5-410B2B38B5C2).

## Procedure

### Stop the `workorder` service

1. Complete the upgrade to the 2024-04 version of the SystemLink Enterprise Helm chart

1. Scale down the `workorder` service deployment

`kubectl --namespace <namespace> scale deployment <release>-workorder --replicas=0`

1. Wait for all `<release>-workorder` pods to stop.

### Launch a MongoDB shell (Per-service MongoDB replica sets)

Skip this section if SystemLink Enterprise connects to an external database.

1. Determine the name of the pod that is running the MongoDB primary replica.

`kubectl --namespace <namespace> exec statefulset/<release>-workorder-mongodb exec -- mongosh --eval 'rs.isMaster().primary'`

The fully qualified domain name of the primary replica will be printed. The hostname is the name of the
pod. For example, if
`release-workorder-mongodb-1.release-workorder-mongodb-headless.namespace.svc.cluster.local:27017` is
printed, the primary replica's pod name is `release-workorder-mongodb-1`

1. Start a MongoDB shell in the primary pod.

`kubectl --namespace <namespace> exec <primary replica pod name> -it -- bash -c 'mongosh -u $MONGODB_ROOT_USER -p $MONGODB_ROOT_PASSWORD'`

### Launch a MongoDB shell (External MongoDB instance)

Skip this section if SystemLink Enterprise deploys per-service MongoDB replica sets.

1. Launch a MongoDB shell to connect to the database, using a connection string w/ user credentials
that have permission to drop the `workorders` database.

`mongosh <connection string>`

### Drop the `workorders` database

Run the following commands in the MongoDB shell to drop the `workorder` service's database:

```javascript
use workorders
db.dropDatabase()
exit
```

### Restart the `workorder` service

1. Scale up the workorder service. If autoscaling is enabled, the service will be scaled up according
to the autoscaling configuration. Otherwise, replace `1` with the desired number of `workorder`
service instances.

`kubectl --namespace <namespace> scale deployment <release>-workorder --replicas=1`
200 changes: 200 additions & 0 deletions release-notes/2024-04/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,200 @@
# SystemLink Enterprise release 2024-04 Release Notes

The 2024-04 release bundle for SystemLink Enterprise has been published to <https://downloads.artifacts.ni.com>. This update includes new features, bug fixes, and security updates. Work with your account representative to obtain credentials to access these artifacts. If you are not upgrading from the previous release, refer to past release notes to ensure you have addressed all required configuration changes.

## New Features and Behavior changes

- [Create test plans](https://www.ni.com/docs/en-US/bundle/systemlink-enterprise/page/creating-a-test-plan.html) faster by using a test plan template.
- [Edit result keywords from a data space](https://www.ni.com/docs/en-US/bundle/systemlink-enterprise/page/editing-test-result-keywords-from-a-data-space.html). You can also exclude results from a data space using a keyword that the results have in common.
- Learn about the [performance metrics for the SystemLink DataFrame service](https://www.ni.com/docs/en-US/bundle/systemlink-enterprise/page/dataframe-service-performance-metrics.html).
- Create feeds and upload custom packages.
- Replicate feeds from a remote URL.
- Upload, download, and configure metadata for system state files.
- Easily move third-party assets between test systems or un-managed locations.
- Work Orders has a new privilege for executing test plans. The Work Order service is not installed by default. This route is marked "[Beta]" and is still in development.

## Helm Chart Breaking Changes

- `workorder 0.3.79`
- The `workorder` MongoDB database needs to be dropped on upgrade. Refer to [Drop workorder database](./Drop-workorder-database.md) for instructions.
- The `status` property has been renamed to `state` in `workorder` and `testplan` APIs.
- `systemsstateservice 0.2.15`
- Added encryptionKey value for encrypting state content.
- [View this secret configuration](https://github.com/ni/install-systemlink-enterprise/blob/2024-04/getting-started/templates/systemlink-secrets.yaml#L622)

## Upgrade Considerations

### RabbitMQ Version

SystemLink Enterprise includes a deployment of the [RabbitMQ](https://www.rabbitmq.com/) message bus. Since you cannot skip minor versions when updating RabbitMQ, you may not be able to upgrade directly between versions of the SystemLink Enterprise product. The table below shows the version of the RabbitMQ dependency for each released version of SystemLink Enterprise. Refer to [Updating SystemLink Enterprise](https://www.ni.com/docs/en-US/bundle/systemlink-enterprise/page/updating-systemlink-enterprise.html) for detailed update instructions.

| RabbitMQ Version | First SystemLink Enterprise Version | Last SystemLink Enterprise Version |
|------------------|-------------------------------------|------------------------------------|
| 3.11.x | 0.12.x | 0.15.x |
| 3.12.x | 0.16.x | current |

Refer to [Updating SystemLink Enterprise](https://www.ni.com/docs/en-US/bundle/systemlink-enterprise/page/updating-systemlink-enterprise.html) for detailed instructions on how to safely upgrade the version of the RabbitMQ dependency.

## Bugs Fixed

Only customer facing bugs have been included in this list.

- [closed-bugs-sle-2024-04](https://github.com/ni/install-systemlink-enterprise/tree/2024-04/release-notes/2024-04/closed-bugs-sle-2024-04.xlsx)

## Software Bill of Materials and Notices

[SBOM](https://github.com/ni/install-systemlink-enterprise/tree/2024-04/release-notes/2024-04/sbom)

[Notices](https://github.com/ni/install-systemlink-enterprise/tree/2024-04/release-notes/2024-04/notices)

## Versions

**Top Level Helm Chart:**`0.24.123`

**Admin Helm Chart:** `0.24.4`

### NI Containers

assetservice:0.10.4

assetui:0.9.77

comments:0.8.1

dashboardsui:0.12.67

dataframeservice:1.4.28

dremio-ee:24.1.2

executionsui:0.12.64

feedservice:0.1.212

feedsui:0.0.364

filesui:0.13.70

grafana-auth-proxy:0.12.0

grafana-plugins:3.9.2

grafana-rbac-integrator:0.12.9

helium-dataservices:0.11.4

helium-fileingestionservices:1.2.6

helium-salt-master:1.9.12

helium-serviceregistry:0.13.12

helium-taghistoriandataretention:0.7.6

helium-taghistorianservices:0.7.6

helium-userservices:0.13.7

helium-webappservices:0.11.11

helium-webserver:0.20.7

jupyter-notebook-userpod:2.3.3

jupyterui:0.12.65

labmanagementui:0.3.111

landingpageui:0.12.69

nbexec-execution-helpers:0.10.1

nbexec-notebook-runner:0.13.3

nbexecservice:0.13.10

nbparsingservice:0.12.11

ni-grafana:v10.2.3-19a2369fad-ni

notification:0.12.3

repository:0.8.6

routineeventtrigger:0.13.2

routineexecutor:0.13.0

routinescheduletrigger:0.13.0

routineservice:0.14.0

routinesui:0.13.57

securityui:0.12.46

session-manager-service:0.14.4

sl-configurable-http-proxy:2.3.2

sl-k8s-hub:2.3.4

smtp:0.12.3

specificationmanagement:0.3.2

sysmgmtevent:0.13.4

systemsmanagementservice:0.12.18

systemsstateservice:0.2.15

systemsstatesui:0.1.63

systemsui:0.13.104

tagsui:0.8.65

testinsightsui:0.12.96

testmonitorservice:0.21.7

userdata:0.12.5

userservice-setup:0.14.1

workorder:0.3.79

### 3rd Party Containers

alpine:3.19.1

argoproj/argocli:v3.5.5-linux-amd64

argoproj/argoexec:v3.5.5-linux-amd64

argoproj/workflow-controller:v3.5.5-linux-amd64

bitnami/kubectl:1.28.2-debian-11-r16

bitnami/minio:2024.4.18-debian-12-r0

bitnami/mongodb:5.0.24-debian-11-r20

bitnami/rabbitmq:3.12.12-debian-11-r21

bitnami/redis-cluster:7.2.4-debian-12-r9

busybox:stable@sha256:023917ec6a886d0e8e15f28fb543515a5fcd8d938edb091e8147db4efed388ee

busybox:stable@sha256:51de9138b0cc394c813df84f334d638499333cac22edd05d0300b2c9a2dc80dd

jupyterhub/k8s-image-awaiter:3.2.1

kiwigrid/k8s-sidecar:1.26.1

pause:3.9

swaggerapi/swagger-ui:v5.13.0

zookeeper:3.9.1
Binary file not shown.
Loading

0 comments on commit 8d31256

Please sign in to comment.