diff --git a/README.md b/README.md index 4e2ec5f7..1c0690d7 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ This repository contains the backend code for the Policy-Hub written in C#. -For **information about the policy hub**, please refer to the documentation, especially the context and scope section in the [architecture documentation](./docs/technical-documentation/architecture). +For **information about the policy hub**, please refer to the documentation, especially the context and scope section in the [architecture documentation](./docs/architecture). For **installation** details, please refer to the [README.md](./charts/policy-hub/README.md) of the provided helm chart. @@ -25,7 +25,7 @@ dotnet run ## Known Issues and Limitations -See [Known Knowns](/docs/technical-documentation/known-knowns/known-issues-and-limitations.md). +See [Known Knowns](/docs/known-knowns/known-issues-and-limitations.md). ## Notice for Docker image diff --git a/docs/admin/add-data-process/index.md b/docs/admin/add-data-process/index.md new file mode 100644 index 00000000..377529ea --- /dev/null +++ b/docs/admin/add-data-process/index.md @@ -0,0 +1,142 @@ +# Summary + +The following documentation gives an overview of how to add additional data to the Policy Hub. + +## Adding new Policies + +To add new policies the following steps must be executed: + +### Add Policy + +To add new Attributes you need to add an entry to the [policies](/src/database/PolicyHub.Migrations/Seeder/Data/policies.json) Seeding file. + +The entry should look like the following: + +```json + { + "id": "uuid for the policy, this is needed in the process later on", + "kind_id": "one of the policy kinds mentioned below (as number)", + "technical_key": "the technical key which is used to query it later in the process", + "description": "a description of the policy", + "is_active": "either true if the attribute should be active or false if the attribute shouldn't be active", + "attribute_key_id": "one of the attribute keys mentioned below (as number)", + }, +``` + +**PolicyKindId** + +```c# +public enum PolicyKindId +{ + BusinessPartnerNumber = 1, + Membership = 2, + Framework = 3, + Purpose = 4, + Dismantler = 5, + ContractReference = 6 +} +``` + +**Attribute Keys** + +```c# +public enum AttributeKeyId +{ + Regex = 1, + Static = 2, + DynamicValue = 3, + Brands = 4, + Version = 5 +} +``` + +### Assign policy to type + +The created policy must be assigned to at least one policy type. To assign the policy to a type you need to add an entry to the [policy_assigned_types](/src/database/PolicyHub.Migrations/Seeder/Data/policy_assigned_types.json) Seeding file. + +The entry should look like the following: + +```json +{ + "policy_id": "value of the id column of the newly added policy", + "policy_type_id": "one of the policy type ids mentioned below (as number)", + "is_active": "either true if the attribute should be active or false if the attribute shouldn't be active" +} +``` + +**PolicyTypeId** + +```c# +public enum PolicyTypeId +{ + Access = 1, + Usage = 2 +} +``` + +### Assign policy to use case + +The created policy must be assigned to at least one use case. To assign the policy to a use case you need to add an entry to the [policy_assigned_use_cases](/src/database/PolicyHub.Migrations/Seeder/Data/policy_assigned_use_cases.json) Seeding file. + +The entry should look like the following: + +```json +{ + "policy_id": "value of the id column of the newly added policy", + "use_case_id": "one of the use case ids mentioned below (as number)", + "is_active": "either true if the attribute should be active or false if the attribute shouldn't be active" +} +``` + +**UseCaseId** + +```c# +public enum UseCaseId +{ + Traceability = 1, + Quality = 2, + PCF = 3, + Behavioraltwin = 4, + Businesspartner = 5, + CircularEconomy = 6, + DemandCapacity = 7 +} +``` + +## Adding new Attributes + +To add new Attributes you need to add an entry to the [policy_attributes](/src/database/PolicyHub.Migrations/Seeder/Data/policy_attributes.json) Seeding file. + +The entry should look like the following: + +```json +{ + "id": "uuid", + "policy_id": "id of an policy you want to link the attribute to", + "key": "one of the attribute keys mentioned above (as number)", + "attribute_value": "the specific value of the attribute you want to set", + "is_active": "either true if the attribute should be active or false if the attribute shouldn't be active" +} +``` + +Depending on the attribute key which is set the output will slightly change. A regex Attribute will check the set value of a policy if it matches the regex. A dynamic value will take the user input of the value field. If non is set by the user `{dynamicValue}` is taken. For `Static`, `Brands` and `Version` Attributes the value will just render the content of the `attribute_value` column. + +To make a Attribute available it must be set to `is_active` = `true` and a link to a use case must be added. For that a new entry in the [policy_attribute_assigned_use_cases](/src/database/PolicyHub.Migrations/Seeder/Data/policy_attribute_assigned_use_cases.json) must be added. The entry should look like the following: + +```json +{ + "attribute_id": "value of the id column of the newly added policy_attribute", + "use_case_id": "one of the use case ids mentioned above (as number)", + "is_active": "either true if the attribute should be active or false if the attribute shouldn't be active" +} +``` + +It is possible to link an attribute to multiple UseCases. + +## NOTICE + +This work is licensed under the [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0). + +- SPDX-License-Identifier: Apache-2.0 +- SPDX-FileCopyrightText: 2024 Contributors to the Eclipse Foundation +- Source URL: https://github.com/eclipse-tractusx/policy-hub diff --git a/docs/technical-documentation/dev-process/Dev-flow_deploy-dev-env.md b/docs/admin/dev-process/Dev-flow_deploy-dev-env.md similarity index 100% rename from docs/technical-documentation/dev-process/Dev-flow_deploy-dev-env.md rename to docs/admin/dev-process/Dev-flow_deploy-dev-env.md diff --git a/docs/technical-documentation/dev-process/Dev-flow_git-diagram.md b/docs/admin/dev-process/Dev-flow_git-diagram.md similarity index 100% rename from docs/technical-documentation/dev-process/Dev-flow_git-diagram.md rename to docs/admin/dev-process/Dev-flow_git-diagram.md diff --git a/docs/technical-documentation/dev-process/Enumeration Handling.md b/docs/admin/dev-process/Enumeration Handling.md similarity index 100% rename from docs/technical-documentation/dev-process/Enumeration Handling.md rename to docs/admin/dev-process/Enumeration Handling.md diff --git a/docs/technical-documentation/dev-process/How to contribute.md b/docs/admin/dev-process/How to contribute.md similarity index 100% rename from docs/technical-documentation/dev-process/How to contribute.md rename to docs/admin/dev-process/How to contribute.md diff --git a/docs/technical-documentation/release-process/Release Process.md b/docs/admin/release-process/Release Process.md similarity index 98% rename from docs/technical-documentation/release-process/Release Process.md rename to docs/admin/release-process/Release Process.md index dc725dca..a3ff1c9c 100644 --- a/docs/technical-documentation/release-process/Release Process.md +++ b/docs/admin/release-process/Release Process.md @@ -33,7 +33,7 @@ Be aware that migrations coming release branches for release candidates or from The version needs to be updated in the `src` directory within the 'Directory.Build.props' file. -Also, bump the chart and app version in the [Chart.yaml](../../../charts/policy-hub/Chart.yaml) and the version of the images in the [values.yaml](../../../charts/policy-hub/values.yaml). +Also, bump the chart and app version in the [Chart.yaml](../../../charts/policy-hub/Chart.yaml) and the version of the images in the [values.yaml](../../../charts/charts/policy-hub/values.yaml). _Consortia relevant: Update the version of the targetRevision tag in the [argocd-app-templates](../../../consortia/argocd-app-templates/), used for consortia-environments._ diff --git a/docs/technical-documentation/requests/example-requests.md b/docs/api/requests/example-requests.md similarity index 97% rename from docs/technical-documentation/requests/example-requests.md rename to docs/api/requests/example-requests.md index b40485a9..27238da5 100644 --- a/docs/technical-documentation/requests/example-requests.md +++ b/docs/api/requests/example-requests.md @@ -217,7 +217,7 @@ Multiple constrains example: ``` -If you want to try it out, check the [postman collection](/docs/developer/Technical-Documentation/requests/policy-hub.postman_collection.json) +If you want to try it out, check the [postman collection](./policy-hub.postman_collection.json) ## NOTICE diff --git a/docs/technical-documentation/requests/policy-hub.postman_collection.json b/docs/api/requests/policy-hub.postman_collection.json similarity index 100% rename from docs/technical-documentation/requests/policy-hub.postman_collection.json rename to docs/api/requests/policy-hub.postman_collection.json diff --git a/docs/technical-documentation/architecture/Architecture Constraints.md b/docs/architecture/Architecture Constraints.md similarity index 100% rename from docs/technical-documentation/architecture/Architecture Constraints.md rename to docs/architecture/Architecture Constraints.md diff --git a/docs/technical-documentation/architecture/Context and scope.md b/docs/architecture/Context and scope.md similarity index 100% rename from docs/technical-documentation/architecture/Context and scope.md rename to docs/architecture/Context and scope.md diff --git a/docs/technical-documentation/architecture/Development Concept.md b/docs/architecture/Development Concept.md similarity index 98% rename from docs/technical-documentation/architecture/Development Concept.md rename to docs/architecture/Development Concept.md index e99e60f1..9307fce9 100644 --- a/docs/technical-documentation/architecture/Development Concept.md +++ b/docs/architecture/Development Concept.md @@ -2,7 +2,7 @@ ## Build, test, deploy -Details to the build, test and deploy process can get found under the following md file: [Release Process](/docs/technical-documentation/release-process/Release%20Process.md) +Details to the build, test and deploy process can get found under the following md file: [Release Process](/docs/admin/release-process/Release%20Process.md) ## Development Guidelines diff --git a/docs/technical-documentation/architecture/Requirements.md b/docs/architecture/Requirements.md similarity index 100% rename from docs/technical-documentation/architecture/Requirements.md rename to docs/architecture/Requirements.md diff --git a/docs/technical-documentation/architecture/Security_Assessment.md b/docs/architecture/Security_Assessment.md similarity index 100% rename from docs/technical-documentation/architecture/Security_Assessment.md rename to docs/architecture/Security_Assessment.md diff --git a/docs/technical-documentation/architecture/Solution strategy.md b/docs/architecture/Solution strategy.md similarity index 100% rename from docs/technical-documentation/architecture/Solution strategy.md rename to docs/architecture/Solution strategy.md diff --git a/docs/technical-documentation/architecture/Whitebox Overall System.md b/docs/architecture/Whitebox Overall System.md similarity index 100% rename from docs/technical-documentation/architecture/Whitebox Overall System.md rename to docs/architecture/Whitebox Overall System.md diff --git a/docs/technical-documentation/authentication/authentication.md b/docs/architecture/authentication/authentication.md similarity index 100% rename from docs/technical-documentation/authentication/authentication.md rename to docs/architecture/authentication/authentication.md diff --git a/docs/technical-documentation/database/db-view.md b/docs/architecture/database/db-view.md similarity index 100% rename from docs/technical-documentation/database/db-view.md rename to docs/architecture/database/db-view.md diff --git a/docs/technical-documentation/database/seeding.md b/docs/architecture/database/seeding.md similarity index 100% rename from docs/technical-documentation/database/seeding.md rename to docs/architecture/database/seeding.md diff --git a/docs/technical-documentation/architecture/operational-concept.md b/docs/architecture/operational-concept.md similarity index 100% rename from docs/technical-documentation/architecture/operational-concept.md rename to docs/architecture/operational-concept.md diff --git a/docs/technical-documentation/known-knowns/known-issues-and-limitations.md b/docs/known-knowns/known-issues-and-limitations.md similarity index 100% rename from docs/technical-documentation/known-knowns/known-issues-and-limitations.md rename to docs/known-knowns/known-issues-and-limitations.md