Skip to content

Commit 9976fbe

Browse files
authored
Merge pull request #576 from boozallen/aissemble-release-1.11
aiSSEMBLE Release 1.11 - Bump dev to next version
2 parents eb9d327 + 496c9b0 commit 9976fbe

File tree

250 files changed

+181
-4839
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

250 files changed

+181
-4839
lines changed

DRAFT_RELEASE_NOTES.md

+5-83
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,8 @@
11
# Major Additions
22

3-
## Service account support for spark-infrastructure
4-
To have a more flexible and secure way to authenticate with AWS services, the spark-infrastructure helm chart has been enhanced to support [AWS IRSA](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html) (IAM Roles for Service Accounts) authentication. See the _**How to Upgrade**_ for more information.
5-
6-
## Path to Production Alignment
7-
To better align development processes with processes in CI/CD and higher environments, we no longer recommend using Tilt live-reloading. As such, upgrading projects should consider narrowing the scope of their Tiltfile. These changes will also help smooth the transition as further alignment is brought to the path to production. See _**How to Upgrade**_ for more information.
8-
9-
## Data Access Upgrade
10-
Data access through [GraphQL](https://graphql.org/) has been deprecated and replaced with [Trino](https://trino.io/). Trino is optimized for performing queries against large datasets by leveraging a distributed architecture that processes queries in parallel, enabling fast and scalable data retrieval.
11-
12-
## Spark Upgrade
13-
Spark and PySpark have been upgraded from version 3.5.2 to 3.5.4.
14-
15-
## Record Relation
16-
To enable nested data records, we have added a new relation feature to the record metamodel. This allows records to reference other records. For more details, refer to the [Record Relation Options](https://boozallen.github.io/aissemble/aissemble/current-dev/record-metamodel.html#_record_relation_options).
17-
Several features are still a work in progress:
18-
- PySpark and Spark schema based validation for relations will only validate the record and not its relations. Object based validation for relations is available.
19-
20-
## Helm Charts Resource Specification
21-
The following Helm charts have been updated to include the configuration options for specifying container resource requests/limits:
22-
- `aissemble-spark-history-chart`
23-
- `aissemble-quarkus-chart`
24-
25-
See the[official Kubernetes documentation](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) for more details.
26-
273
# Breaking Changes
284
_Note: instructions for adapting to these changes are outlined in the upgrade instructions below._
295

30-
- The following Java classes have been renamed:
31-
| Old Java Class | New Java Class |
32-
|-------------------------------|------------------------------------|
33-
| `AIOpsModelInstanceRepostory` | `AissembleModelInstanceRepository` |
34-
| `AiopsMdaJsonUtils` | `AissembleMdaJsonUtils` |
35-
- To improve the development cycle and docker build consistency, we have deprecated the docker_build() and local_resources() functions in the Tilt and enable maven docker build for the docker modules. Follow the instruction in the `Finalizing the Upgrade` to avoid duplicated docker image build.
36-
- In an attempt to harden the `aissemble-hive-service` image, several changes were made that may impact projects with Hive customization
37-
38-
396
# Known Issues
407

418
## Docker Module Build Failures
@@ -64,20 +31,11 @@ The following steps will upgrade your project to `1.11`. These instructions cons
6431
## Automatic Upgrades
6532
To reduce burden of upgrading aiSSEMBLE, the Baton project is used to automate the migration of some files to the new version. These migrations run automatically when you build your project, and are included by default when you update the `build-parent` version in your root POM. Below is a description of all of the Baton migrations that are included with this version of aiSSEMBLE.
6633

67-
| Migration Name | Description |
68-
|----------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
69-
| upgrade-tiltfile-aissemble-version-migration | Updates the aiSSEMBLE version within your project's Tiltfile |
70-
| upgrade-v2-chart-files-aissemble-version-migration | Updates the Helm chart dependencies within your project's deployment resources (`<YOUR_PROJECT>-deploy/src/main/resources/apps/`) to use the latest version of the aiSSEMBLE |
71-
| upgrade-v1-chart-files-aissemble-version-migration | Updates the docker image tags within your project's deployment resources (`<YOUR_PROJECT>-deploy/src/main/resources/apps/`) to use the latest version of the aiSSEMBLE |
72-
| pipeline-invocation-service-template-migrtion | Include the helm.valueFiles param to ArgoCD pipeline-invocation-service template |
73-
| docker-module-pom-dependency-type-migration | Updates the maven pipeline dependency type within your project's sub docker module pom file(`<YOUR_PROJECT>-docker/*-docker/pom.xml`) to fix the build cache checksum calculation issue |
74-
| enable-maven-docker-build-migration | Remove the maven fabric8 plugin `skip` configuration within your project's docker module pom file(`<YOUR_PROJECT>-docker/pom.xml`) to enable the maven docker build |
75-
| ml-pipeline-docker-pom-migration | Adds pipeline ML pipeline dependencies to relevant docker POMs to improve the Maven build cache functionality |
76-
| training-api-image-tag-migration | Update training docker image tags to use project version |
77-
| inference-docker-image-tag-migration | Update inference docker image tags to use project version |
78-
| spark-worker-docker-image-tag-migration | Updates Spark docker image tags to use project version |
79-
| spark-infrastructure-server-side-label-migration | Enables the Server-Side Diff Strategy within ArgoCD for the Spark Infrastructure resource so that changes made by the Universal Config Store mutating webhook are ignored |
80-
| data-access-default-migration | Migrates Record metamodels that were relying on the default Data Access settings to preserve semantics with the updated default value |
34+
| Migration Name | Description |
35+
|----------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
36+
| upgrade-tiltfile-aissemble-version-migration | Updates the aiSSEMBLE version within your project's Tiltfile |
37+
| upgrade-v2-chart-files-aissemble-version-migration | Updates the Helm chart dependencies within your project's deployment resources (`<YOUR_PROJECT>-deploy/src/main/resources/apps/`) to use the latest version of the aiSSEMBLE |
38+
| upgrade-v1-chart-files-aissemble-version-migration | Updates the docker image tags within your project's deployment resources (`<YOUR_PROJECT>-deploy/src/main/resources/apps/`) to use the latest version of the aiSSEMBLE |
8139

8240
To deactivate any of these migrations, add the following configuration to the `baton-maven-plugin` within your root `pom.xml`:
8341

@@ -113,44 +71,8 @@ To start your aiSSEMBLE upgrade, update your project's pom.xml to use the 1.11.0
11371
</parent>
11472
```
11573

116-
### Tilt Docker Builds
117-
To avoid duplicate docker builds, remove all the related `docker_build()` and `local_resources()` functions from your Tiltfile. Also, the `spark-worker-image.yaml` is no longer used so the `-deploy/src/main/resources/apps/spark-worker-image` directory and the related `k8s_yaml()` function from your Tiltfile can be removed.
118-
11974
## Conditional Steps
12075

121-
### For projects that have customized the Hive service
122-
Several changes were made to both the Hive service Docker image and the Hive service chart included as part of the Spark Infrastructure chart of a project. The defaults have been adjusted so that these changes should be transparent, however due to the nature of some possible customizations this may not always hold true. The following changes may impact the function of your customizations and may need to be accounted for:
123-
- The image is now only the Hive Standalone Metastore service and cannot function as a full [Hive Server](https://hive.apache.org/development/quickstart/)
124-
- The Java installation at `/opt/java` is no longer symlinked to `/opt/jre` -- `JAVA_HOME` has been adjusted accordingly by default
125-
- The default working directory for the `aissemble-hive-service` image was changed from `/opt` to `/opt/hive`
126-
- Schema initialization is no longer done as part of an `initContainer` in the `aissemble-hive-service-chart` and is instead done in a new `entrypoint` script. This is consistent with the [official `apache/hive` Docker image](https://hub.docker.com/r/apache/hive).
127-
128-
### AWS IRSA (IAM Roles Service Account) Authentication
129-
This is not a required step but a recommended way to authenticate AWS service
130-
1. [Create an IAM OIDC provider for your cluster](https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html)
131-
2. Follow the [Assign IAM roles to Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) document but **skip** the step that creates the service account
132-
3. In the spark-infrastructure chart template, add the service account create configuration as below:
133-
134-
aissemble-spark-history-chart
135-
```yaml
136-
aissemble-spark-history-chart:
137-
serviceAccount:
138-
name: service-account-name
139-
enabled: true
140-
metadata:
141-
annotations:
142-
# Ref: IAM roles arn from step 2
143-
eks.amazonaws.com/role-arn: arn:aws:iam::aws-id:role/iam-role-name
144-
```
145-
146-
aissemble-thrift-server-chart:
147-
```yaml
148-
aissemble-thrift-server-chart:
149-
deployment:
150-
# service account name must match the service account name specified in the IAM roles trust relationships
151-
serviceAccountName: service-account-name
152-
```
153-
15476
## Final Steps - Required for All Projects
15577
### Finalizing the Upgrade
15678
1. Run `./mvnw org.technologybrewery.baton:baton-maven-plugin:baton-migrate` to apply the automatic migrations

bom/aissemble-quarkus-bom/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>bom</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010

1111
<artifactId>aissemble-quarkus-bom</artifactId>

bom/bom-instantiation/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>bom</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010

1111
<artifactId>bom-instantiation</artifactId>

bom/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<groupId>com.boozallen.aissemble</groupId>
66
<artifactId>build-parent</artifactId>
77
<relativePath>../build-parent/pom.xml</relativePath>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010

1111
<artifactId>bom</artifactId>

build-parent/pom.xml

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<parent>
55
<groupId>com.boozallen.aissemble</groupId>
66
<artifactId>aissemble-root</artifactId>
7-
<version>1.11.0-SNAPSHOT</version>
7+
<version>1.12.0-SNAPSHOT</version>
88
</parent>
99

1010
<artifactId>build-parent</artifactId>
@@ -22,7 +22,7 @@
2222
</distributionManagement>
2323

2424
<properties>
25-
<version.aissemble>1.11.0-SNAPSHOT</version.aissemble>
25+
<version.aissemble>1.12.0-SNAPSHOT</version.aissemble>
2626

2727
<!-- **************** -->
2828
<!-- Plugins versions -->

build-support/aissemble-enforcer-extension/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>build-support</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010
<artifactId>aissemble-enforcer-extension</artifactId>
1111

build-support/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>aissemble-root</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010

1111
<artifactId>build-support</artifactId>

cucumber-report-aggregator/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<parent>
55
<groupId>com.boozallen.aissemble</groupId>
66
<artifactId>aissemble-root</artifactId>
7-
<version>1.11.0-SNAPSHOT</version>
7+
<version>1.12.0-SNAPSHOT</version>
88
</parent>
99

1010
<artifactId>cucumber-report-aggregator</artifactId>

docs/antora.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: aissemble
22
title: aiSSEMBLE
3-
version: 1.11.0
4-
display_version: "1.11.0-SNAPSHOT"
3+
version: 1.12.0
4+
display_version: "1.12.0-SNAPSHOT"
55
prerelease: true
66
nav:
77
- modules/ROOT/nav.adoc

docs/modules/ROOT/attachments/HardwareDetailsRunFacet.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://json-schema.org/draft/2020-12/schema",
3-
"$id": "https://boozallen.github.io/aissemble/openlineage/schemas/1.11.0-SNAPSHOT/HardwareDetailsRunFacet.json",
3+
"$id": "https://boozallen.github.io/aissemble/openlineage/schemas/1.12.0-SNAPSHOT/HardwareDetailsRunFacet.json",
44
"$defs": {
55
"HardwareDetailsRunFacet": {
66
"allOf": [

docs/modules/ROOT/attachments/HyperparameterRunFacet.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://json-schema.org/draft/2020-12/schema",
3-
"$id": "https://boozallen.github.io/aissemble/openlineage/schemas/1.11.0-SNAPSHOT/HyperparameterRunFacet.json",
3+
"$id": "https://boozallen.github.io/aissemble/openlineage/schemas/1.12.0-SNAPSHOT/HyperparameterRunFacet.json",
44
"$defs": {
55
"HyperparameterRunFacet": {
66
"allOf": [

docs/modules/ROOT/attachments/MLflowRunFacet.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://json-schema.org/draft/2020-12/schema",
3-
"$id": "https://boozallen.github.io/aissemble/openlineage/schemas/1.11.0-SNAPSHOT/MLflowRunFacet.json",
3+
"$id": "https://boozallen.github.io/aissemble/openlineage/schemas/1.12.0-SNAPSHOT/MLflowRunFacet.json",
44
"$defs": {
55
"MLflowRunFacet": {
66
"allOf": [

docs/modules/ROOT/attachments/PerformanceMetricRunFacet.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://json-schema.org/draft/2020-12/schema",
3-
"$id": "https://boozallen.github.io/aissemble/openlineage/schemas/1.11.0-SNAPSHOT/PerformanceMetricRunFacet.json",
3+
"$id": "https://boozallen.github.io/aissemble/openlineage/schemas/1.12.0-SNAPSHOT/PerformanceMetricRunFacet.json",
44
"$defs": {
55
"PerformanceMetricRunFacet": {
66
"allOf": [

docs/modules/ROOT/attachments/SourceCodeDirectoryJobFacet.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://json-schema.org/draft/2020-12/schema",
3-
"$id": "https://boozallen.github.io/aissemble/openlineage/schemas/1.11.0-SNAPSHOT/SourceCodeDirectoryJobFacet.json",
3+
"$id": "https://boozallen.github.io/aissemble/openlineage/schemas/1.12.0-SNAPSHOT/SourceCodeDirectoryJobFacet.json",
44
"$defs": {
55
"SourceCodeDirectoryJobFacet": {
66
"allOf": [

extensions/extensions-alerting/extensions-alerting-slack/pom.xml

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>extensions-alerting</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010

1111
<artifactId>extensions-alerting-slack</artifactId>
@@ -17,7 +17,7 @@
1717
<dependency>
1818
<groupId>com.boozallen.aissemble</groupId>
1919
<artifactId>foundation-alerting</artifactId>
20-
<version>${version.aissemble}</version>
20+
<version>${project.version}</version>
2121
</dependency>
2222
<dependency>
2323
<groupId>org.technologybrewery.krausening</groupId>
@@ -87,4 +87,4 @@
8787
</plugin>
8888
</plugins>
8989
</build>
90-
</project>
90+
</project>

extensions/extensions-alerting/extensions-alerting-teams/pom.xml

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>extensions-alerting</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010

1111
<artifactId>extensions-alerting-teams</artifactId>
@@ -34,12 +34,12 @@
3434
<dependency>
3535
<groupId>com.boozallen.aissemble</groupId>
3636
<artifactId>foundation-alerting</artifactId>
37-
<version>${version.aissemble}</version>
37+
<version>${project.version}</version>
3838
</dependency>
3939
<dependency>
4040
<groupId>com.boozallen.aissemble</groupId>
4141
<artifactId>extensions-messaging-quarkus</artifactId>
42-
<version>${version.aissemble}</version>
42+
<version>${project.version}</version>
4343
</dependency>
4444
<dependency>
4545
<groupId>io.smallrye.config</groupId>

extensions/extensions-alerting/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>extensions</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010

1111
<artifactId>extensions-alerting</artifactId>

extensions/extensions-data-delivery/aissemble-extensions-data-delivery-spark-py/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>extensions-data-delivery</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010

1111
<artifactId>aissemble-extensions-data-delivery-spark-py</artifactId>

extensions/extensions-data-delivery/aissemble-extensions-data-delivery-spark-py/pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "aissemble-extensions-data-delivery-spark-py"
3-
version = "1.11.0.dev"
3+
version = "1.12.0.dev"
44
description = "Contains the core Python functionality of data delivery for Spark"
55
authors = ["aiSSEMBLE Baseline Community <aissemble@bah.com>"]
66
readme = "README.md"

extensions/extensions-data-delivery/extensions-data-delivery-spark-neo4j/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>extensions-data-delivery</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010

1111
<artifactId>extensions-data-delivery-spark-neo4j</artifactId>

extensions/extensions-data-delivery/extensions-data-delivery-spark-postgres/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>extensions-data-delivery</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010

1111
<artifactId>extensions-data-delivery-spark-postgres</artifactId>

extensions/extensions-data-delivery/extensions-data-delivery-spark/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>extensions-data-delivery</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010

1111
<artifactId>extensions-data-delivery-spark</artifactId>

extensions/extensions-data-delivery/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>extensions</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010
<packaging>pom</packaging>
1111

extensions/extensions-data-lineage/extensions-data-lineage-http-consumer-service/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<parent>
55
<groupId>com.boozallen.aissemble</groupId>
66
<artifactId>extensions-data-lineage</artifactId>
7-
<version>1.11.0-SNAPSHOT</version>
7+
<version>1.12.0-SNAPSHOT</version>
88
</parent>
99
<artifactId>extensions-data-lineage-http-consumer-service</artifactId>
1010
<name>aiSSEMBLE::Extensions::Data Lineage::Http Consumer Service</name>

extensions/extensions-data-lineage/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.boozallen.aissemble</groupId>
77
<artifactId>extensions</artifactId>
8-
<version>1.11.0-SNAPSHOT</version>
8+
<version>1.12.0-SNAPSHOT</version>
99
</parent>
1010
<packaging>pom</packaging>
1111

0 commit comments

Comments
 (0)