From 0ea976741a364cade0c506572b5fb83319f32f73 Mon Sep 17 00:00:00 2001 From: Mandy Chessell Date: Mon, 10 Jun 2024 11:52:32 +0100 Subject: [PATCH 1/3] Update to 5.1-SNAPSHOT Signed-off-by: Mandy Chessell --- .github/workflows/codeql-v5.yml | 56 +++++++ .github/workflows/merge-v5.yml | 145 ++++++++++++++++++ .github/workflows/pr-v5.yml | 44 ++++++ .github/workflows/release-v5.yml | 94 ++++++++++++ build.gradle | 2 +- .../License_for_POM_Files.xml | 2 +- .../test-cases/platform-origin-test-case.md | 2 +- .../omag-server-platform/build.gradle | 7 + .../docs/README.md | 2 +- ...rview-of-the-graph-repository-connector.md | 4 +- .../Egeria-open-metadata-query-requests.http | 4 +- .../springboot/OMAGServerPlatform.java | 2 +- .../OMAGServerPlatformOriginServices.java | 2 +- .../server-chassis-spring/README.md | 2 +- .../springboot/EgeriaUIPlatform.java | 2 +- .../open-metadata-deployment/docker/README.md | 2 +- .../docker/configure/Dockerfile | 2 +- .../docker/egeria/Dockerfile | 2 +- .../docker/egeria/Dockerfile.selfbuild | 4 +- .../docker/egeria/README.md | 8 +- .../docker/platform/Dockerfile | 2 +- .../docker/platform/README.md | 4 +- 22 files changed, 370 insertions(+), 24 deletions(-) create mode 100644 .github/workflows/codeql-v5.yml create mode 100644 .github/workflows/merge-v5.yml create mode 100644 .github/workflows/pr-v5.yml create mode 100644 .github/workflows/release-v5.yml diff --git a/.github/workflows/codeql-v5.yml b/.github/workflows/codeql-v5.yml new file mode 100644 index 00000000000..fe220a11a9b --- /dev/null +++ b/.github/workflows/codeql-v5.yml @@ -0,0 +1,56 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright Contributors to the ODPi Egeria project. +# +# For most projects, this workflow file will not need changing; you simply need +# to commit it to your repository. +# +# You may wish to alter this file to override the set of languages analyzed, +# or to provide custom queries or build logic. +--- +name: "CodeQL Analysis v5" + +on: + push: + branches: [main, egeria-release-5*] + pull_request: + # The branches below must be a subset of the branches above + branches: [main, egeria-release-5*] + workflow_dispatch: + +jobs: + analyze: + if: ${{ github.repository == 'odpi/egeria'}} + name: "CodeQL Build v5" + runs-on: ubuntu-latest + permissions: + actions: read + contents: read + security-events: write + + steps: + - name: Checkout repository + uses: actions/checkout@v4.1.0 + - uses: gradle/wrapper-validation-action@v2 + - name: Setup Java JDK + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '17' + # Initializes the CodeQL tools for scanning. + - name: Initialize CodeQL + uses: github/codeql-action/init@v3.25.7 + with: + languages: java + queries: security-and-quality + ram: 4096 + - name: Build + uses: gradle/gradle-build-action@v3 + with: + # codeQL requires a full before/after build to compare results. Caching can result in action failing + #cache-read-only: true + cache-disabled: true + arguments: -x javadoc -x test build -PskipOpenTypesFVT + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v3.25.7 + with: + ram: 4096 diff --git a/.github/workflows/merge-v5.yml b/.github/workflows/merge-v5.yml new file mode 100644 index 00000000000..1d492e4e518 --- /dev/null +++ b/.github/workflows/merge-v5.yml @@ -0,0 +1,145 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright Contributors to the ODPi Egeria project. +--- +name: "Merge v5" + +# Trigger after code is merged. only on main repo +# - does not run on modification (may be just text) + +on: + push: + branches: [main, egeria-release-5*] + +permissions: + contents: read + +jobs: + build: + permissions: + # for gh-pages + contents: write + runs-on: ubuntu-latest + name: "Merge v5" + if: startsWith(github.repository,'odpi/') + steps: + - uses: actions/checkout@v4.1.0 + name: Checkout source + - uses: gradle/wrapper-validation-action@v2 + - name: Set up JDK + uses: actions/setup-java@v4 + with: + java-version: '17' + distribution: 'temurin' + # Build first - lombok & other pre-processing may be needed. safer... + - name: build and publish to maven central + if: ${{ github.ref == 'refs/heads/main'}} + uses: gradle/gradle-build-action@v3 + with: + cache-read-only: false + arguments: build publish + # Import secrets needed for code signing and distribution + env: + OSSRH_GPG_KEYID: ${{ secrets.OSSRH_GPG_KEYID }} + OSSRH_GPG_PASSPHRASE: ${{ secrets.OSSRH_GPG_PASSPHRASE }} + OSSRH_GPG_PRIVATE_KEY: ${{ secrets.OSSRH_GPG_PRIVATE_KEY }} + ORG_GRADLE_PROJECT_mavenRepoPass: ${{ secrets.OSSRH_TOKEN }} + ORG_GRADLE_PROJECT_mavenRepoUser: ${{ secrets.OSSRH_USERNAME }} + # In other cases just build but don't publish + - name: build (no publish to maven central) + if: ${{ github.ref != 'refs/heads/main'}} + uses: gradle/gradle-build-action@v3 + with: + cache-read-only: false + arguments: build + # Now aggregate javadoc - main only + - name: build + if: ${{ github.ref == 'refs/heads/main'}} + uses: gradle/gradle-build-action@v3 + with: + cache-read-only: false + arguments: aggregateJavadoc + - name: publish aggregate javadoc + if: ${{ github.ref == 'refs/heads/main'}} + uses: JamesIves/github-pages-deploy-action@v4 + with: + branch: gh-pages + folder: build/docs/javadoc + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + - name: Login to container registry (Quay.io) + uses: docker/login-action@v3 + with: + registry: quay.io + username: ${{ secrets.QUAY_IO_USERNAME }} + password: ${{ secrets.QUAY_IO_ACCESS_TOKEN }} + - name: Login to container registry (Docker Hub) + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_HUB_USERNAME }} + password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} + # QEMU is needed for ARM64 build for egeria-configure + # egeria-configure needs to install utilities + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + - name: Set Release version env variable + run: | + echo "VERSION=$(./gradlew properties --no-daemon --console=plain -q | grep '^version:' | awk '{printf $2}')" >> $GITHUB_ENV + # Publish container images(egeria) to quay.io and docker.io + - name: Copy the distribution content to be used in docker copy command + run: | + cp -f release.application.properties ./open-metadata-distribution/omag-server-platform/build/unpacked/egeria-platform-${{ env.VERSION }}-distribution.tar.gz/assembly/platform/application.properties + cp -r ./open-metadata-distribution/omag-server-platform/build/unpacked/egeria-platform-${{ env.VERSION }}-distribution.tar.gz/assembly/opt/sample-configs/*-* ./open-metadata-distribution/omag-server-platform/build/unpacked/egeria-platform-${{ env.VERSION }}-distribution.tar.gz/assembly/platform/data + - name: Build and push(egeria) to quay.io and docker.io (tag latest only for main!) + if: ${{ github.ref == 'refs/heads/main'}} + uses: docker/build-push-action@v5 + with: + push: true + tags: odpi/egeria:${{ env.VERSION }}, odpi/egeria:latest, quay.io/odpi/egeria:${{ env.VERSION }}, quay.io/odpi/egeria:latest + context: ./open-metadata-deployment/omag-server-platform/build/unpacked/egeria-platform-${{ env.VERSION }}-distribution.tar.gz + platforms: linux/amd64,linux/arm64 + - name: Build and push(egeria) to quay.io and docker.io (no tag latest) + if: ${{ github.ref != 'refs/heads/main'}} + uses: docker/build-push-action@v5 + with: + push: true + tags: odpi/egeria:${{ env.VERSION }}, quay.io/odpi/egeria:${{ env.VERSION }} + context: ./open-metadata-deployment/omag-server-platform/build/unpacked/egeria-platform-${{ env.VERSION }}-distribution.tar.gz + platforms: linux/amd64,linux/arm64 + # Publish container images(egeria-configure) to quay.io and docker.io + - name: Build and push(egeria-configure) to quay.io and docker.io (tag latest) + if: ${{ github.ref == 'refs/heads/main'}} + uses: docker/build-push-action@v5 + with: + push: true + tags: odpi/egeria-configure:${{ env.VERSION }}, odpi/egeria-configure:latest, quay.io/odpi/egeria-configure:${{ env.VERSION }}, quay.io/odpi/egeria-configure:latest + context: ./open-metadata-resources/open-metadata-deployment/docker/configure + platforms: linux/amd64,linux/arm64 + # -- + # Publish container images(egeria-configure) to quay.io and docker.io + - name: Build and push(egeria-configure) to quay.io and docker.io (no tag latest) + if: ${{ github.ref != 'refs/heads/main'}} + uses: docker/build-push-action@v5 + with: + push: true + tags: odpi/egeria-configure:${{ env.VERSION }}, quay.io/odpi/egeria-configure:${{ env.VERSION }} + context: ./open-metadata-resources/open-metadata-deployment/docker/configure + platforms: linux/amd64,linux/arm64 + # -- + - name: Upload Log of any dependency failures + uses: actions/upload-artifact@v4.3.1 + with: + name: Dependency Analysis Report (on failure) + path: build/reports/dependency-analysis/build-health-report.txt + if-no-files-found: ignore + # Mostly for verification - not published to the release itself for now + - name: Upload assemblies + uses: actions/upload-artifact@v4.3.1 + with: + name: Assemblies + path: open-metadata-distribution/omag-server-platform/build/distributions/*.gz + - name: Upload Test coverage report + uses: actions/upload-artifact@v4.3.1 + with: + name: Jacoco Coverage Report + path: build/reports/jacoco/codeCoverageReport + if-no-files-found: ignore diff --git a/.github/workflows/pr-v5.yml b/.github/workflows/pr-v5.yml new file mode 100644 index 00000000000..c959a7a0784 --- /dev/null +++ b/.github/workflows/pr-v5.yml @@ -0,0 +1,44 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright Contributors to the ODPi Egeria project. +--- +name: "Verify PR v5" + +on: + pull_request: + branches: [main, egeria-release-5*] + +permissions: + contents: read + +jobs: + build: + runs-on: ubuntu-latest + name: "Verify PR v5" + if: startsWith(github.repository,'odpi/') + steps: + - uses: actions/checkout@v4.1.0 + - uses: gradle/wrapper-validation-action@v2 + - name: Set up JDK + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '17' + - name: Build with Gradle + uses: gradle/gradle-build-action@v3 + with: + # Only cache for main build + cache-read-only: true + arguments: | + build + --scan + - name: Upload Test coverage report + uses: actions/upload-artifact@v4.3.1 + with: + name: Jacoco Coverage Report + path: build/reports/jacoco/codeCoverageReport + - name: Upload Log of any dependency failures + uses: actions/upload-artifact@v4.3.1 + with: + name: Dependency Analysis Report (on failure) + path: build/reports/dependency-analysis/build-health-report.txt + if-no-files-found: ignore diff --git a/.github/workflows/release-v5.yml b/.github/workflows/release-v5.yml new file mode 100644 index 00000000000..94be5084daf --- /dev/null +++ b/.github/workflows/release-v5.yml @@ -0,0 +1,94 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright Contributors to the ODPi Egeria project. +--- +name: "Release v5" + +# Trigger when a Release is created in github +# - does not run on modification (may be just text) + +on: + # No checks for branch or repo - assuming release creation is manual, controlled + release: + types: + - created + branches: [main, egeria-release-5*] + + workflow_dispatch: + +permissions: + contents: read + +jobs: + build: + runs-on: ubuntu-latest + name: "Release" + if: startsWith(github.repository,'odpi/') + steps: + - uses: actions/checkout@v4.1.0 + name: Checkout source + - uses: gradle/wrapper-validation-action@v2 + # Prep for docker builds + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + - name: Login to container registry (Quay.io) + uses: docker/login-action@v3 + with: + registry: quay.io + username: ${{ secrets.QUAY_IO_USERNAME }} + password: ${{ secrets.QUAY_IO_ACCESS_TOKEN }} + - name: Login to container registry (docker.io) + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_HUB_USERNAME }} + password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '17' + - name: build and publish to maven central + uses: gradle/gradle-build-action@v3 + with: + cache-read-only: false + arguments: build publish -Dorg.gradle.parallel=false -Dorg.gradle.caching=false + # Import secrets needed for code signing and distribution + env: + OSSRH_GPG_KEYID: ${{ secrets.OSSRH_GPG_KEYID }} + OSSRH_GPG_PASSPHRASE: ${{ secrets.OSSRH_GPG_PASSPHRASE }} + OSSRH_GPG_PRIVATE_KEY: ${{ secrets.OSSRH_GPG_PRIVATE_KEY }} + ORG_GRADLE_PROJECT_mavenRepoUrl: https://oss.sonatype.org/service/local/staging/deploy/maven2 + ORG_GRADLE_PROJECT_mavenRepoPass: ${{ secrets.OSSRH_TOKEN }} + ORG_GRADLE_PROJECT_mavenRepoUser: ${{ secrets.OSSRH_USERNAME }} + # QEMU is needed for ARM64 build for egeria-configure + # egeria-configure needs to install utilities + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + - name: Set Release version env variable + run: | + echo "VERSION=$(./gradlew properties --no-daemon --console=plain -q | grep '^version:' | awk '{printf $2}')" >> $GITHUB_ENV + # Publish container images(egeria) to quay.io and docker.io + - name: Copy the distribution content to be used in docker copy command + run: | + cp -f release.application.properties ./open-metadata-distribution/omag-server-platform/build/unpacked/egeria-platform-${{ env.VERSION }}-distribution.tar.gz/assembly/platform/application.properties + cp -r ./open-metadata-distribution/omag-server-platform/build/unpacked/egeria-platform-${{ env.VERSION }}-distribution.tar.gz/assembly/opt/sample-configs/*-* ./open-metadata-distribution/omag-server-platform/build/unpacked/egeria-platform-${{ env.VERSION }}-distribution.tar.gz/assembly/platform/data + - name: Build and push(egeria) to quay.io and docker.io + uses: docker/build-push-action@v5 + with: + push: true + tags: odpi/egeria:${{ env.VERSION }}, odpi/egeria:stable, quay.io/odpi/egeria:${{ env.VERSION }}, quay.io/odpi/egeria:stable + context: ./open-metadata-deployment/omag-server-platform/build/unpacked/egeria-platform-${{ env.VERSION }}-distribution.tar.gz + platforms: linux/amd64,linux/arm64 + # Publish container images(egeria-configure) to quay.io and docker.io + - name: Build and push(egeria-configure) to quay.io and docker.io + uses: docker/build-push-action@v5 + with: + push: true + tags: odpi/egeria-configure:${{ env.VERSION }}, odpi/egeria-configure:stable, quay.io/odpi/egeria-configure:${{ env.VERSION }}, quay.io/odpi/egeria-configure:stable + context: ./open-metadata-resources/open-metadata-deployment/docker/configure + platforms: linux/amd64,linux/arm64 + # Mostly for verification - not published to the release itself for now + - name: Upload assemblies + uses: actions/upload-artifact@v4.3.1 + with: + name: Assemblies + path: open-metadata-distribution/omag-server-platform/build/distributions/*.gz diff --git a/build.gradle b/build.gradle index 032105903da..3a66463b4b1 100644 --- a/build.gradle +++ b/build.gradle @@ -29,7 +29,7 @@ plugins { */ allprojects { group = 'org.odpi.egeria' - version = '4.4-SNAPSHOT' + version = '5.1-SNAPSHOT' // Signing/publish used in parent & child projects apply plugin: 'maven-publish' diff --git a/developer-resources/License-Example-Files/License_for_POM_Files.xml b/developer-resources/License-Example-Files/License_for_POM_Files.xml index 9e2e1b8b222..86cf8dd9f0c 100644 --- a/developer-resources/License-Example-Files/License_for_POM_Files.xml +++ b/developer-resources/License-Example-Files/License_for_POM_Files.xml @@ -10,7 +10,7 @@ egeria org.odpi.egeria - 4.4-SNAPSHOT + 5.1-SNAPSHOT Add module name here diff --git a/open-metadata-conformance-suite/docs/platform-workbench/test-cases/platform-origin-test-case.md b/open-metadata-conformance-suite/docs/platform-workbench/test-cases/platform-origin-test-case.md index ca914996e9b..9ab6bb2b03a 100644 --- a/open-metadata-conformance-suite/docs/platform-workbench/test-cases/platform-origin-test-case.md +++ b/open-metadata-conformance-suite/docs/platform-workbench/test-cases/platform-origin-test-case.md @@ -37,7 +37,7 @@ open metadata services are activated. "successfulAssertions" : [ "Origin descriptor retrieved from platform." ], "unsuccessfulAssertions" : [ ], "discoveredProperties" : { - "Repository origin id" : "Egeria OMAG Server Platform (version 4.4-SNAPSHOT)" + "Repository origin id" : "Egeria OMAG Server Platform (version 5.1-SNAPSHOT)" } } ``` diff --git a/open-metadata-distribution/omag-server-platform/build.gradle b/open-metadata-distribution/omag-server-platform/build.gradle index 0371c018edf..71ae9c69f65 100644 --- a/open-metadata-distribution/omag-server-platform/build.gradle +++ b/open-metadata-distribution/omag-server-platform/build.gradle @@ -135,6 +135,13 @@ distributions { } fileMode = 0755 } + into('assembly') { + from(rootProject.projectDir) { + include 'NOTICE' + include 'LICENSE' + } + fileMode = 0755 + } into('assembly') { // Describe the deployment layout from { "$rootProject.projectDir/open-metadata-distribution/omag-server-platform/docs/assembly" } diff --git a/open-metadata-implementation/adapters/open-connectors/repository-services-connectors/open-metadata-collection-store-connectors/docs/README.md b/open-metadata-implementation/adapters/open-connectors/repository-services-connectors/open-metadata-collection-store-connectors/docs/README.md index 24c081d6f4e..72befdcd506 100644 --- a/open-metadata-implementation/adapters/open-connectors/repository-services-connectors/open-metadata-collection-store-connectors/docs/README.md +++ b/open-metadata-implementation/adapters/open-connectors/repository-services-connectors/open-metadata-collection-store-connectors/docs/README.md @@ -43,7 +43,7 @@ following: ``` - 4.4-SNAPSHOT + 5.1-SNAPSHOT diff --git a/open-metadata-implementation/adapters/open-connectors/repository-services-connectors/open-metadata-collection-store-connectors/graph-repository-connector/docs/overview-of-the-graph-repository-connector.md b/open-metadata-implementation/adapters/open-connectors/repository-services-connectors/open-metadata-collection-store-connectors/graph-repository-connector/docs/overview-of-the-graph-repository-connector.md index a736b572f6a..c39cf7d37b9 100644 --- a/open-metadata-implementation/adapters/open-connectors/repository-services-connectors/open-metadata-collection-store-connectors/graph-repository-connector/docs/overview-of-the-graph-repository-connector.md +++ b/open-metadata-implementation/adapters/open-connectors/repository-services-connectors/open-metadata-collection-store-connectors/graph-repository-connector/docs/overview-of-the-graph-repository-connector.md @@ -546,7 +546,7 @@ storage.backend=berkeleyje # Default: (no default value) # Data Type: String # Mutability: LOCAL -storage.directory=../../../egeria-install/egeria-omag-4.4-SNAPSHOT/data/servers/Metadata_Server/repository/graph/berkeley +storage.directory=../../../egeria-install/egeria-omag-5.1-SNAPSHOT/data/servers/Metadata_Server/repository/graph/berkeley # The indexing backend used to extend and optimize JanusGraph's query # functionality. This setting is optional. JanusGraph can use multiple @@ -573,7 +573,7 @@ index.search.backend=lucene # Default: (no default value) # Data Type: String # Mutability: MASKABLE -index.search.directory=../../../egeria-install/egeria-omag-4.4-SNAPSHOT/data/servers/Metadata_Server/repository/graph/searchindex +index.search.directory=../../../egeria-install/egeria-omag-5.1-SNAPSHOT/data/servers/Metadata_Server/repository/graph/searchindex ``` ---- License: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/), diff --git a/open-metadata-implementation/framework-services/gaf-metadata-management/Egeria-open-metadata-query-requests.http b/open-metadata-implementation/framework-services/gaf-metadata-management/Egeria-open-metadata-query-requests.http index cdcdb97c20c..fa61d8c944e 100644 --- a/open-metadata-implementation/framework-services/gaf-metadata-management/Egeria-open-metadata-query-requests.http +++ b/open-metadata-implementation/framework-services/gaf-metadata-management/Egeria-open-metadata-query-requests.http @@ -28,7 +28,7 @@ Content-Type: application/json { "class" : "NameRequestBody", "namePropertyName" : "pathName", - "name" : "/Code/ODPi/egeria-core/egeria/open-metadata-distribution/omag-server-platform/build/unpacked/egeria-platform-4.4-SNAPSHOT-distribution.tar.gz/assembly/platform/sample-data/oak-dene-drop-foot-weekly-measurements/week9.csv" + "name" : "/Code/ODPi/egeria-core/egeria/open-metadata-distribution/omag-server-platform/build/unpacked/egeria-platform-5.1-SNAPSHOT-distribution.tar.gz/assembly/platform/sample-data/oak-dene-drop-foot-weekly-measurements/week9.csv" } @@ -41,7 +41,7 @@ Content-Type: application/json { "class" : "NameRequestBody", "namePropertyName" : "pathName", - "name" : "/Code/ODPi/egeria-core/egeria/open-metadata-distribution/omag-server-platform/build/unpacked/egeria-platform-4.4-SNAPSHOT-distribution.tar.gz/assembly/platform/sample-data/oak-dene-drop-foot-weekly-measurements/week9.csv" + "name" : "/Code/ODPi/egeria-core/egeria/open-metadata-distribution/omag-server-platform/build/unpacked/egeria-platform-5.1-SNAPSHOT-distribution.tar.gz/assembly/platform/sample-data/oak-dene-drop-foot-weekly-measurements/week9.csv" } diff --git a/open-metadata-implementation/platform-chassis/platform-chassis-spring/src/main/java/org/odpi/openmetadata/platformchassis/springboot/OMAGServerPlatform.java b/open-metadata-implementation/platform-chassis/platform-chassis-spring/src/main/java/org/odpi/openmetadata/platformchassis/springboot/OMAGServerPlatform.java index cb97660f8df..7448b4ee5f1 100644 --- a/open-metadata-implementation/platform-chassis/platform-chassis-spring/src/main/java/org/odpi/openmetadata/platformchassis/springboot/OMAGServerPlatform.java +++ b/open-metadata-implementation/platform-chassis/platform-chassis-spring/src/main/java/org/odpi/openmetadata/platformchassis/springboot/OMAGServerPlatform.java @@ -48,7 +48,7 @@ @OpenAPIDefinition( info = @Info( title = "Egeria's Open Metadata and Governance (OMAG) Server Platform", - version = "4.4-SNAPSHOT", + version = "5.1-SNAPSHOT", description = "The OMAG Server Platform provides a runtime process and platform for Open Metadata and Governance (OMAG) Services.\n" + "\n" + "The OMAG services are configured and activated in OMAG Servers using the Administration Services.\n" + diff --git a/open-metadata-implementation/platform-services/platform-services-server/src/main/java/org/odpi/openmetadata/platformservices/server/OMAGServerPlatformOriginServices.java b/open-metadata-implementation/platform-services/platform-services-server/src/main/java/org/odpi/openmetadata/platformservices/server/OMAGServerPlatformOriginServices.java index b39e7bc966f..22153bac2d6 100644 --- a/open-metadata-implementation/platform-services/platform-services-server/src/main/java/org/odpi/openmetadata/platformservices/server/OMAGServerPlatformOriginServices.java +++ b/open-metadata-implementation/platform-services/platform-services-server/src/main/java/org/odpi/openmetadata/platformservices/server/OMAGServerPlatformOriginServices.java @@ -8,7 +8,7 @@ */ public class OMAGServerPlatformOriginServices { - final String implementationOrigin = "Egeria OMAG Server Platform (version 4.4-SNAPSHOT)\n"; + final String implementationOrigin = "Egeria OMAG Server Platform (version 5.1-SNAPSHOT)\n"; /** * Return the origin of this server platform implementation. diff --git a/open-metadata-implementation/server-chassis/server-chassis-spring/README.md b/open-metadata-implementation/server-chassis/server-chassis-spring/README.md index fd1a96c4679..bd4bc5520d0 100644 --- a/open-metadata-implementation/server-chassis/server-chassis-spring/README.md +++ b/open-metadata-implementation/server-chassis/server-chassis-spring/README.md @@ -31,7 +31,7 @@ java -jar build/libs/server-chassis-spring-*-SNAPSHOT.jar --omag.server-config-f :: Powered by Spring Boot (v3.1.1) :: -2023-09-07T10:08:05.779+02:00 INFO 4334 --- [ main] o.o.o.s.springboot.OMAGServer : Starting OMAGServer using Java 17.0.8 with PID 4334 (/Developer/egeria/open-metadata-implementation/server-chassis/server-chassis-spring/build/libs/server-chassis-spring-4.4-SNAPSHOT.jar started by DEVELOPER in /Developer/egeria/open-metadata-implementation/server-chassis/server-chassis-spring) +2023-09-07T10:08:05.779+02:00 INFO 4334 --- [ main] o.o.o.s.springboot.OMAGServer : Starting OMAGServer using Java 17.0.8 with PID 4334 (/Developer/egeria/open-metadata-implementation/server-chassis/server-chassis-spring/build/libs/server-chassis-spring-5.1-SNAPSHOT.jar started by DEVELOPER in /Developer/egeria/open-metadata-implementation/server-chassis/server-chassis-spring) 2023-09-07T10:08:05.781+02:00 INFO 4334 --- [ main] o.o.o.s.springboot.OMAGServer : No active profile set, falling back to 1 default profile: "default" 2023-09-07T10:08:07.435+02:00 INFO 4334 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 9080 (http) 2023-09-07T10:08:07.444+02:00 INFO 4334 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat] diff --git a/open-metadata-implementation/user-interfaces/ui-chassis/ui-chassis-spring/src/main/java/org/odpi/openmetadata/userinterface/uichassis/springboot/EgeriaUIPlatform.java b/open-metadata-implementation/user-interfaces/ui-chassis/ui-chassis-spring/src/main/java/org/odpi/openmetadata/userinterface/uichassis/springboot/EgeriaUIPlatform.java index 14a5cefacdf..ae6d7038207 100644 --- a/open-metadata-implementation/user-interfaces/ui-chassis/ui-chassis-spring/src/main/java/org/odpi/openmetadata/userinterface/uichassis/springboot/EgeriaUIPlatform.java +++ b/open-metadata-implementation/user-interfaces/ui-chassis/ui-chassis-spring/src/main/java/org/odpi/openmetadata/userinterface/uichassis/springboot/EgeriaUIPlatform.java @@ -28,7 +28,7 @@ @OpenAPIDefinition( info = @Info( title = "Egeria's Spring Boot based UI RESTful web services API", - version = "4.4-SNAPSHOT", + version = "5.1-SNAPSHOT", description = "", license = @License(name = "Apache-2.0 License", url = "https://www.apache.org/licenses/LICENSE-2.0"), contact = @Contact(url = "https://egeria-project.org", name = "Egeria Project", diff --git a/open-metadata-resources/open-metadata-deployment/docker/README.md b/open-metadata-resources/open-metadata-deployment/docker/README.md index 71d3c4b0d1c..7a879bb26a1 100644 --- a/open-metadata-resources/open-metadata-deployment/docker/README.md +++ b/open-metadata-resources/open-metadata-deployment/docker/README.md @@ -34,7 +34,7 @@ In this example: ## Limitations -- All docker builds will currently set the tag (version) to be the same as the maven version (eg. 4.4-SNAPSHOT). This +- All docker builds will currently set the tag (version) to be the same as the maven version (eg. 5.1-SNAPSHOT). This means that when testing it is imperative to always force-pull fresh images, or an old version may be used. For example, when using kubernetes ensure `imagePullPolicy = 'Always'`. Previously every single change was versioned, but this led to significant overhead in storage as well as constant changes in the source code just to do a rebuild. diff --git a/open-metadata-resources/open-metadata-deployment/docker/configure/Dockerfile b/open-metadata-resources/open-metadata-deployment/docker/configure/Dockerfile index 145cbed0c59..0ae4362959b 100644 --- a/open-metadata-resources/open-metadata-deployment/docker/configure/Dockerfile +++ b/open-metadata-resources/open-metadata-deployment/docker/configure/Dockerfile @@ -2,7 +2,7 @@ # Copyright Contributors to the Egeria project FROM docker.io/library/alpine:3.19.1 -ARG version=4.4-SNAPSHOT +ARG version=5.1-SNAPSHOT ARG VCS_REF=unknown ARG VCS_ORIGIN=unknown ARG BUILD_TIME=unknown diff --git a/open-metadata-resources/open-metadata-deployment/docker/egeria/Dockerfile b/open-metadata-resources/open-metadata-deployment/docker/egeria/Dockerfile index 658409d99e7..bfae71e96f4 100644 --- a/open-metadata-resources/open-metadata-deployment/docker/egeria/Dockerfile +++ b/open-metadata-resources/open-metadata-deployment/docker/egeria/Dockerfile @@ -17,7 +17,7 @@ #FROM registry.access.redhat.com/ubi9/openjdk-17-runtime FROM registry.access.redhat.com/ubi9/openjdk-17 -ARG version=4.4-SNAPSHOT +ARG version=5.1-SNAPSHOT ARG VCS_REF=unknown ARG VCS_ORIGIN=unknown ARG BUILD_TIME=unknown diff --git a/open-metadata-resources/open-metadata-deployment/docker/egeria/Dockerfile.selfbuild b/open-metadata-resources/open-metadata-deployment/docker/egeria/Dockerfile.selfbuild index 2d7f41a2c52..6e5e9883855 100644 --- a/open-metadata-resources/open-metadata-deployment/docker/egeria/Dockerfile.selfbuild +++ b/open-metadata-resources/open-metadata-deployment/docker/egeria/Dockerfile.selfbuild @@ -31,7 +31,7 @@ ARG srcref=main ARG srcurl=https://github.com/odpi/egeria # this should not be needed, and must match the source, but we'll use for now -ARG version=4.4-SNAPSHOT +ARG version=5.1-SNAPSHOT # Replace build parms if needed ARG buildparms="build -x test -x javadoc --no-build-cache" # Can optionally specify build time so that we tag the image appropriately @@ -62,7 +62,7 @@ ARG srcref=main # Defaults to egeria repo - but could be a different fork if needed ARG srcurl=https://github.com/odpi/egeria # this should not be needed, and must match the source, but we'll use for now -ARG version=4.4-SNAPSHOT +ARG version=5.1-SNAPSHOT # Replace build parms if needed ARG buildparms="build -x test -x javadoc" # Can optionally specify build time so that we tag the image appropriately diff --git a/open-metadata-resources/open-metadata-deployment/docker/egeria/README.md b/open-metadata-resources/open-metadata-deployment/docker/egeria/README.md index 65acc8ce1f3..7a267e44917 100644 --- a/open-metadata-resources/open-metadata-deployment/docker/egeria/README.md +++ b/open-metadata-resources/open-metadata-deployment/docker/egeria/README.md @@ -35,7 +35,7 @@ This is the Dockerfile we use to publish the official images. It works by utiliz To use this * Run a full egeria build with `./gradlew build` from the project root - * Run `mkdir -p open-metadata-resources/open-metadata-deployment/docker/egeria/build/assembly && cp -r open-metadata-distribution/open-metadata-assemblies/build/unpacked/egeria-4.4-SNAPSHOT-distribution.tar.gz/. open-metadata-resources/open-metadata-deployment/docker/egeria/build/assembly` - replacing the version label as appropriate + * Run `mkdir -p open-metadata-resources/open-metadata-deployment/docker/egeria/build/assembly && cp -r open-metadata-distribution/open-metadata-assemblies/build/unpacked/egeria-5.1-SNAPSHOT-distribution.tar.gz/. open-metadata-resources/open-metadata-deployment/docker/egeria/build/assembly` - replacing the version label as appropriate * Run `docker build -t egeria:myversion -f Dockerfile .` in this directory to create the image @@ -54,7 +54,7 @@ The following additional arguments are allowed |------------|---------|-----------|--------------------------------------------|---------------------------------------------------------------------------------------------------| | runimg | No | Yes | registry.access.redhat.com/ubi9/openjdk-17 | Container image used for building egeria | | buildimg | No | Yes | registry.access.redhat.com/ubi9/openjdk-17 | Container image used for runtime ie launching egeria | -| version | Yes | Yes | 4.4-SNAPSHOT | Version string - must be correct so that the right jar file gets launched. Do not rely on default | +| version | Yes | Yes | 5.1-SNAPSHOT | Version string - must be correct so that the right jar file gets launched. Do not rely on default | | srcurl | No | Yes | https://github.com/odpi/egeria | Specifies url of github repo to clone | | srcref | No | Yes | main | Specifies branch, or tag of code within the repo | | buildparms | No | Yes | build -x test -x javadoc | Gradle invocation to build egeria | @@ -167,7 +167,7 @@ With that in place we can now run our docker image, this time making use of the $ docker run -p 9443:9443 -v source=egeria-data,target=/deployments/data odpi/egeria:latest /usr/local/s2i/run: line 15: /opt/jboss/container/maven/default//scl-enable-maven: No such file or directory Starting the Java application using /opt/jboss/container/java/run/run-java.sh ... -INFO exec java -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m -XX:+ExitOnOutOfMemoryError -XX:MaxMetaspaceSize=1g -cp "." -jar /deployments/platform/omag-server-platform-4.4-SNAPSHOT.jar +INFO exec java -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m -XX:+ExitOnOutOfMemoryError -XX:MaxMetaspaceSize=1g -cp "." -jar /deployments/platform/omag-server-platform-5.1-SNAPSHOT.jar ODPi Egeria ____ __ ___ ___ ______ _____ ____ _ _ ___ / __ \ / |/ // | / ____/ / ___/ ___ ____ _ __ ___ ____ / _ \ / / __ / / / _ /__ ____ _ _ @@ -237,7 +237,7 @@ you may need to create another job to retrieve the required libraries or content Use the egeria image as a base, for example begin your custom Dockerfile with -`FROM odpi/egeria:4.4-SNAPSHOT` +`FROM odpi/egeria:5.1-SNAPSHOT` Then add in the files you need, as well as customize the LOADER_PATH variable ie `COPY myextralib.jar /deployments/platform/lib` diff --git a/open-metadata-resources/open-metadata-deployment/docker/platform/Dockerfile b/open-metadata-resources/open-metadata-deployment/docker/platform/Dockerfile index 0ec6590a554..24da24b7c84 100644 --- a/open-metadata-resources/open-metadata-deployment/docker/platform/Dockerfile +++ b/open-metadata-resources/open-metadata-deployment/docker/platform/Dockerfile @@ -17,7 +17,7 @@ #FROM registry.access.redhat.com/ubi9/openjdk-17-runtime FROM registry.access.redhat.com/ubi9/openjdk-17 -ARG version=4.4-SNAPSHOT +ARG version=5.1-SNAPSHOT ARG VCS_REF=unknown ARG VCS_ORIGIN=unknown ARG BUILD_TIME=unknown diff --git a/open-metadata-resources/open-metadata-deployment/docker/platform/README.md b/open-metadata-resources/open-metadata-deployment/docker/platform/README.md index dddef029583..37f9fbc57db 100644 --- a/open-metadata-resources/open-metadata-deployment/docker/platform/README.md +++ b/open-metadata-resources/open-metadata-deployment/docker/platform/README.md @@ -107,7 +107,7 @@ With that in place we can now run our docker image, this time making use of the $ docker run -p 9443:9443 -v source=egeria-data,target=/deployments/platform/data odpi/egeria-platform:latest /usr/local/s2i/run: line 15: /opt/jboss/container/maven/default//scl-enable-maven: No such file or directory Starting the Java application using /opt/jboss/container/java/run/run-java.sh ... -INFO exec java -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m -XX:+ExitOnOutOfMemoryError -XX:MaxMetaspaceSize=1g -cp "." -jar /deployments/platform/omag-server-platform-4.4-SNAPSHOT.jar +INFO exec java -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m -XX:+ExitOnOutOfMemoryError -XX:MaxMetaspaceSize=1g -cp "." -jar /deployments/platform/omag-server-platform-5.1-SNAPSHOT.jar ODPi Egeria ____ __ ___ ___ ______ _____ ____ _ _ ___ / __ \ / |/ // | / ____/ / ___/ ___ ____ _ __ ___ ____ / _ \ / / __ / / / _ /__ ____ _ _ @@ -176,7 +176,7 @@ you may need to create another job to retrieve the required libraries or content #### Adding to the image through a docker build Use the egeria image as a base, for example begin your custom Dockerfile with -`FROM odpi/egeria-platform:4.4-SNAPSHOT` +`FROM odpi/egeria-platform:5.1-SNAPSHOT` Then add in the files you need, as well as customize the LOADER_PATH variable ie `COPY myextralib.jar /deployments/platform/extra` From dbfd1ad4e87205afa152b5ece695f811f8c89bf7 Mon Sep 17 00:00:00 2001 From: Mandy Chessell Date: Mon, 10 Jun 2024 11:54:41 +0100 Subject: [PATCH 2/3] Remove V4 workflows Signed-off-by: Mandy Chessell --- .github/workflows/codeql-v4.yml | 56 ------------ .github/workflows/merge-v4.yml | 145 ------------------------------- .github/workflows/pr-v4.yml | 44 ---------- .github/workflows/release-v4.yml | 94 -------------------- 4 files changed, 339 deletions(-) delete mode 100644 .github/workflows/codeql-v4.yml delete mode 100644 .github/workflows/merge-v4.yml delete mode 100644 .github/workflows/pr-v4.yml delete mode 100644 .github/workflows/release-v4.yml diff --git a/.github/workflows/codeql-v4.yml b/.github/workflows/codeql-v4.yml deleted file mode 100644 index 2006899c7ed..00000000000 --- a/.github/workflows/codeql-v4.yml +++ /dev/null @@ -1,56 +0,0 @@ -# SPDX-License-Identifier: Apache-2.0 -# Copyright Contributors to the ODPi Egeria project. -# -# For most projects, this workflow file will not need changing; you simply need -# to commit it to your repository. -# -# You may wish to alter this file to override the set of languages analyzed, -# or to provide custom queries or build logic. ---- -name: "CodeQL Analysis v4" - -on: - push: - branches: [main, egeria-release-4*] - pull_request: - # The branches below must be a subset of the branches above - branches: [main, egeria-release-4*] - workflow_dispatch: - -jobs: - analyze: - if: ${{ github.repository == 'odpi/egeria'}} - name: "CodeQL Build v4" - runs-on: ubuntu-latest - permissions: - actions: read - contents: read - security-events: write - - steps: - - name: Checkout repository - uses: actions/checkout@v4.1.0 - - uses: gradle/wrapper-validation-action@v2 - - name: Setup Java JDK - uses: actions/setup-java@v4 - with: - distribution: 'temurin' - java-version: '17' - # Initializes the CodeQL tools for scanning. - - name: Initialize CodeQL - uses: github/codeql-action/init@v3.25.7 - with: - languages: java - queries: security-and-quality - ram: 4096 - - name: Build - uses: gradle/gradle-build-action@v3 - with: - # codeQL requires a full before/after build to compare results. Caching can result in action failing - #cache-read-only: true - cache-disabled: true - arguments: -x javadoc -x test build -PskipOpenTypesFVT - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v3.25.7 - with: - ram: 4096 diff --git a/.github/workflows/merge-v4.yml b/.github/workflows/merge-v4.yml deleted file mode 100644 index 2c6931ff42d..00000000000 --- a/.github/workflows/merge-v4.yml +++ /dev/null @@ -1,145 +0,0 @@ -# SPDX-License-Identifier: Apache-2.0 -# Copyright Contributors to the ODPi Egeria project. ---- -name: "Merge v4" - -# Trigger after code is merged. only on main repo -# - does not run on modification (may be just text) - -on: - push: - branches: [main, egeria-release-4*] - -permissions: - contents: read - -jobs: - build: - permissions: - # for gh-pages - contents: write - runs-on: ubuntu-latest - name: "Merge v4" - if: startsWith(github.repository,'odpi/') - steps: - - uses: actions/checkout@v4.1.0 - name: Checkout source - - uses: gradle/wrapper-validation-action@v2 - - name: Set up JDK - uses: actions/setup-java@v4 - with: - java-version: '17' - distribution: 'temurin' - # Build first - lombok & other pre-processing may be needed. safer... - - name: build and publish to maven central - if: ${{ github.ref == 'refs/heads/main'}} - uses: gradle/gradle-build-action@v3 - with: - cache-read-only: false - arguments: build publish - # Import secrets needed for code signing and distribution - env: - OSSRH_GPG_KEYID: ${{ secrets.OSSRH_GPG_KEYID }} - OSSRH_GPG_PASSPHRASE: ${{ secrets.OSSRH_GPG_PASSPHRASE }} - OSSRH_GPG_PRIVATE_KEY: ${{ secrets.OSSRH_GPG_PRIVATE_KEY }} - ORG_GRADLE_PROJECT_mavenRepoPass: ${{ secrets.OSSRH_TOKEN }} - ORG_GRADLE_PROJECT_mavenRepoUser: ${{ secrets.OSSRH_USERNAME }} - # In other cases just build but don't publish - - name: build (no publish to maven central) - if: ${{ github.ref != 'refs/heads/main'}} - uses: gradle/gradle-build-action@v3 - with: - cache-read-only: false - arguments: build - # Now aggregate javadoc - main only - - name: build - if: ${{ github.ref == 'refs/heads/main'}} - uses: gradle/gradle-build-action@v3 - with: - cache-read-only: false - arguments: aggregateJavadoc - - name: publish aggregate javadoc - if: ${{ github.ref == 'refs/heads/main'}} - uses: JamesIves/github-pages-deploy-action@v4 - with: - branch: gh-pages - folder: build/docs/javadoc - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - name: Login to container registry (Quay.io) - uses: docker/login-action@v3 - with: - registry: quay.io - username: ${{ secrets.QUAY_IO_USERNAME }} - password: ${{ secrets.QUAY_IO_ACCESS_TOKEN }} - - name: Login to container registry (Docker Hub) - uses: docker/login-action@v3 - with: - username: ${{ secrets.DOCKER_HUB_USERNAME }} - password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} - # QEMU is needed for ARM64 build for egeria-configure - # egeria-configure needs to install utilities - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 - - name: Set Release version env variable - run: | - echo "VERSION=$(./gradlew properties --no-daemon --console=plain -q | grep '^version:' | awk '{printf $2}')" >> $GITHUB_ENV - # Publish container images(egeria) to quay.io and docker.io - - name: Copy the distribution content to be used in docker copy command - run: | - mkdir -p ./open-metadata-resources/open-metadata-deployment/docker/egeria/build/assembly - cp -r open-metadata-distribution/open-metadata-assemblies/build/unpacked/egeria-${{ env.VERSION }}-distribution.tar.gz/. open-metadata-resources/open-metadata-deployment/docker/egeria/build/assembly - - name: Build and push(egeria) to quay.io and docker.io (tag latest only for main!) - if: ${{ github.ref == 'refs/heads/main'}} - uses: docker/build-push-action@v5 - with: - push: true - tags: odpi/egeria:${{ env.VERSION }}, odpi/egeria:latest, quay.io/odpi/egeria:${{ env.VERSION }}, quay.io/odpi/egeria:latest - context: ./open-metadata-resources/open-metadata-deployment/docker/egeria - platforms: linux/amd64,linux/arm64 - - name: Build and push(egeria) to quay.io and docker.io (no tag latest) - if: ${{ github.ref != 'refs/heads/main'}} - uses: docker/build-push-action@v5 - with: - push: true - tags: odpi/egeria:${{ env.VERSION }}, quay.io/odpi/egeria:${{ env.VERSION }} - context: ./open-metadata-resources/open-metadata-deployment/docker/egeria - platforms: linux/amd64,linux/arm64 - # Publish container images(egeria-configure) to quay.io and docker.io - - name: Build and push(egeria-configure) to quay.io and docker.io (tag latest) - if: ${{ github.ref == 'refs/heads/main'}} - uses: docker/build-push-action@v5 - with: - push: true - tags: odpi/egeria-configure:${{ env.VERSION }}, odpi/egeria-configure:latest, quay.io/odpi/egeria-configure:${{ env.VERSION }}, quay.io/odpi/egeria-configure:latest - context: ./open-metadata-resources/open-metadata-deployment/docker/configure - platforms: linux/amd64,linux/arm64 - # -- - # Publish container images(egeria-configure) to quay.io and docker.io - - name: Build and push(egeria-configure) to quay.io and docker.io (no tag latest) - if: ${{ github.ref != 'refs/heads/main'}} - uses: docker/build-push-action@v5 - with: - push: true - tags: odpi/egeria-configure:${{ env.VERSION }}, quay.io/odpi/egeria-configure:${{ env.VERSION }} - context: ./open-metadata-resources/open-metadata-deployment/docker/configure - platforms: linux/amd64,linux/arm64 - # -- - - name: Upload Log of any dependency failures - uses: actions/upload-artifact@v4.3.1 - with: - name: Dependency Analysis Report (on failure) - path: build/reports/dependency-analysis/build-health-report.txt - if-no-files-found: ignore - # Mostly for verification - not published to the release itself for now - - name: Upload assemblies - uses: actions/upload-artifact@v4.3.1 - with: - name: Assemblies - path: open-metadata-distribution/open-metadata-assemblies/build/distributions/*.gz - - name: Upload Test coverage report - uses: actions/upload-artifact@v4.3.1 - with: - name: Jacoco Coverage Report - path: build/reports/jacoco/codeCoverageReport - if-no-files-found: ignore diff --git a/.github/workflows/pr-v4.yml b/.github/workflows/pr-v4.yml deleted file mode 100644 index d2dc8c9da85..00000000000 --- a/.github/workflows/pr-v4.yml +++ /dev/null @@ -1,44 +0,0 @@ -# SPDX-License-Identifier: Apache-2.0 -# Copyright Contributors to the ODPi Egeria project. ---- -name: "Verify PR v4" - -on: - pull_request: - branches: [main, egeria-release-4*] - -permissions: - contents: read - -jobs: - build: - runs-on: ubuntu-latest - name: "Verify PR v4" - if: startsWith(github.repository,'odpi/') - steps: - - uses: actions/checkout@v4.1.0 - - uses: gradle/wrapper-validation-action@v2 - - name: Set up JDK - uses: actions/setup-java@v4 - with: - distribution: 'temurin' - java-version: '17' - - name: Build with Gradle - uses: gradle/gradle-build-action@v3 - with: - # Only cache for main build - cache-read-only: true - arguments: | - build - --scan - - name: Upload Test coverage report - uses: actions/upload-artifact@v4.3.1 - with: - name: Jacoco Coverage Report - path: build/reports/jacoco/codeCoverageReport - - name: Upload Log of any dependency failures - uses: actions/upload-artifact@v4.3.1 - with: - name: Dependency Analysis Report (on failure) - path: build/reports/dependency-analysis/build-health-report.txt - if-no-files-found: ignore diff --git a/.github/workflows/release-v4.yml b/.github/workflows/release-v4.yml deleted file mode 100644 index b64659bd026..00000000000 --- a/.github/workflows/release-v4.yml +++ /dev/null @@ -1,94 +0,0 @@ -# SPDX-License-Identifier: Apache-2.0 -# Copyright Contributors to the ODPi Egeria project. ---- -name: "Release v4" - -# Trigger when a Release is created in github -# - does not run on modification (may be just text) - -on: - # No checks for branch or repo - assuming release creation is manual, controlled - release: - types: - - created - branches: [main, egeria-release-4*] - - workflow_dispatch: - -permissions: - contents: read - -jobs: - build: - runs-on: ubuntu-latest - name: "Release" - if: startsWith(github.repository,'odpi/') - steps: - - uses: actions/checkout@v4.1.0 - name: Checkout source - - uses: gradle/wrapper-validation-action@v2 - # Prep for docker builds - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - name: Login to container registry (Quay.io) - uses: docker/login-action@v3 - with: - registry: quay.io - username: ${{ secrets.QUAY_IO_USERNAME }} - password: ${{ secrets.QUAY_IO_ACCESS_TOKEN }} - - name: Login to container registry (docker.io) - uses: docker/login-action@v3 - with: - username: ${{ secrets.DOCKER_HUB_USERNAME }} - password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} - - name: Set up JDK 17 - uses: actions/setup-java@v4 - with: - distribution: 'temurin' - java-version: '17' - - name: build and publish to maven central - uses: gradle/gradle-build-action@v3 - with: - cache-read-only: false - arguments: build publish -Dorg.gradle.parallel=false -Dorg.gradle.caching=false - # Import secrets needed for code signing and distribution - env: - OSSRH_GPG_KEYID: ${{ secrets.OSSRH_GPG_KEYID }} - OSSRH_GPG_PASSPHRASE: ${{ secrets.OSSRH_GPG_PASSPHRASE }} - OSSRH_GPG_PRIVATE_KEY: ${{ secrets.OSSRH_GPG_PRIVATE_KEY }} - ORG_GRADLE_PROJECT_mavenRepoUrl: https://oss.sonatype.org/service/local/staging/deploy/maven2 - ORG_GRADLE_PROJECT_mavenRepoPass: ${{ secrets.OSSRH_TOKEN }} - ORG_GRADLE_PROJECT_mavenRepoUser: ${{ secrets.OSSRH_USERNAME }} - # QEMU is needed for ARM64 build for egeria-configure - # egeria-configure needs to install utilities - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 - - name: Set Release version env variable - run: | - echo "VERSION=$(./gradlew properties --no-daemon --console=plain -q | grep '^version:' | awk '{printf $2}')" >> $GITHUB_ENV - # Publish container images(egeria) to quay.io and docker.io - - name: Copy the distribution content to be used in docker copy command - run: | - mkdir -p ./open-metadata-resources/open-metadata-deployment/docker/egeria/build/assembly - cp -r open-metadata-distribution/open-metadata-assemblies/build/unpacked/egeria-${{ env.VERSION }}-distribution.tar.gz/. open-metadata-resources/open-metadata-deployment/docker/egeria/build/assembly - - name: Build and push(egeria) to quay.io and docker.io - uses: docker/build-push-action@v5 - with: - push: true - tags: odpi/egeria:${{ env.VERSION }}, odpi/egeria:stable, quay.io/odpi/egeria:${{ env.VERSION }}, quay.io/odpi/egeria:stable - context: ./open-metadata-resources/open-metadata-deployment/docker/egeria - platforms: linux/amd64,linux/arm64 - # Publish container images(egeria-configure) to quay.io and docker.io - - name: Build and push(egeria-configure) to quay.io and docker.io - uses: docker/build-push-action@v5 - with: - push: true - tags: odpi/egeria-configure:${{ env.VERSION }}, odpi/egeria-configure:stable, quay.io/odpi/egeria-configure:${{ env.VERSION }}, quay.io/odpi/egeria-configure:stable - context: ./open-metadata-resources/open-metadata-deployment/docker/configure - platforms: linux/amd64,linux/arm64 - # Mostly for verification - not published to the release itself for now - - name: Upload assemblies - uses: actions/upload-artifact@v4.3.1 - with: - name: Assemblies - path: open-metadata-distribution/open-metadata-assemblies/build/distributions/*.gz From 207bb6bb24124dd2cab32cc1424bbbff8aa3318d Mon Sep 17 00:00:00 2001 From: Mandy Chessell Date: Mon, 10 Jun 2024 12:04:49 +0100 Subject: [PATCH 3/3] Readd v4 PR request to allow merge Signed-off-by: Mandy Chessell --- .github/workflows/pr-v4.yml | 44 +++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 .github/workflows/pr-v4.yml diff --git a/.github/workflows/pr-v4.yml b/.github/workflows/pr-v4.yml new file mode 100644 index 00000000000..d2dc8c9da85 --- /dev/null +++ b/.github/workflows/pr-v4.yml @@ -0,0 +1,44 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright Contributors to the ODPi Egeria project. +--- +name: "Verify PR v4" + +on: + pull_request: + branches: [main, egeria-release-4*] + +permissions: + contents: read + +jobs: + build: + runs-on: ubuntu-latest + name: "Verify PR v4" + if: startsWith(github.repository,'odpi/') + steps: + - uses: actions/checkout@v4.1.0 + - uses: gradle/wrapper-validation-action@v2 + - name: Set up JDK + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '17' + - name: Build with Gradle + uses: gradle/gradle-build-action@v3 + with: + # Only cache for main build + cache-read-only: true + arguments: | + build + --scan + - name: Upload Test coverage report + uses: actions/upload-artifact@v4.3.1 + with: + name: Jacoco Coverage Report + path: build/reports/jacoco/codeCoverageReport + - name: Upload Log of any dependency failures + uses: actions/upload-artifact@v4.3.1 + with: + name: Dependency Analysis Report (on failure) + path: build/reports/dependency-analysis/build-health-report.txt + if-no-files-found: ignore