From 7e877f5e18a5c504b5af256237d9ebeabf823581 Mon Sep 17 00:00:00 2001 From: Martin Maul Date: Wed, 27 Mar 2024 13:50:07 +0100 Subject: [PATCH 1/3] chore(documentation): xxx update release and guideline documentation --- docs/RELEASE.md | 80 ++++++++++++++++++++++++------------------ frontend/GUIDELINES.md | 7 ++++ 2 files changed, 52 insertions(+), 35 deletions(-) diff --git a/docs/RELEASE.md b/docs/RELEASE.md index 0d6d3b5aea..a2d52d4eab 100644 --- a/docs/RELEASE.md +++ b/docs/RELEASE.md @@ -3,40 +3,50 @@

Product Traceability FOSS Release guide

-## Release an app -Prerequisite: -Make sure eclipse / catena git repositories are in sync +# Release an app -1) Decide which version will be incremented. Following shows example for 1.0.0 -2) Create a release branch in [IRS](https://github.com/eclipse-tractusx/item-relationship-service) named release/trace-x-irs-client-lib-release +### Prerequisite: +- Make sure eclipse / catena git repositories are in sync +- Before releasing Trace-X, it is required to go through the [IRS Library Release](#irs-library-release) steps + +### IRS Library Release +The goal is to not use a -SNAPSHOT version in the Trace-X Release. +1) Check if the irs-registry-client version has a -SNAPSHOT suffix: [IRS Repo](https://github.com/eclipse-tractusx/item-relationship-service/blob/f731e2e7403b738d516a7a25b19c756cc32b04f3/pom.xml#L76) +2) If yes, continue with the next steps. If no, skip to the [Trace-X Release process](#trace-x-release-process) 3) Click on the [Update irs-registry-client Version workflow](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/update-registry-library.yaml). -4) Select "Run workflow," choose the release branch and select the type of version increment major, minor or patch. Use the Semantic Versioning guidelines to accurately determine the specific type of version increment. [Semantic Versioning](https://semver.org/spec/v2.0.0.html). Don't forget to check the box to remove the snapshot. -5) The irs lib version in (irs)[https://github.com/eclipse-tractusx/item-relationship-service/blob/65a42336b7ec7ae50690ec7590d05d8e3b15555a/pom.xml#L76] should align with the potential (newer one)[https://github.com/catenax-ng/tx-traceability-foss/blob/fb1130d4c1dd4f869e61d334310e99bc191fa0c7/pom.xml#L103] in trace-x main -6) A pull request (name: Update irs-registry-client to "Version") will be generated in which you have to make sure the irs lib version is now correct (change it manually if necessary). Check if Actions finish successfully. (If Dash IP Check fails, update the DEPENDENCIES file with the mvn command on the generated pull request branch) -7) Merge the created Pull request and make sure the release branch is deleted afterward (default behaviour). -8) In [IRS](https://github.com/eclipse-tractusx/item-relationship-service), the gitHub action [Upload to Central Maven Registry ](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/maven-deploy.yaml) will release the irs-registry-client library with the version defined in step 3 -9) Create and Checkout release branch on catena /release/1.0.0 -10) Update in the above created release branch to the created one in step 3. -11) Edit changelog: Align the new version (1.0.0) with the changes and add new UNRELEASED section -12) Edit /charts/traceability-foss/CHANGELOG.md -13) Add an Entry for an incremented (patch) version (1.0.0 -> 1.0.1) -14) Push onto /release/1.0.0 catena and eclipse -15) Open Release App Page Catena: https://github.com/catenax-ng/tx-traceability-foss/releases -16) Draft a new release -17) On dropdown choose a tag - use the version 1.0.0 (Create new tag will appear - select it) -18) On dropdown target use your /release/1.0.0 -19) Title = Version of app -> 1.0.0 -20) Description = Changelog Content of app -21) Checkbox set as latest release -22) Verify that github action [Release](https://github.com/catenax-ng/tx-traceability-foss/actions/workflows/release.yaml) generation has been triggered -23) Verify that an automatic pull request has been opened (Prepare Helm release for next version) -24) Validate that the versions within that pull requests are correct -25) Merge pull request (Prepare Helm release for next version) -26) Merge release branch into main (when merging make sure to restore release branch since it should stay) -27) Open the github action for helm release generation: https://github.com/catenax-ng/tx-traceability-foss/actions/workflows/helm-chart-release.yaml -28) Execute it from main branch -29) Validate that the helm charts release has been generated within the release page -30) Create a new branch from release/1.0.0 and name it release/helm-environments-1.0.0 (helm app version not chart version) -31) Repeat step 8 to 23 for tractus-x: [GitHub Releases page](https://github.com/eclipse-tractusx/traceability-foss/releases) -32) Sync catena and eclipse main branch -33) Create a message in the Trace-X channel of the Eclipse Foundation Chat to notify the community about the new release (add a link to the tractus-x release) +4) Select "Run workflow" select the type of version increment major, minor or patch (Can be adjusted on generated PR branch). Check the box to remove the snapshot. Click on "Run". +5) A pull request (name: Update irs-registry-client to "Version") will be generated in which you have to make sure the irs lib version is now correct (change it manually if necessary). +6) Merge the generated Pull request +7) The GitHub action [Upload to Central Maven Registry ](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/maven-deploy.yaml) will automatically release the irs-registry-client library with the new version defined in step 4 + +### Trace-X Release process + +1) Decide which to which version the release trace-x will be incremented. Following shows example for releasing a version 1.0.0 +2) Create and Checkout release branch on catena /release/1.0.0 +3) Optional: If [IRS Library Release](#irs-library-release) was needed: + 1) If the action of [IRS Library Release](#irs-library-release) step 7 was executed successfully + 2) Update in the above created release +4) Edit changelog: Align the new version (1.0.0) with the changes and add a new UNRELEASED section +5) Edit /charts/traceability-foss/CHANGELOG.md +6) Add an Entry for an incremented (patch) version (1.0.0 -> 1.0.1) +7) Update the [Compatability Matrix](https://github.com/catenax-ng/tx-traceability-foss/blob/main/COMPATIBILITY_MATRIX.md) with a new entry for the release version +8) Push onto /release/1.0.0 catena and eclipse +9) Open Release App Page Catena: https://github.com/catenax-ng/tx-traceability-foss/releases +10) Draft a new release +11) On dropdown choose a tag - use the version 1.0.0 (Create new tag will appear - select it) +12) On dropdown target use your /release/1.0.0 +13) Title = Version of app -> 1.0.0 +14) Description = Changelog Content of app +15) Checkbox set as latest release +16) Verify that GitHub action [Release](https://github.com/catenax-ng/tx-traceability-foss/actions/workflows/release.yaml) generation has been triggered +17) Verify that an automatic pull request has been opened (Prepare Helm release for next version) +18) Validate that the versions within that pull requests are correct +19) Merge pull request (Prepare Helm release for next version) +20) Merge release branch into main (when merging make sure to restore release branch since it should stay) +21) Open the GitHub action for helm release generation: https://github.com/catenax-ng/tx-traceability-foss/actions/workflows/helm-chart-release.yaml +22) Execute it from main branch +23) Validate that the helm charts release has been generated within the release page +24) Create a new branch from release/1.0.0 and name it release/helm-environments-1.0.0 (helm app version not chart version) +25) Repeat step 9 to 24 for tractus-x: [GitHub Releases page](https://github.com/eclipse-tractusx/traceability-foss/releases) +26) Sync catena and eclipse main branch +27) Create a message in the Trace-X channel of the Eclipse Foundation Chat to notify the community about the new release (add a link to the tractus-x release) diff --git a/frontend/GUIDELINES.md b/frontend/GUIDELINES.md index 7e62794b6f..b24c67ca98 100644 --- a/frontend/GUIDELINES.md +++ b/frontend/GUIDELINES.md @@ -206,6 +206,13 @@ You might find some CSS warnings on vscode. To disable those, you must configure This prevents the default linter from validating the css. +### Capitalization +Please make sure to follow this [capitalization guideline](https://developers.google.com/style/capitalization) to keep consistent capitalization throughout the UI. + +The most significant rules are: +- The start of a header / label / sentence begins with an upper case followed by lowercase letters +- Domain specific names such as "As-Built", "As-Planned" can also be written in upper case even when the letter is not at the start of a header / label / sentence. + ### Icons We use the open source icons from [Material Icons](https://fonts.google.com/icons?query=Material+Icon). From 387f75c53fd4b5abd793d68fa92204bc2c179e11 Mon Sep 17 00:00:00 2001 From: Martin Maul Date: Wed, 27 Mar 2024 14:08:36 +0100 Subject: [PATCH 2/3] chore(documentation): xxx link rights and role matrix --- docs/src/docs/arc42/cross-cutting/safety-security.adoc | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/src/docs/arc42/cross-cutting/safety-security.adoc b/docs/src/docs/arc42/cross-cutting/safety-security.adoc index 317366bee7..afe3c3c281 100644 --- a/docs/src/docs/arc42/cross-cutting/safety-security.adoc +++ b/docs/src/docs/arc42/cross-cutting/safety-security.adoc @@ -13,8 +13,7 @@ JWT token should also contain two claims: The list of values will be converted to roles by Trace-X. Currently, Trace-X API handles three roles: **'User'** and **'Supervisor'** and **'Admin'.** -// TODO: Add Link to the role matrix -You can have a look at the rights and roles matrix in the system overview of the administration guide. +You can have a look at the https://github.com/eclipse-tractusx/traceability-foss/blob/main/docs/src/docs/administration/system-overview.adoc#rights-and-role-matrix-of-trace-x[rights and role matrix] in the system overview of the administration guide. === Trace-X as EDC client From 7b3b1bbb9e659854db9cbecd8ce45b5810ae48fa Mon Sep 17 00:00:00 2001 From: Martin Maul Date: Wed, 27 Mar 2024 14:54:24 +0100 Subject: [PATCH 3/3] chore(documentation): changelog --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e652949fab..4d18120273 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,6 +17,7 @@ _**For better traceability add the corresponding GitHub issue number in each cha - #706 Created notification classes to support both alert and investigations - #706 Notification controller having the same endpoints as alerts and investigations controllers - #736 add contractAgreementId as searchable field for /contracts +- Added capitalization section in guidelines.md ### Changed - #709 Bumped spring-core from 6.0.17 to 6.1.5 @@ -33,6 +34,7 @@ _**For better traceability add the corresponding GitHub issue number in each cha - #718 update maven-project-info-reports-plugin from 3.4.5 to 3.5.0 - #718 update jsonschema2pojo-core from 1.1.1 to 1.2.1 - #718 migrate Spring Boot from 3.1.9 to 3.2.4 +- Improved the release documentation ### Removed - Shedlock, resilence4j, templateResolver as not used anymore