OS Core Lib Azure merge requestshttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests2023-08-18T12:46:33Zhttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/25Adding conditional propery for blobStore class2023-08-18T12:46:33ZAman VermaAdding conditional propery for blobStore class## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it? YES
* [YES/NO] I have updated the documentation accordingly. YES
* [YES/NO/NA...## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it? YES
* [YES/NO] I have updated the documentation accordingly. YES
* [YES/NO/NA] I have added tests to cover my changes. NA
* [YES/NO/NA] All new and existing tests passed. YES
* [YES/NO/NA] My code follows the code style of this project. YES
* [YES/NO/NA] I ran lint checks locally prior to submission. YES
## What is the issue or story related to the change?
-------------------------------------
<!-- Please describe the current behavior that you are modifying, 'or' link to a relevant issue. -->
Description:
Adding `ConditionalOnProperty` for blobStore related classes.
This class requires certain properties to be defined in the application.properties file of service which wants to consume `core-lib-azure`. Since not all the services want to consume blobStore class, making the related classes conditional
Issue: <!-- Link any __GitLab__ workitem(s) to this pull request. -->
## Does this introduce a breaking change?
-------------------------------------
- [YES/NO]
NO
<!-- If this introduces a breaking change, please describe the impact and migration path for existing applications below. -->
## Other information
-------------------------------------
<!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. -->
FYI @kibattul @polavishnu @dkodeih @danielschollM1 - Release 0.1Aman VermaAman Vermahttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/24update client lib to support multi-tenancy2023-08-18T12:46:36ZNeelesh Thakurupdate client lib to support multi-tenancyM1 - Release 0.1https://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/23BugFix: moving client creation logic out of constructor2023-08-18T12:46:37ZAman VermaBugFix: moving client creation logic out of constructor## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it? YES
* [YES/NO] I have updated the documentation accordingly. NA
* [YES/NO/NA]...## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it? YES
* [YES/NO] I have updated the documentation accordingly. NA
* [YES/NO/NA] I have added tests to cover my changes. NA
* [YES/NO/NA] All new and existing tests passed. YES
* [YES/NO/NA] My code follows the code style of this project. YES
* [YES/NO/NA] I ran lint checks locally prior to submission. YES
## What is the issue or story related to the change?
-------------------------------------
<!-- Please describe the current behavior that you are modifying, 'or' link to a relevant issue. -->
Description:
Currently, logic to initialize `BlobServiceClient` is inside the constructor. But it relies on `DefaultAzureCredential` bean which has been `Autowired` and at run time we get `NullRefException` as the autowired bean is yet to be picked
FIX: Tagging the constructor with `Autowired` tag so that other autowired components can be passed as parameters.
Issue: <!-- Link any __GitLab__ workitem(s) to this pull request. -->
TESTING: Tested the new package version locally with schema service. All ITs passing.
## Does this introduce a breaking change?
-------------------------------------
- [YES/NO]
NO
<!-- If this introduces a breaking change, please describe the impact and migration path for existing applications below. -->
## Other information
-------------------------------------
<!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. -->
FYI @kibattul , @polavishnuM1 - Release 0.1Aman VermaAman Vermahttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/22using BlobServiceCientFactory instead of BlobContainerClientFactory2023-08-18T12:46:39ZAman Vermausing BlobServiceCientFactory instead of BlobContainerClientFactory## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it? YES
* [YES/NO] I have updated the documentation accordingly. YES
* [YES/NO/NA...## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it? YES
* [YES/NO] I have updated the documentation accordingly. YES
* [YES/NO/NA] I have added tests to cover my changes. YES
* [YES/NO/NA] All new and existing tests passed. YES
* [YES/NO/NA] My code follows the code style of this project. YES
* [YES/NO/NA] I ran lint checks locally prior to submission. YES
## What is the issue or story related to the change?
-------------------------------------
<!-- Please describe the current behavior that you are modifying, 'or' link to a relevant issue. -->
Description:
Consuming the `BlobServiceClientFactory`, as introduced in this MR: https://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/20
The previous implementation uses `BlobContainerClientFactory` which returns an instance of `BlobContainerClient`. Having BlobContainerClient takes away the flexibility to choose the storage container name on demand, as the container client is tied to a <storage account, container name> combo. Using the service client removes this dependency. Now the container name can be parameterized.
Issue: <!-- Link any __GitLab__ workitem(s) to this pull request. -->
## Does this introduce a breaking change?
-------------------------------------
- [YES/NO]
NO
<!-- If this introduces a breaking change, please describe the impact and migration path for existing applications below. -->
## Other information
-------------------------------------
<!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. -->
Next set of changes would be to update Schema service and any other service using BlobStore class, to pass the container name in parameters.
FYI @harshit283 , @kibattul , @polavishnuM1 - Release 0.1Aman VermaAman Vermahttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/21Fixing an Exception Scenario Handling in CosmosStore2023-08-18T12:46:41Zharshit aggarwalFixing an Exception Scenario Handling in CosmosStoreFixing an Exception Scenario Handling in CosmosStore
**Change**:
Throwing 500 exception in case of IOException rather than sending empty responseFixing an Exception Scenario Handling in CosmosStore
**Change**:
Throwing 500 exception in case of IOException rather than sending empty responseM1 - Release 0.1harshit aggarwalharshit aggarwalhttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/20adding BlobServiceClientFactory2023-08-18T12:46:43ZAman Vermaadding BlobServiceClientFactory## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it? YES
* [YES/NO] I have updated the documentation accordingly. YES
* [YES/NO/NA...## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it? YES
* [YES/NO] I have updated the documentation accordingly. YES
* [YES/NO/NA] I have added tests to cover my changes. NA
* [YES/NO/NA] All new and existing tests passed. YES
* [YES/NO/NA] My code follows the code style of this project. YES
* [YES/NO/NA] I ran lint checks locally prior to submission. YES
## What is the issue or story related to the change?
-------------------------------------
<!-- Please describe the current behavior that you are modifying, 'or' link to a relevant issue. -->
Description:
Adding a factory method get instance of `BlobServiceClient` based on the data partitionId passes.
The current implementation of blobStore does not offer flexibility to query across different containers as it uses the `BlobContinerCLient` hence both `storage account name` and `container name` are fixed.
Issue: <!-- Link any __GitLab__ workitem(s) to this pull request. -->
## Does this introduce a breaking change?
-------------------------------------
- [YES/NO]
NO
<!-- If this introduces a breaking change, please describe the impact and migration path for existing applications below. -->
## Other information
-------------------------------------
<!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. -->
This PR only introduces interface and a class implementing it. these changes are not being consumed currently. Will send consecutive MRs to introduce related changes
FYI @kibattul , @polavishnuM1 - Release 0.1Aman VermaAman Vermahttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/19Updating the MR template2023-08-18T12:46:44ZAman VermaUpdating the MR template## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it?
YES
* [YES/NO] I have updated the documentation accordingly.
YES
* [YES/NO/...## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it?
YES
* [YES/NO] I have updated the documentation accordingly.
YES
* [YES/NO/NA] I have added tests to cover my changes.
NA
* [YES/NO/NA] All new and existing tests passed.
NA
* [YES/NO/NA] My code follows the code style of this project.
NA
* [YES/NO/NA] I ran lint checks locally prior to submission.
NA
## What is the issue or story related to the change?
-------------------------------------
<!-- Please describe the current behavior that you are modifying, 'or' link to a relevant issue. -->
Description:
updating the MR template to add new line items.
Issue: <!-- Link any __GitLab__ workitem(s) to this pull request. -->
## Does this introduce a breaking change?
-------------------------------------
- [YES/NO]
NO
<!-- If this introduces a breaking change, please describe the impact and migration path for existing applications below. -->
## Other information
-------------------------------------
<!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. -->
@kibattul, @danielscholl FYIM1 - Release 0.1Aman VermaAman Vermahttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/18Added mdc context on start of request2023-08-18T12:46:46ZKishore BattulaAdded mdc context on start of requestM1 - Release 0.1Hema Vishnu Pola [Microsoft]Hema Vishnu Pola [Microsoft]https://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/17Updating readme with instructions to support new logging changes2023-08-18T12:46:48Zharshit aggarwalUpdating readme with instructions to support new logging changesThis PR contains following
1. Updating readme with instructions to support new logging changes
2. Adding environment variables to use the TenantFactoryImpl class
3. Adding @Lazy for lazy instantiation of cosmosdbconfiguration
4. Removin...This PR contains following
1. Updating readme with instructions to support new logging changes
2. Adding environment variables to use the TenantFactoryImpl class
3. Adding @Lazy for lazy instantiation of cosmosdbconfiguration
4. Removing application.properties fileM1 - Release 0.1https://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/16adding CreateItem method to the comosStore class2023-08-18T12:46:50ZAman Vermaadding CreateItem method to the comosStore class## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it?
adding CreateItem method to the comosStore class. Currently we have `upsertI...## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it?
adding CreateItem method to the comosStore class. Currently we have `upsertItem` method which silently creates/ updates entries. There are use cases where we don't want to update but want to throw exception showing this entry was already present.
* [YES/NO] I have updated the documentation accordingly.
YES
* [YES/NO/NA] I have added tests to cover my changes.
YES
* [YES/NO/NA] All new and existing tests passed.
* [YES/NO/NA] My code follows the code style of this project.
* [YES/NO/NA] I ran lint checks locally prior to submission.
## What is the issue or story related to the change?
-------------------------------------
<!-- Please describe the current behavior that you are modifying, 'or' link to a relevant issue. -->
Description:
Issue: <!-- Link any __GitLab__ workitem(s) to this pull request. -->
## Does this introduce a breaking change?
-------------------------------------
- [YES/NO]
<!-- If this introduces a breaking change, please describe the impact and migration path for existing applications below. -->
## Other information
-------------------------------------
<!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. -->M1 - Release 0.1Aman VermaAman Vermahttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/15removign the @Lazy annotation from final class2023-08-18T12:46:52ZAman Vermaremovign the @Lazy annotation from final class## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it?
Removing the @Lazy annotation from final class `BlobContainerClient`. Marki...## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it?
Removing the @Lazy annotation from final class `BlobContainerClient`. Marking it @lazy causes the bean creation to fail at run time. I don't have any document supporting why removing @lazy works. But i tried it out locally and it does the job
* [YES/NO] I have updated the documentation accordingly.
N/A
* [YES/NO/NA] I have added tests to cover my changes.
N/A
* [YES/NO/NA] All new and existing tests passed.
N/A
* [YES/NO/NA] My code follows the code style of this project.
N/A
* [YES/NO/NA] I ran lint checks locally prior to submission.
N/A
## What is the issue or story related to the change?
-------------------------------------
<!-- Please describe the current behavior that you are modifying, 'or' link to a relevant issue. -->
Description:
Issue: <!-- Link any __GitLab__ workitem(s) to this pull request. -->
## Does this introduce a breaking change?
-------------------------------------
- [YES/NO]
NO
<!-- If this introduces a breaking change, please describe the impact and migration path for existing applications below. -->
## Other information
-------------------------------------
<!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. -->M1 - Release 0.1Aman VermaAman Vermahttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/14adding blobStore class to facilitate interaction with azure blob storage2023-08-18T12:46:54ZAman Vermaadding blobStore class to facilitate interaction with azure blob storage## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it?
Adding BlobStore class which is similar to cosmosStore class. This class fa...## All Submissions:
-------------------------------------
* [YES/NO] I have added an explanation of what changes in this merge do and why we should include it?
Adding BlobStore class which is similar to cosmosStore class. This class facilitates interaction with azure blob storage, namely blob creation, deletion and reading from blob. It is required in azure-core-lib as there are many services that require consumption of blob storage and each has it's own implementation of the same.
* [YES/NO] I have updated the documentation accordingly.
yes
* [YES/NO/NA] I have added tests to cover my changes.
yes, Unit tests.
* [YES/NO/NA] All new and existing tests passed.
Yes.
* [YES/NO/NA] My code follows the code style of this project.
Yes.
* [YES/NO/NA] I ran lint checks locally prior to submission.
yes
## What is the issue or story related to the change?
-------------------------------------
<!-- Please describe the current behavior that you are modifying, 'or' link to a relevant issue. -->
Description:
Issue: <!-- Link any __GitLab__ workitem(s) to this pull request. -->
## Does this introduce a breaking change?
-------------------------------------
- [YES/NO]
NO
<!-- If this introduces a breaking change, please describe the impact and migration path for existing applications below. -->
## Other information
-------------------------------------
<!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. -->
FYI @kibattul , @polavishnu , @danielscholl , @dkodeihM1 - Release 0.1Aman VermaAman Vermahttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/13Adding AzureServicePrincipal class2023-08-18T12:46:56Zharshit aggarwalAdding AzureServicePrincipal classChanges in this PR
1. Moving AzureServicePrincipal class to core-lib-azure
2. Adding TenantFactoryImpl class to core-lib-azureChanges in this PR
1. Moving AzureServicePrincipal class to core-lib-azure
2. Adding TenantFactoryImpl class to core-lib-azureM1 - Release 0.1harshit aggarwalharshit aggarwalhttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/12Removing CosmosFacade2023-08-18T12:46:58Zharshit aggarwalRemoving CosmosFacadeCleaning up the CosmosFacade class
Current users Entitlements and Legal are already moved to the CosmosStore classCleaning up the CosmosFacade class
Current users Entitlements and Legal are already moved to the CosmosStore classM1 - Release 0.1harshit aggarwalharshit aggarwalhttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/11Kibattul/ind/74665832023-08-18T12:46:59ZDaniel SchollKibattul/ind/7466583## All Submissions:
-------------------------------------
* [YES] I have added an explanation of what changes in this merge do and why we should include it?
* [YES] I have updated the documentation accordingly.
* [YES] I have added tests...## All Submissions:
-------------------------------------
* [YES] I have added an explanation of what changes in this merge do and why we should include it?
* [YES] I have updated the documentation accordingly.
* [YES] I have added tests to cover my changes.
* [YES] All new and existing tests passed.
* [YES] My code follows the code style of this project.
* [YES/NO/NA] I ran lint checks locally prior to submission.
## What is the issue or story related to the change?
-------------------------------------
Adding a slf4jLogger implementation for ILogger interface. Added logs to record start and end of a request
Description:
Issue: <!-- Link any __GitLab__ workitem(s) to this pull request. -->
## Does this introduce a breaking change?
-------------------------------------
- [NO]
<!-- If this introduces a breaking change, please describe the impact and migration path for existing applications below. -->
## Other information
-------------------------------------
<!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. -->M1 - Release 0.1Daniel SchollDaniel Schollhttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/10Added config based Enable/disable of SSL for elastic search for debugging2023-08-18T12:47:01ZHema Vishnu Pola [Microsoft]Added config based Enable/disable of SSL for elastic search for debugging## All Submissions:
-------------------------------------
* [YES] Have you added an explanation of what your changes do and why you'd like us to include them?
* [YES] I have updated the documentation accordingly.
* [YES/NO/NA] I have add...## All Submissions:
-------------------------------------
* [YES] Have you added an explanation of what your changes do and why you'd like us to include them?
* [YES] I have updated the documentation accordingly.
* [YES/NO/NA] I have added tests to cover my changes.
* [YES/NO/NA] All new and existing tests passed.
## Current Behavior or Linked Issues
-------------------------------------
Issue details: https://community.opengroup.org/osdu/platform/system/home/-/issues/39
## Does this introduce a breaking change?
-------------------------------------
- [NO]
This doesn't bring in any breaking changes.
*Added a new function that allows to fetch key vault secrets with a default used that is passed.*
## Other information
-------------------------------------
- Elastic search SSL endpoint can now be controlled by setting 'elastic-ssl-enabled' to true or false.M1 - Release 0.1Hema Vishnu Pola [Microsoft]Hema Vishnu Pola [Microsoft]https://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/9Added Cosmos Client Factory to support partition based Cosmos client generation2023-08-18T12:47:03Zharshit aggarwalAdded Cosmos Client Factory to support partition based Cosmos client generationAdded Cosmos Client Factory to support partition based Cosmos client generation
WIT:7652848Added Cosmos Client Factory to support partition based Cosmos client generation
WIT:7652848M1 - Release 0.1harshit aggarwalharshit aggarwalhttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/8Merge Request Template Added2023-08-18T12:47:05ZDaniel SchollMerge Request Template Added## All Submissions:
-------------------------------------
* [YES] I have added an explanation of what changes in this merge do and why we should include it?
* [NA] I have added tests to cover my changes.
* [NA] All new and existing tests...## All Submissions:
-------------------------------------
* [YES] I have added an explanation of what changes in this merge do and why we should include it?
* [NA] I have added tests to cover my changes.
* [NA] All new and existing tests passed.
* [NA] My code follows the code style of this project.
* [NA] I ran lint checks locally prior to submission.
## What is the issue or story related to the change?
-------------------------------------
Description: Currently there is no standard Merge Request Template and a standardized method is needed to help maintainers be able to properly assess the change and expedite Merge Requests.
## Does this introduce a breaking change?
-------------------------------------
- [NO]
## Other information
-------------------------------------
For this project the default template will be this format.M1 - Release 0.1Daniel SchollDaniel Schollhttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/7Adding CosmosStore class in order to use CosmosFacade as singleton2023-08-18T12:47:06Zharshit aggarwalAdding CosmosStore class in order to use CosmosFacade as singletonThe CosmosStore class contains the same logic as CosmosFacade just the public methods
are not static in order to use this class as singleton.
Added the unit tests for the same.
Marked the package version as v0.0.10
Follow Up Actions:
...The CosmosStore class contains the same logic as CosmosFacade just the public methods
are not static in order to use this class as singleton.
Added the unit tests for the same.
Marked the package version as v0.0.10
Follow Up Actions:
1. Will raise PR's to update the current consumers of CosmosFacade (Entitlement and Legal) to use the new class.
2. Will raise PR to delete the CosmosFacade class.
WIT-7627085M1 - Release 0.1harshit aggarwalharshit aggarwalhttps://community.opengroup.org/osdu/platform/system/lib/cloud/azure/os-core-lib-azure/-/merge_requests/4User story 2460: Enhance existing functionalities for pagination for cosmosfa...2023-08-18T12:47:08ZNandu MuralidharanUser story 2460: Enhance existing functionalities for pagination for cosmosfacade.javaM1 - Release 0.1Nandu MuralidharanNandu Muralidharan