From 036d2bef4c61e97f4a9b316dbe25ce1f5d71662f Mon Sep 17 00:00:00 2001 From: lordsarcastic Date: Mon, 21 Oct 2024 21:07:21 +0100 Subject: [PATCH] Bug | `get_integation_resource_configs` does not handle `.yaml` extension for `port-app-config` file (#1090) # Description What - Fixed the bug for test helper function `get_integation_resource_configs` where it doesn't handle `.yaml` extension for `port-app-config` file Why - Most integrations do not have their `port-app-config` file as `.yml` extension and using the helper function in tests causes tests to fail How - A check is made to see if the `.yml` path exists and if it fails, we default to the `.yaml` extension. ## Type of change Please leave one option from the following and delete the rest: - [x] Bug fix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking change which adds functionality) - [ ] New Integration (non-breaking change which adds a new integration) - [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) - [ ] Non-breaking change (fix of existing functionality that will not change current behavior) - [ ] Documentation (added/updated documentation)

All tests should be run against the port production environment(using a testing org).

### Core testing checklist - [ ] Integration able to create all default resources from scratch - [ ] Resync finishes successfully - [ ] Resync able to create entities - [ ] Resync able to update entities - [ ] Resync able to detect and delete entities - [ ] Scheduled resync able to abort existing resync and start a new one - [ ] Tested with at least 2 integrations from scratch - [ ] Tested with Kafka and Polling event listeners - [ ] Tested deletion of entities that don't pass the selector ### Integration testing checklist - [ ] Integration able to create all default resources from scratch - [ ] Resync able to create entities - [ ] Resync able to update entities - [ ] Resync able to detect and delete entities - [ ] Resync finishes successfully - [ ] If new resource kind is added or updated in the integration, add example raw data, mapping and expected result to the `examples` folder in the integration directory. - [ ] If resource kind is updated, run the integration with the example data and check if the expected result is achieved - [ ] If new resource kind is added or updated, validate that live-events for that resource are working as expected - [ ] Docs PR link [here](#) ### Preflight checklist - [ ] Handled rate limiting - [ ] Handled pagination - [ ] Implemented the code in async - [ ] Support Multi account ## Screenshots Include screenshots from your environment showing how the resources of the integration will look. ## API Documentation Provide links to the API documentation used for this integration. --- CHANGELOG.md | 8 ++++++++ port_ocean/tests/helpers/ocean_app.py | 8 +++++--- pyproject.toml | 2 +- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 63a7112f9f..2d72d03c13 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,14 @@ this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm +## 0.12.5 (2024-10-21) + + +### Bug Fixes + +- Fixed get_integration_resource_config assumption for port-app-config files to be of .yml extension only (0.12.5) + + ## 0.12.3 (2024-10-09) ### Improvements diff --git a/port_ocean/tests/helpers/ocean_app.py b/port_ocean/tests/helpers/ocean_app.py index 6b9f502ac4..361318986f 100644 --- a/port_ocean/tests/helpers/ocean_app.py +++ b/port_ocean/tests/helpers/ocean_app.py @@ -43,9 +43,11 @@ def get_integration_ocean_app( def get_integation_resource_configs(integration_path: str) -> List[ResourceConfig]: - with open( - f"{integration_path}/.port/resources/port-app-config.yml" - ) as port_app_config_file: + config_file_path = f"{integration_path}/.port/resources/port-app-config." + if not Path(f"{config_file_path}yml").exists(): + config_file_path = f"{config_file_path}yaml" + + with open(config_file_path) as port_app_config_file: resource_configs = safe_load(port_app_config_file) return [ResourceConfig(**item) for item in resource_configs["resources"]] diff --git a/pyproject.toml b/pyproject.toml index c9be8945a8..9b909679ea 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "port-ocean" -version = "0.12.4" +version = "0.12.5" description = "Port Ocean is a CLI tool for managing your Port projects." readme = "README.md" homepage = "https://app.getport.io"