From eca71f8d00b6c91922b51e2c34bb49d0338416b6 Mon Sep 17 00:00:00 2001 From: hpal Date: Mon, 7 Oct 2024 16:52:58 +0100 Subject: [PATCH 1/2] [Jenkins] Add build stages (#960) # Description - Added a new kind `stage` - Added a new blueprint `jenkinsStage` ### Implementation Utilized the Jenkins API provided by the [pipeline-stage-view-plugin](https://github.com/jenkinsci/pipeline-stage-view-plugin/tree/master/rest-api#get-jobjob-namewfapiruns) to retrieve pipeline stage information. The API returns details such as stage IDs, names, statuses, start times, durations, and links to each stage, as shown in the example JSON response below: ```json { "_links": { "self": { "href": "/job/Phalbert/job/airframe-react/job/master/29/wfapi/describe" } }, "id": "29", "name": "#29", "status": "FAILED", "startTimeMillis": 1717069181870, "endTimeMillis": 1717070384780, "durationMillis": 1202910, "queueDurationMillis": 5, "pauseDurationMillis": 0, "stages": [ { "_links": { "self": { "href": "/job/Phalbert/job/airframe-react/job/master/29/execution/node/6/wfapi/describe" } }, "id": "6", "name": "Declarative: Checkout SCM", "execNode": "", "status": "SUCCESS", "startTimeMillis": 1717070383791, "durationMillis": 892, "pauseDurationMillis": 0 }, { "_links": { "self": { "href": "/job/Phalbert/job/airframe-react/job/master/29/execution/node/17/wfapi/describe" } }, "id": "17", "name": "Declarative: Post Actions", "execNode": "", "status": "SUCCESS", "startTimeMillis": 1717070384739, "durationMillis": 24, "pauseDurationMillis": 0 } ] } ``` Additional Context: For more details and ongoing discussion, please refer to the linked Slack thread: [Jira Task Discussion](https://getport.slack.com/archives/C0799SR843F/p1723749916041039). ## Type of change Please leave one option from the following and delete the rest: - [x] New feature (non-breaking change which adds functionality)

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 ### Integration testing checklist - [x] Integration able to create all default resources from scratch - [x] Resync able to create entities - [x] Resync able to update entities - [x] Resync able to detect and delete entities - [x] Resync finishes successfully - [x] 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. - [x] If resource kind is updated, run the integration with the example data and check if the expected result is achieved - [x] If new resource kind is added or updated, validate that live-events for that resource are working as expected - [x] Docs PR link [here](https://github.com/port-labs/port-docs/pull/1613) ### Preflight checklist - [x] Handled rate limiting - [x] Handled pagination - [x] 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. --------- Co-authored-by: PagesCoffy Co-authored-by: omby8888 <160610297+omby8888@users.noreply.github.com> --- .../jenkins/.port/resources/blueprints.json | 6 +- .../.port/resources/port-app-config.yaml | 8 +- integrations/jenkins/.port/spec.yaml | 1 + integrations/jenkins/CHANGELOG.md | 64 +----- integrations/jenkins/client.py | 53 ++++- integrations/jenkins/examples/blueprints.json | 60 ++++++ integrations/jenkins/examples/mappings.yml | 70 +++++++ .../jenkins/examples/stage.entity.json | 20 ++ .../jenkins/examples/stage.response.json | 15 ++ integrations/jenkins/integration.py | 9 + integrations/jenkins/main.py | 34 +++- integrations/jenkins/overrides.py | 23 +++ integrations/jenkins/tests/test_client.py | 182 ++++++++++++++++++ integrations/jenkins/tests/test_sample.py | 2 - integrations/wiz/CHANGELOG.md | 3 +- 15 files changed, 476 insertions(+), 74 deletions(-) create mode 100644 integrations/jenkins/examples/blueprints.json create mode 100644 integrations/jenkins/examples/mappings.yml create mode 100644 integrations/jenkins/examples/stage.entity.json create mode 100644 integrations/jenkins/examples/stage.response.json create mode 100644 integrations/jenkins/integration.py create mode 100644 integrations/jenkins/overrides.py create mode 100644 integrations/jenkins/tests/test_client.py delete mode 100644 integrations/jenkins/tests/test_sample.py diff --git a/integrations/jenkins/.port/resources/blueprints.json b/integrations/jenkins/.port/resources/blueprints.json index b8c4b92742..6ea068a6e5 100644 --- a/integrations/jenkins/.port/resources/blueprints.json +++ b/integrations/jenkins/.port/resources/blueprints.json @@ -60,12 +60,14 @@ "enum": [ "SUCCESS", "FAILURE", - "UNSTABLE" + "UNSTABLE", + "ABORTED" ], "enumColors": { "SUCCESS": "green", "FAILURE": "red", - "UNSTABLE": "yellow" + "UNSTABLE": "yellow", + "ABORTED": "darkGray" } }, "buildUrl": { diff --git a/integrations/jenkins/.port/resources/port-app-config.yaml b/integrations/jenkins/.port/resources/port-app-config.yaml index 850e330bc4..ce83c3c260 100644 --- a/integrations/jenkins/.port/resources/port-app-config.yaml +++ b/integrations/jenkins/.port/resources/port-app-config.yaml @@ -7,7 +7,7 @@ resources: port: entity: mappings: - identifier: .url | split("://")[1] | sub("^.*?/"; "") | gsub("%20"; "-") | gsub("/"; "-") | .[:-1] + identifier: .url | split("://")[1] | sub("^.*?/"; "") | gsub("%20"; "-") | gsub("%252F"; "-") | gsub("/"; "-") | .[:-1] title: .fullName blueprint: '"jenkinsJob"' properties: @@ -22,7 +22,7 @@ resources: port: entity: mappings: - identifier: .url | split("://")[1] | sub("^.*?/"; "") | gsub("%20"; "-") | gsub("/"; "-") | .[:-1] + identifier: .url | split("://")[1] | sub("^.*?/"; "") | gsub("%20"; "-") | gsub("%252F"; "-") | gsub("/"; "-") | .[:-1] title: .displayName blueprint: '"jenkinsBuild"' properties: @@ -31,8 +31,8 @@ resources: buildDuration: .duration timestamp: '.timestamp / 1000 | todate' relations: - parentJob: .url | split("://")[1] | sub("^.*?/"; "") | gsub("%20"; "-") | gsub("/"; "-") | .[:-1] | gsub("-[0-9]+$"; "") - previousBuild: .previousBuild.url | split("://")[1] | sub("^.*?/"; "") | gsub("%20"; "-") | gsub("/"; "-") | .[:-1] + parentJob: .url | split("://")[1] | sub("^.*?/"; "") | gsub("%20"; "-") | gsub("%252F"; "-") | gsub("/"; "-") | .[:-1] | gsub("-[0-9]+$"; "") + previousBuild: .previousBuild.url | split("://")[1] | sub("^.*?/"; "") | gsub("%20"; "-") | gsub("%252F"; "-") | gsub("/"; "-") | .[:-1] - kind: user selector: query: "true" diff --git a/integrations/jenkins/.port/spec.yaml b/integrations/jenkins/.port/spec.yaml index 53050fca81..5433c81c74 100644 --- a/integrations/jenkins/.port/spec.yaml +++ b/integrations/jenkins/.port/spec.yaml @@ -9,6 +9,7 @@ features: - kind: job - kind: build - kind: user + - kind: stage configurations: - name: jenkinsHost description: The base URL of your Jenkins server. This should be the address you use to access the Jenkins dashboard in your browser (e.g., "https://your-jenkins-server.com"). diff --git a/integrations/jenkins/CHANGELOG.md b/integrations/jenkins/CHANGELOG.md index 721d172994..a65279eebe 100644 --- a/integrations/jenkins/CHANGELOG.md +++ b/integrations/jenkins/CHANGELOG.md @@ -6,6 +6,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## 0.1.60 (2024-09-25) + +### Improvements + +- Added the `stage` kind to the integration to bring stages information about Jenkins builds ## 0.1.61 (2024-10-01) @@ -81,119 +86,94 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## 0.1.52 (2024-08-28) - ### Improvements - Bumped ocean version to ^0.10.4 (#1) - ## 0.1.51 (2024-08-28) - ### Improvements - Bumped ocean version to ^0.10.3 (#1) - ## 0.1.50 (2024-08-26) - ### Improvements - Bumped ocean version to ^0.10.2 (#1) - ## 0.1.49 (2024-08-26) - ### Improvements - Bumped ocean version to ^0.10.1 (#1) - ## 0.1.48 (2024-08-22) - ### Improvements - Bumped ocean version to ^0.10.0 (#1) - ## 0.1.47 (2024-08-20) - ### Improvements - Bumped ocean version to ^0.9.14 (#1) - ## 0.1.46 (2024-08-13) - ### Improvements - Bumped ocean version to ^0.9.13 (#1) - ## 0.1.45 (2024-08-11) - ### Improvements - Bumped ocean version to ^0.9.12 (#1) - ## 0.1.44 (2024-08-05) - ### Improvements - Bumped ocean version to ^0.9.11 (#1) - ## 0.1.43 (2024-08-04) - ### Improvements - Bumped ocean version to ^0.9.10 (#1) - ## 0.1.42 (2024-07-31) ### Improvements - Upgraded integration dependencies (#1) - ## 0.1.41 (2024-07-31) ### Improvements - Bumped ocean version to ^0.9.7 (#1) - ## 0.1.40 (2024-07-31) ### Improvements - Bumped ocean version to ^0.9.6 (#1) - ## 0.1.39 (2024-07-24) ### Improvements - Bumped ocean version to ^0.9.5 - ## 0.1.38 (2024-07-10) ### Improvements - Bumped ocean version to ^0.9.4 (#1) - ## 0.1.37 (2024-07-09) ### Improvements @@ -206,77 +186,66 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Bumped ocean version to ^0.9.3 (#1) - ## 0.1.35 (2024-07-07) ### Improvements - Bumped ocean version to ^0.9.2 (#1) - ## 0.1.34 (2024-06-23) ### Improvements - Bumped ocean version to ^0.9.1 (#1) - ## 0.1.33 (2024-06-19) ### Improvements - Bumped ocean version to ^0.9.0 (#1) - ## 0.1.32 (2024-06-16) ### Improvements - Bumped ocean version to ^0.8.0 (#1) - ## 0.1.31 (2024-06-13) ### Improvements - Bumped ocean version to ^0.7.1 (#1) - ## 0.1.30 (2024-06-13) ### Improvements - Bumped ocean version to ^0.7.0 (#1) - ## 0.1.29 (2024-06-10) ### Improvements - Bumped ocean version to ^0.6.0 (#1) - ## 0.1.28 (2024-06-05) ### Improvements - Bumped ocean version to ^0.5.27 (#1) - ## 0.1.27 (2024-06-03) ### Improvements - Bumped ocean version to ^0.5.25 (#1) - ## 0.1.26 (2024-06-02) ### Improvements - Bumped ocean version to ^0.5.24 (#1) - ## 0.1.25 (2024-05-30) ### Improvements @@ -284,21 +253,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Bumped ocean version to ^0.5.23 (#1) - Updated the base image used in the Dockerfile that is created during integration scaffolding from `python:3.11-slim-buster` to `python:3.11-slim-bookworm` - ## 0.1.24 (2024-05-29) ### Improvements - Bumped ocean version to ^0.5.22 (#1) - ## 0.1.23 (2024-05-26) ### Improvements - Bumped ocean version to ^0.5.21 (#1) - ## 0.1.22 (2024-05-26) ### Improvements @@ -306,140 +272,120 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Bumped ocean version to ^0.5.20 (#1) - Removed the config.yaml file due to unused overrides - ## 0.1.21 (2024-05-16) ### Improvements - Bumped ocean version to ^0.5.19 (#1) - ## 0.1.20 (2024-05-12) ### Improvements - Bumped ocean version to ^0.5.18 (#1) - ## 0.1.19 (2024-05-01) ### Improvements - Bumped ocean version to ^0.5.17 (#1) - ## 0.1.18 (2024-05-01) ### Improvements - Bumped ocean version to ^0.5.16 (#1) - ## 0.1.17 (2024-04-30) ### Improvements - Bumped ocean version to ^0.5.15 (#1) - ## 0.1.16 (2024-04-24) ### Improvements - Bumped ocean version to ^0.5.14 (#1) - ## 0.1.15 (2024-04-17) ### Improvements - Bumped ocean version to ^0.5.12 (#1) - ## 0.1.14 (2024-04-11) ### Improvements - Bumped ocean version to ^0.5.11 (#1) - ## 0.1.13 (2024-04-10) ### Improvements - Bumped ocean version to ^0.5.10 (#1) - ## 0.1.12 (2024-04-01) ### Improvements - Bumped ocean version to ^0.5.9 (#1) - ## 0.1.11 (2024-03-28) ### Improvements - Bumped ocean version to ^0.5.8 (#1) - ## 0.1.10 (2024-03-20) ### Improvements - Bumped ocean version to ^0.5.7 (#1) - ## 0.1.9 (2024-03-17) ### Improvements - Bumped ocean version to ^0.5.6 (#1) - ## 0.1.8 (2024-03-06) ### Improvements - Bumped ocean version to ^0.5.5 (#1) - ## 0.1.7 (2024-03-03) ### Improvements - Bumped ocean version to ^0.5.4 (#1) - ## 0.1.6 (2024-03-03) ### Improvements - Bumped ocean version to ^0.5.3 (#1) - ## 0.1.5 (2024-02-21) ### Improvements - Bumped ocean version to ^0.5.2 (#1) - ## 0.1.4 (2024-02-20) ### Improvements - Bumped ocean version to ^0.5.1 (#1) - ## 0.1.3 (2024-02-18) ### Improvements - Bumped ocean version to ^0.5.0 (#1) - ## 0.1.2 (2024-01-27) ### Features diff --git a/integrations/jenkins/client.py b/integrations/jenkins/client.py index df0817153e..8ce5cd4374 100644 --- a/integrations/jenkins/client.py +++ b/integrations/jenkins/client.py @@ -1,6 +1,6 @@ from enum import StrEnum from typing import Any, AsyncGenerator, Optional -from urllib.parse import urlparse +from urllib.parse import urlparse, urljoin import httpx from loguru import logger @@ -14,6 +14,7 @@ class ResourceKey(StrEnum): JOBS = "jobs" BUILDS = "builds" + STAGES = "stages" class JenkinsClient: @@ -42,9 +43,43 @@ async def get_builds(self) -> AsyncGenerator[list[dict[str, Any]], None]: async for _jobs in self.fetch_resources(ResourceKey.BUILDS): builds = [build for job in _jobs for build in job.get("builds", [])] + logger.debug(f"Builds received {builds}") event.attributes.setdefault(ResourceKey.BUILDS, []).extend(builds) yield builds + async def _get_build_stages(self, build_url: str) -> list[dict[str, Any]]: + response = await self.client.get(f"{build_url}/wfapi/describe") + response.raise_for_status() + stages = response.json().get("stages", []) + return stages + + async def _get_job_builds(self, job_url: str) -> AsyncGenerator[Any, None]: + job_details = await self.get_single_resource(job_url) + if job_details.get("buildable"): + yield job_details.get("builds") + + job = {"url": job_url} + async for _jobs in self.fetch_resources(ResourceKey.BUILDS, job): + builds = [build for job in _jobs for build in job.get("builds", [])] + yield builds + + async def get_stages( + self, job_url: str + ) -> AsyncGenerator[list[dict[str, Any]], None]: + async for builds in self._get_job_builds(job_url): + stages: list[dict[str, Any]] = [] + for build in builds: + build_url = build["url"] + try: + logger.info(f"Getting stages for build {build_url}") + build_stages = await self._get_build_stages(build_url) + stages.extend(build_stages) + yield build_stages + except Exception as e: + logger.error( + f"Failed to get stages for build {build_url}: {e.args[0]}" + ) + async def fetch_resources( self, resource: str, parent_job: Optional[dict[str, Any]] = None ) -> AsyncGenerator[list[dict[str, Any]], None]: @@ -56,10 +91,13 @@ async def fetch_resources( while True: params = self._build_api_params(resource, page_size, page) base_url = self._build_base_url(parent_job) + logger.info(f"Fetching {resource} from {base_url} with params {params}") job_response = await self.client.get(f"{base_url}/api/json", params=params) job_response.raise_for_status() - jobs = job_response.json()["jobs"] + logger.debug(f"Fetched {job_response.json()}") + jobs = job_response.json().get("jobs", []) + logger.info(f"Fetched {len(jobs)} jobs") if not jobs: break @@ -116,9 +154,14 @@ async def get_single_resource(self, resource_url: str) -> dict[str, Any]: Job: job/JobName/ Build: job/JobName/34/ """ - response = await self.client.get( - f"{self.jenkins_base_url}/{resource_url}api/json" - ) + # Ensure resource_url ends with a slash + if not resource_url.endswith("/"): + resource_url += "/" + + # Construct the full URL using urljoin + fetch_url = urljoin(self.jenkins_base_url, f"{resource_url}api/json") + + response = await self.client.get(fetch_url) response.raise_for_status() return response.json() diff --git a/integrations/jenkins/examples/blueprints.json b/integrations/jenkins/examples/blueprints.json new file mode 100644 index 0000000000..7e8735bd3f --- /dev/null +++ b/integrations/jenkins/examples/blueprints.json @@ -0,0 +1,60 @@ +[ + { + "identifier": "jenkinsStage", + "description": "This blueprint represents a stage in a Jenkins build", + "title": "Jenkins Stage", + "icon": "Jenkins", + "schema": { + "properties": { + "status": { + "type": "string", + "title": "Stage Status", + "enum": [ + "SUCCESS", + "FAILURE", + "UNSTABLE", + "ABORTED", + "IN_PROGRESS", + "NOT_BUILT", + "PAUSED_PENDING_INPUT" + ], + "enumColors": { + "SUCCESS": "green", + "FAILURE": "red", + "UNSTABLE": "yellow", + "ABORTED": "darkGray", + "IN_PROGRESS": "blue", + "NOT_BUILT": "lightGray", + "PAUSED_PENDING_INPUT": "orange" + } + }, + "startTimeMillis": { + "type": "number", + "title": "Start Time (ms)", + "description": "Timestamp in milliseconds when the stage started" + }, + "durationMillis": { + "type": "number", + "title": "Duration (ms)", + "description": "Duration of the stage in milliseconds" + }, + "stageUrl": { + "type": "string", + "title": "Stage URL", + "description": "URL to the stage" + } + }, + "required": [] + }, + "mirrorProperties": {}, + "calculationProperties": {}, + "relations": { + "parentBuild": { + "title": "Jenkins Build", + "target": "jenkinsBuild", + "required": true, + "many": false + } + } + } +] \ No newline at end of file diff --git a/integrations/jenkins/examples/mappings.yml b/integrations/jenkins/examples/mappings.yml new file mode 100644 index 0000000000..44fc3aa04a --- /dev/null +++ b/integrations/jenkins/examples/mappings.yml @@ -0,0 +1,70 @@ +deleteDependentEntities: true +createMissingRelatedEntities: true +enableMergeEntity: true +resources: + - kind: stage + selector: + query: 'true' + jobUrl: http://localhost:8080/job/limbopay/job/Limbo%20Core/job/main + port: + entity: + mappings: + identifier: >- + ._links.self.href | sub("^.*?/"; "") | gsub("%20"; "-") | + gsub("%252F"; "-") | gsub("/"; "-") + title: .name + blueprint: '"jenkinsStage"' + properties: + status: .status + startTimeMillis: .startTimeMillis + durationMillis: .durationMillis + stageUrl: env.OCEAN__INTEGRATION__CONFIG__JENKINS_HOST + ._links.self.href + relations: + parentBuild: >- + ._links.self.href | sub("/execution/node/[0-9]+/wfapi/describe$"; + "") | sub("^.*?/"; "") | gsub("%20"; "-") | gsub("%252F"; "-") | + gsub("/"; "-") + - kind: stage + selector: + query: 'true' + jobUrl: http://localhost:8080/job/Phalbert/job/airframe-react + port: + entity: + mappings: + identifier: >- + ._links.self.href | sub("^.*?/"; "") | gsub("%20"; "-") | + gsub("%252F"; "-") | gsub("/"; "-") + title: .name + blueprint: '"jenkinsStage"' + properties: + status: .status + startTimeMillis: .startTimeMillis + durationMillis: .durationMillis + stageUrl: env.OCEAN__INTEGRATION__CONFIG__JENKINS_HOST + ._links.self.href + relations: + parentBuild: >- + ._links.self.href | sub("/execution/node/[0-9]+/wfapi/describe$"; + "") | sub("^.*?/"; "") | gsub("%20"; "-") | gsub("%252F"; "-") | + gsub("/"; "-") + - kind: stage + selector: + query: 'true' + jobUrl: http://localhost:8080/job/Phalbert/job/autoshop_api + port: + entity: + mappings: + identifier: >- + ._links.self.href | sub("^.*?/"; "") | gsub("%20"; "-") | + gsub("%252F"; "-") | gsub("/"; "-") + title: .name + blueprint: '"jenkinsStage"' + properties: + status: .status + startTimeMillis: .startTimeMillis + durationMillis: .durationMillis + stageUrl: env.OCEAN__INTEGRATION__CONFIG__JENKINS_HOST + ._links.self.href + relations: + parentBuild: >- + ._links.self.href | sub("/execution/node/[0-9]+/wfapi/describe$"; + "") | sub("^.*?/"; "") | gsub("%20"; "-") | gsub("%252F"; "-") | + gsub("/"; "-") diff --git a/integrations/jenkins/examples/stage.entity.json b/integrations/jenkins/examples/stage.entity.json new file mode 100644 index 0000000000..e61df7d112 --- /dev/null +++ b/integrations/jenkins/examples/stage.entity.json @@ -0,0 +1,20 @@ +{ + "identifier": "job-Phalbert-job-salesdash-job-master-229-execution-node-17-wfapi-describe", + "title": "Declarative: Post Actions", + "icon": null, + "blueprint": "jenkinsStage", + "team": [], + "properties": { + "status": "SUCCESS", + "startTimeMillis": 1717073272012, + "durationMillis": 26, + "stageUrl": "http://localhost:8080/job/Phalbert/job/salesdash/job/master/229/execution/node/17/wfapi/describe" + }, + "relations": { + "parentBuild": "job-Phalbert-job-salesdash-job-master-229" + }, + "createdAt": "2024-08-28T10:27:33.549Z", + "createdBy": "", + "updatedAt": "2024-08-28T10:27:30.274Z", + "updatedBy": "" +} diff --git a/integrations/jenkins/examples/stage.response.json b/integrations/jenkins/examples/stage.response.json new file mode 100644 index 0000000000..2c7b617de5 --- /dev/null +++ b/integrations/jenkins/examples/stage.response.json @@ -0,0 +1,15 @@ +{ + "_links": { + "self": { + "href": "/job/Phalbert/job/salesdash/job/master/227/execution/node/17/wfapi/describe" + } + }, + "id": "17", + "name": "Declarative: Post Actions", + "execNode": "", + "status": "SUCCESS", + "startTimeMillis": 1717073271079, + "durationMillis": 51, + "pauseDurationMillis": 0, + "__fullUrl": "http://localhost:8080/job/Phalbert/job/salesdash/job/master/227/execution/node/17/wfapi/describe" +} diff --git a/integrations/jenkins/integration.py b/integrations/jenkins/integration.py new file mode 100644 index 0000000000..ab43ebf7b1 --- /dev/null +++ b/integrations/jenkins/integration.py @@ -0,0 +1,9 @@ +from port_ocean.core.handlers.port_app_config.api import APIPortAppConfig +from port_ocean.core.integrations.base import BaseIntegration + +from overrides import JenkinsPortAppConfig + + +class JenkinsIntegration(BaseIntegration): + class AppConfigHandlerClass(APIPortAppConfig): + CONFIG_CLASS = JenkinsPortAppConfig diff --git a/integrations/jenkins/main.py b/integrations/jenkins/main.py index 7290fbafbc..d267bc2937 100644 --- a/integrations/jenkins/main.py +++ b/integrations/jenkins/main.py @@ -1,16 +1,21 @@ -from typing import Any +from typing import Any, cast from loguru import logger from enum import StrEnum from client import JenkinsClient from port_ocean.context.ocean import ocean +from port_ocean.context.event import event + from port_ocean.core.ocean_types import ASYNC_GENERATOR_RESYNC_TYPE +from overrides import JenkinStagesResourceConfig + class ObjectKind(StrEnum): JOB = "job" BUILD = "build" USER = "user" + STAGE = "stage" @staticmethod def get_object_kind_for_event(obj_type: str) -> str | None: @@ -23,6 +28,7 @@ def get_object_kind_for_event(obj_type: str) -> str | None: def init_client() -> JenkinsClient: + logger.info(f"Initializing JenkinsClient {ocean.integration_config}") return JenkinsClient( ocean.integration_config["jenkins_host"], ocean.integration_config["jenkins_user"], @@ -57,6 +63,32 @@ async def on_resync_users(kind: str) -> ASYNC_GENERATOR_RESYNC_TYPE: yield users +@ocean.on_resync(ObjectKind.STAGE) +async def on_resync_stages(kind: str) -> ASYNC_GENERATOR_RESYNC_TYPE: + jenkins_client = init_client() + stages_count = 0 + max_stages = 10000 + + stages_selector = cast(JenkinStagesResourceConfig, event.resource_config) + job_url = stages_selector.selector.job_url + + logger.info(f"Syncing stages for job {job_url}") + + async for stages in jenkins_client.get_stages(job_url): + logger.info(f"Received batch with {len(stages)} stages") + if stages_count + len(stages) > max_stages: + stages = stages[: max_stages - stages_count] + yield stages + logger.warning( + f"Reached the maximum limit of {max_stages} stages. Skipping the remaining stages." + ) + return + stages_count += len(stages) + yield stages + + logger.info(f"Total stages synced: {stages_count}") + + @ocean.router.post("/events") async def handle_events(event: dict[str, Any]) -> dict[str, bool]: jenkins_client = init_client() diff --git a/integrations/jenkins/overrides.py b/integrations/jenkins/overrides.py new file mode 100644 index 0000000000..44f0529a53 --- /dev/null +++ b/integrations/jenkins/overrides.py @@ -0,0 +1,23 @@ +import typing + +from port_ocean.core.handlers.port_app_config.models import ( + ResourceConfig, + PortAppConfig, + Selector, +) +from pydantic import Field + + +class JenkinStagesResourceConfig(ResourceConfig): + class JenkinStageSelector(Selector): + query: str + job_url: str = Field(alias="jobUrl", required=True) + + kind: typing.Literal["stage"] + selector: JenkinStageSelector + + +class JenkinsPortAppConfig(PortAppConfig): + resources: list[JenkinStagesResourceConfig | ResourceConfig] = Field( + default_factory=list + ) diff --git a/integrations/jenkins/tests/test_client.py b/integrations/jenkins/tests/test_client.py new file mode 100644 index 0000000000..d55317a58e --- /dev/null +++ b/integrations/jenkins/tests/test_client.py @@ -0,0 +1,182 @@ +import pytest +from unittest.mock import AsyncMock, patch +from client import JenkinsClient +from typing import Any, AsyncGenerator, Dict, List + + +@pytest.mark.asyncio +@patch( + "port_ocean.context.ocean.PortOceanContext.integration_config", + new_callable=AsyncMock, +) +@patch("port_ocean.utils.async_http.OceanAsyncClient", new_callable=AsyncMock) +async def test_get_stages( + mock_ocean_client: AsyncMock, mock_integration_config: AsyncMock +) -> None: + # Mock integration config + mock_integration_config.return_value = { + "jenkins_host": "http://localhost:8080", + "jenkins_user": "hpal[REDACTED]", + "jenkins_token": "11b053[REDACTED]", + } + + # Mock data + job_url = "http://jenkins.example.com/job/test-job/" + build_url = "http://jenkins.example.com/job/test-job/1/" + mock_stages = [ + { + "_links": { + "self": {"href": "/job/test-job/1/execution/node/6/wfapi/describe"} + }, + "id": "6", + "name": "Declarative: Checkout SCM", + "execNode": "", + "status": "SUCCESS", + "startTimeMillis": 1717068226152, + "durationMillis": 1173, + "pauseDurationMillis": 0, + }, + { + "_links": { + "self": {"href": "/job/test-job/1/execution/node/17/wfapi/describe"} + }, + "id": "17", + "name": "Declarative: Post Actions", + "execNode": "", + "status": "SUCCESS", + "startTimeMillis": 1717068227381, + "durationMillis": 25, + "pauseDurationMillis": 0, + }, + ] + + # Create a JenkinsClient instance + with patch("client.http_async_client", new=mock_ocean_client): + client = JenkinsClient("http://jenkins.example.com", "user", "token") + + # Mock the necessary methods + async def mock_get_job_builds( + job_url: str, + ) -> AsyncGenerator[List[Dict[str, Any]], None]: + yield [{"url": build_url}] + + with ( + patch.object( + client, "_get_job_builds", side_effect=mock_get_job_builds + ) as mock_get_job_builds, + patch.object( + client, "_get_build_stages", new_callable=AsyncMock + ) as mock_get_build_stages, + ): + + # Set up the mock returns + mock_get_build_stages.return_value = mock_stages + + # Call the method and collect results + stages = [] + async for stage_batch in client.get_stages(job_url): + stages.extend(stage_batch) + + # Assertions + assert stages == mock_stages + mock_get_job_builds.assert_called_once_with(job_url) + mock_get_build_stages.assert_called_once_with(build_url) + + +@pytest.mark.asyncio +@patch( + "port_ocean.context.ocean.PortOceanContext.integration_config", + new_callable=AsyncMock, +) +@patch("port_ocean.utils.async_http.OceanAsyncClient", new_callable=AsyncMock) +async def test_get_stages_nested_jobs( + mock_ocean_client: AsyncMock, mock_integration_config: AsyncMock +) -> None: + # Mock integration config + mock_integration_config.return_value = { + "jenkins_host": "http://localhost:8080", + "jenkins_user": "hpal[REDACTED]", + "jenkins_token": "11b053[REDACTED]", + } + + # Mock data + parent_job_url = "http://jenkins.example.com/job/parent-job/" + child_job_url = "http://jenkins.example.com/job/parent-job/job/child-job/" + build_url = "http://jenkins.example.com/job/parent-job/job/child-job/1/" + mock_stages = [ + { + "id": "6", + "name": "Build", + "status": "SUCCESS", + "startTimeMillis": 1717068226152, + "durationMillis": 1173, + "pauseDurationMillis": 0, + }, + { + "id": "17", + "name": "Test", + "status": "SUCCESS", + "startTimeMillis": 1717068227381, + "durationMillis": 25, + "pauseDurationMillis": 0, + }, + ] + + # Create a JenkinsClient instance + with patch("client.http_async_client", new=mock_ocean_client): + client = JenkinsClient("http://jenkins.example.com", "user", "token") + + # Mock the necessary methods + async def mock_get_single_resource(resource_url: str) -> Dict[str, Any]: + if resource_url == parent_job_url: + return {"buildable": False, "jobs": [{"url": child_job_url}]} + elif resource_url == child_job_url: + return {"buildable": True, "builds": [{"url": build_url}]} + else: + return {"buildable": False} + + async def mock_fetch_resources( + resource: str, parent_job: str | None = None + ) -> AsyncGenerator[List[Dict[str, Any]], None]: + if parent_job is None: + yield [ + { + "url": child_job_url, + "buildable": False, + "jobs": [{"url": child_job_url}], + } + ] + else: + yield [ + { + "url": child_job_url, + "buildable": True, + "builds": [{"url": build_url}], + } + ] + + with ( + patch.object( + client, "get_single_resource", side_effect=mock_get_single_resource + ) as mock_get_single_resource, + patch.object( + client, "fetch_resources", side_effect=mock_fetch_resources + ) as mock_fetch_resources, + patch.object( + client, "_get_build_stages", new_callable=AsyncMock + ) as mock_get_build_stages, + ): + + # Set up the mock returns + mock_get_build_stages.return_value = mock_stages + + # Call the method and collect results + stages = [] + async for stage_batch in client.get_stages(parent_job_url): + stages.extend(stage_batch) + + # Assertions + assert stages == mock_stages + mock_get_single_resource.assert_called_with(parent_job_url) + mock_fetch_resources.assert_called() + mock_get_build_stages.assert_called_once_with(build_url) diff --git a/integrations/jenkins/tests/test_sample.py b/integrations/jenkins/tests/test_sample.py deleted file mode 100644 index dc80e299c8..0000000000 --- a/integrations/jenkins/tests/test_sample.py +++ /dev/null @@ -1,2 +0,0 @@ -def test_example() -> None: - assert 1 == 1 diff --git a/integrations/wiz/CHANGELOG.md b/integrations/wiz/CHANGELOG.md index 3731be46e1..66ccfa7d01 100644 --- a/integrations/wiz/CHANGELOG.md +++ b/integrations/wiz/CHANGELOG.md @@ -33,7 +33,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## 0.1.59 (2024-09-17) - ### Improvements - Bumped ocean version to ^0.10.11 @@ -47,10 +46,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## 0.1.57 (2024-09-12) + ### Improvements - Bumped ocean version to ^0.10.10 (#1) + ## 0.1.56 (2024-09-05) ### Improvements From 6fbfcd32efcaf5076f1e0af5d710eb51901fb954 Mon Sep 17 00:00:00 2001 From: Port Bot <110599342+portmachineuser@users.noreply.github.com> Date: Tue, 8 Oct 2024 11:16:54 +0300 Subject: [PATCH 2/2] Apply Ocean version 0.12.2 to all integrations (#1066) Bump all integrations to 0.12.2 --- integrations/argocd/CHANGELOG.md | 8 ++++++++ integrations/argocd/poetry.lock | 8 ++++---- integrations/argocd/pyproject.toml | 4 ++-- integrations/aws/CHANGELOG.md | 8 ++++++++ integrations/aws/poetry.lock | 8 ++++---- integrations/aws/pyproject.toml | 4 ++-- integrations/azure-devops/CHANGELOG.md | 8 ++++++++ integrations/azure-devops/poetry.lock | 8 ++++---- integrations/azure-devops/pyproject.toml | 4 ++-- integrations/azure/CHANGELOG.md | 7 +++++++ integrations/azure/poetry.lock | 8 ++++---- integrations/azure/pyproject.toml | 4 ++-- integrations/datadog/CHANGELOG.md | 8 ++++++++ integrations/datadog/poetry.lock | 8 ++++---- integrations/datadog/pyproject.toml | 4 ++-- integrations/dynatrace/CHANGELOG.md | 8 ++++++++ integrations/dynatrace/poetry.lock | 8 ++++---- integrations/dynatrace/pyproject.toml | 4 ++-- integrations/fake-integration/CHANGELOG.md | 8 ++++++++ integrations/fake-integration/poetry.lock | 8 ++++---- integrations/fake-integration/pyproject.toml | 4 ++-- integrations/firehydrant/CHANGELOG.md | 8 ++++++++ integrations/firehydrant/poetry.lock | 8 ++++---- integrations/firehydrant/pyproject.toml | 4 ++-- integrations/gcp/CHANGELOG.md | 8 ++++++++ integrations/gcp/poetry.lock | 8 ++++---- integrations/gcp/pyproject.toml | 4 ++-- integrations/gitlab/CHANGELOG.md | 8 ++++++++ integrations/gitlab/poetry.lock | 8 ++++---- integrations/gitlab/pyproject.toml | 4 ++-- integrations/jenkins/CHANGELOG.md | 9 +++++++++ integrations/jenkins/poetry.lock | 8 ++++---- integrations/jenkins/pyproject.toml | 4 ++-- integrations/jira/CHANGELOG.md | 8 ++++++++ integrations/jira/poetry.lock | 8 ++++---- integrations/jira/pyproject.toml | 4 ++-- integrations/kafka/CHANGELOG.md | 8 ++++++++ integrations/kafka/poetry.lock | 8 ++++---- integrations/kafka/pyproject.toml | 4 ++-- integrations/kubecost/CHANGELOG.md | 8 ++++++++ integrations/kubecost/poetry.lock | 8 ++++---- integrations/kubecost/pyproject.toml | 4 ++-- integrations/launchdarkly/CHANGELOG.md | 8 ++++++++ integrations/launchdarkly/poetry.lock | 8 ++++---- integrations/launchdarkly/pyproject.toml | 4 ++-- integrations/linear/CHANGELOG.md | 8 ++++++++ integrations/linear/poetry.lock | 8 ++++---- integrations/linear/pyproject.toml | 4 ++-- integrations/newrelic/CHANGELOG.md | 8 ++++++++ integrations/newrelic/poetry.lock | 8 ++++---- integrations/newrelic/pyproject.toml | 4 ++-- integrations/octopus/CHANGELOG.md | 7 +++++++ integrations/octopus/poetry.lock | 8 ++++---- integrations/octopus/pyproject.toml | 4 ++-- integrations/opencost/CHANGELOG.md | 8 ++++++++ integrations/opencost/poetry.lock | 8 ++++---- integrations/opencost/pyproject.toml | 4 ++-- integrations/opsgenie/CHANGELOG.md | 8 ++++++++ integrations/opsgenie/poetry.lock | 8 ++++---- integrations/opsgenie/pyproject.toml | 4 ++-- integrations/pagerduty/CHANGELOG.md | 8 ++++++++ integrations/pagerduty/poetry.lock | 8 ++++---- integrations/pagerduty/pyproject.toml | 4 ++-- integrations/sentry/CHANGELOG.md | 8 ++++++++ integrations/sentry/poetry.lock | 8 ++++---- integrations/sentry/pyproject.toml | 4 ++-- integrations/servicenow/CHANGELOG.md | 8 ++++++++ integrations/servicenow/poetry.lock | 8 ++++---- integrations/servicenow/pyproject.toml | 4 ++-- integrations/snyk/CHANGELOG.md | 8 ++++++++ integrations/snyk/poetry.lock | 8 ++++---- integrations/snyk/pyproject.toml | 4 ++-- integrations/sonarqube/CHANGELOG.md | 8 ++++++++ integrations/sonarqube/poetry.lock | 8 ++++---- integrations/sonarqube/pyproject.toml | 4 ++-- integrations/statuspage/CHANGELOG.md | 8 ++++++++ integrations/statuspage/poetry.lock | 8 ++++---- integrations/statuspage/pyproject.toml | 4 ++-- integrations/terraform-cloud/CHANGELOG.md | 8 ++++++++ integrations/terraform-cloud/poetry.lock | 8 ++++---- integrations/terraform-cloud/pyproject.toml | 4 ++-- integrations/wiz/CHANGELOG.md | 8 ++++++++ integrations/wiz/poetry.lock | 8 ++++---- integrations/wiz/pyproject.toml | 4 ++-- 84 files changed, 391 insertions(+), 168 deletions(-) diff --git a/integrations/argocd/CHANGELOG.md b/integrations/argocd/CHANGELOG.md index cb6749733c..5d5e8400b8 100644 --- a/integrations/argocd/CHANGELOG.md +++ b/integrations/argocd/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.91 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.90 (2024-10-01) diff --git a/integrations/argocd/poetry.lock b/integrations/argocd/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/argocd/poetry.lock +++ b/integrations/argocd/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/argocd/pyproject.toml b/integrations/argocd/pyproject.toml index e48c63ad89..455077a70b 100644 --- a/integrations/argocd/pyproject.toml +++ b/integrations/argocd/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "argocd" -version = "0.1.90" +version = "0.1.91" description = "Argo CD integration powered by Ocean" authors = ["Isaac Coffie "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # Uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/aws/CHANGELOG.md b/integrations/aws/CHANGELOG.md index 84979f202a..840057cb1c 100644 --- a/integrations/aws/CHANGELOG.md +++ b/integrations/aws/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.2.46 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.2.45 (2024-10-01) diff --git a/integrations/aws/poetry.lock b/integrations/aws/poetry.lock index 10c671d34c..fe05539167 100644 --- a/integrations/aws/poetry.lock +++ b/integrations/aws/poetry.lock @@ -2308,13 +2308,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -4246,4 +4246,4 @@ multidict = ">=4.0" [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "b87aa7143505ff4880cb89b914202c5e19a6a36183be1e0da8b11cc3597a7c88" +content-hash = "2d7eab19dd9b6de5f2a86956c22c92a9321d4a35a5cd80d2dd56fa90b3c61260" diff --git a/integrations/aws/pyproject.toml b/integrations/aws/pyproject.toml index 771bfcdcbf..426e634f1e 100644 --- a/integrations/aws/pyproject.toml +++ b/integrations/aws/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "aws" -version = "0.2.45" +version = "0.2.46" description = "This integration will map all your resources in all the available accounts to your Port entities" authors = ["Shalev Avhar ", "Erik Zaadi "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} python-dotenv = "^1.0.1" aioboto3 = "^12.4.0" boto3-stubs = {version = "1.34.76", extras = ["acm", "apigateway", "appconfig", "athena", "cloudcontrol", "cloudformation", "cloudwatch", "dynamodb", "ec2", "ec2-instance-connect", "ecr", "ecs", "elasticache", "elb", "elbv2", "events", "iam", "lambda", "logs", "organizations", "rds", "route53", "s3", "sagemaker", "secretsmanager", "sns", "sqs", "ssm", "sts"]} diff --git a/integrations/azure-devops/CHANGELOG.md b/integrations/azure-devops/CHANGELOG.md index f2e4ae8777..04fee33050 100644 --- a/integrations/azure-devops/CHANGELOG.md +++ b/integrations/azure-devops/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.72 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.71 (2024-10-01) diff --git a/integrations/azure-devops/poetry.lock b/integrations/azure-devops/poetry.lock index 14d57b6742..55ff1eb176 100644 --- a/integrations/azure-devops/poetry.lock +++ b/integrations/azure-devops/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1894,4 +1894,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "b448b8f6919427975ed176452594fc8c3f1e361b25b062d263edb321deba2811" +content-hash = "a3227b52c61b11a5878cfe41e15a0011ea6416f1128d4a7950552439465ac8cc" diff --git a/integrations/azure-devops/pyproject.toml b/integrations/azure-devops/pyproject.toml index 802d74113c..f2da5ab4c4 100644 --- a/integrations/azure-devops/pyproject.toml +++ b/integrations/azure-devops/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "azure-devops" -version = "0.1.71" +version = "0.1.72" description = "An Azure Devops Ocean integration" authors = ["Matan Geva "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # Uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/azure/CHANGELOG.md b/integrations/azure/CHANGELOG.md index d5571096e8..ed974560c3 100644 --- a/integrations/azure/CHANGELOG.md +++ b/integrations/azure/CHANGELOG.md @@ -1,3 +1,10 @@ +0.1.95 (2024-10-08) + +### Improvements + +- Bumped ocean version to ^0.12.2 + + 0.1.94 (2024-10-01) ### Improvements diff --git a/integrations/azure/poetry.lock b/integrations/azure/poetry.lock index 6fe3c70d18..954175d8fc 100644 --- a/integrations/azure/poetry.lock +++ b/integrations/azure/poetry.lock @@ -1664,13 +1664,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -2752,4 +2752,4 @@ multidict = ">=4.0" [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "6fb8c89ed24bc6c28c7daec2192c7946fa0aca49a83b644d36e1a388a468a113" +content-hash = "b2e785761d20052e0f25e70405b52d3a01290c0a5af7cc82054648eedd3ecf5f" diff --git a/integrations/azure/pyproject.toml b/integrations/azure/pyproject.toml index 0528f8893f..93da3b3b88 100644 --- a/integrations/azure/pyproject.toml +++ b/integrations/azure/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "azure" -version = "0.1.94" +version = "0.1.95" description = "Azure integration" authors = ["Tom Tankilevitch "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} # due to patching the azure-mgmt-resource package, we need to use a specific version azure-mgmt-resource = "23.0.1" azure-identity = "^1.13.0" diff --git a/integrations/datadog/CHANGELOG.md b/integrations/datadog/CHANGELOG.md index c81e6517ea..5ebc535973 100644 --- a/integrations/datadog/CHANGELOG.md +++ b/integrations/datadog/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.45 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.44 (2024-10-01) diff --git a/integrations/datadog/poetry.lock b/integrations/datadog/poetry.lock index becaf27375..97ffc72430 100644 --- a/integrations/datadog/poetry.lock +++ b/integrations/datadog/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "84e89efc1b7f644ac0bc78e010a5ac38f2e7a7487346973cdbcabfabd71ecdb0" +content-hash = "bf82ba154d707a8611f3c5848cbe5abf859e2d3381da3a9dc4efa730238ba075" diff --git a/integrations/datadog/pyproject.toml b/integrations/datadog/pyproject.toml index 1d9a74a7dc..8f32adb5e9 100644 --- a/integrations/datadog/pyproject.toml +++ b/integrations/datadog/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "datadog" -version = "0.1.44" +version = "0.1.45" description = "Datadog Ocean Integration" authors = ["Albert Luganga "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} loguru = "^0.7.2" [tool.poetry.group.dev.dependencies] diff --git a/integrations/dynatrace/CHANGELOG.md b/integrations/dynatrace/CHANGELOG.md index b5e2df784a..b5c4357321 100644 --- a/integrations/dynatrace/CHANGELOG.md +++ b/integrations/dynatrace/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.57 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.56 (2024-10-01) diff --git a/integrations/dynatrace/poetry.lock b/integrations/dynatrace/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/dynatrace/poetry.lock +++ b/integrations/dynatrace/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/dynatrace/pyproject.toml b/integrations/dynatrace/pyproject.toml index a5a36c8cc9..7d0a616393 100644 --- a/integrations/dynatrace/pyproject.toml +++ b/integrations/dynatrace/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "dynatrace" -version = "0.1.56" +version = "0.1.57" description = "An integration used to import Dynatrace resources into Port" authors = ["Ayodeji Adeoti <>"] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/fake-integration/CHANGELOG.md b/integrations/fake-integration/CHANGELOG.md index 895ff5e9d1..15b88f3d33 100644 --- a/integrations/fake-integration/CHANGELOG.md +++ b/integrations/fake-integration/CHANGELOG.md @@ -5,6 +5,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.7-dev (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.6-dev (2024-10-01) diff --git a/integrations/fake-integration/poetry.lock b/integrations/fake-integration/poetry.lock index cea79301bc..31a517cde2 100644 --- a/integrations/fake-integration/poetry.lock +++ b/integrations/fake-integration/poetry.lock @@ -1116,13 +1116,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -2123,4 +2123,4 @@ files = [ [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "7a9c0802cb04c56fec20de944793284c7e0f8d5a9d7f43af37e3ebc91aebe7a2" +content-hash = "c50ae6252db37d045c43e2fcd24e45ea447a9c59038872270e62a87a14860b2a" diff --git a/integrations/fake-integration/pyproject.toml b/integrations/fake-integration/pyproject.toml index 6c97e85734..49afc2b0c6 100644 --- a/integrations/fake-integration/pyproject.toml +++ b/integrations/fake-integration/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "fake-integration" -version = "0.1.6-dev" +version = "0.1.7-dev" description = "A useless fake integration that helps us test the Ocean Core" authors = ["Erik Zaadi "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} faker = "^28.0.0" [tool.poetry.group.dev.dependencies] diff --git a/integrations/firehydrant/CHANGELOG.md b/integrations/firehydrant/CHANGELOG.md index 9275cd707c..9f40558c72 100644 --- a/integrations/firehydrant/CHANGELOG.md +++ b/integrations/firehydrant/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.80 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.79 (2024-10-01) diff --git a/integrations/firehydrant/poetry.lock b/integrations/firehydrant/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/firehydrant/poetry.lock +++ b/integrations/firehydrant/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/firehydrant/pyproject.toml b/integrations/firehydrant/pyproject.toml index 8a7a49a867..167b6a689c 100644 --- a/integrations/firehydrant/pyproject.toml +++ b/integrations/firehydrant/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "firehydrant" -version = "0.1.79" +version = "0.1.80" description = "FireHydrant Integration Powered by Ocean" authors = ["Isaac Coffie "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/gcp/CHANGELOG.md b/integrations/gcp/CHANGELOG.md index 9892e57822..d148215d4d 100644 --- a/integrations/gcp/CHANGELOG.md +++ b/integrations/gcp/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.61 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.60 (2024-10-01) diff --git a/integrations/gcp/poetry.lock b/integrations/gcp/poetry.lock index 2603888dbf..dff0126e17 100644 --- a/integrations/gcp/poetry.lock +++ b/integrations/gcp/poetry.lock @@ -1295,13 +1295,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -2279,4 +2279,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "b7ccbba88eefb55e650d0988243bf3323639ba12f1858c134337f299b8ebf47c" +content-hash = "725d3f09c34963c830e9e41469eb005fd35338ed8a03fc38932bce19a48f59c3" diff --git a/integrations/gcp/pyproject.toml b/integrations/gcp/pyproject.toml index 39f74e3a35..c1537bc115 100644 --- a/integrations/gcp/pyproject.toml +++ b/integrations/gcp/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "gcp" -version = "0.1.60" +version = "0.1.61" description = "A GCP ocean integration" authors = ["Matan Geva "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} google-cloud-asset = "^3.25.1" google-cloud-pubsub = "^2.21.1" google-cloud-resource-manager = "^1.12.3" diff --git a/integrations/gitlab/CHANGELOG.md b/integrations/gitlab/CHANGELOG.md index 2fc6096b0c..1b3d60a7ef 100644 --- a/integrations/gitlab/CHANGELOG.md +++ b/integrations/gitlab/CHANGELOG.md @@ -7,6 +7,14 @@ this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm +0.1.130 (2024-10-08) +==================== + +### Improvements + +- Bumped ocean version to ^0.12.2 + + 0.1.129 (2024-10-02) ==================== diff --git a/integrations/gitlab/poetry.lock b/integrations/gitlab/poetry.lock index c9b90ae290..48069a5be6 100644 --- a/integrations/gitlab/poetry.lock +++ b/integrations/gitlab/poetry.lock @@ -1076,13 +1076,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -2141,4 +2141,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "7168b85bca01ccc2d876ee44fe90d6622d037a9376be8ceceded7cfbb96eb897" +content-hash = "6a57d890c9c8a91df3095f913346bb6b5d96a8c3e7cc9372fa3560772afb879a" diff --git a/integrations/gitlab/pyproject.toml b/integrations/gitlab/pyproject.toml index 67ec046239..27f1902770 100644 --- a/integrations/gitlab/pyproject.toml +++ b/integrations/gitlab/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "gitlab" -version = "0.1.129" +version = "0.1.130" description = "Gitlab integration for Port using Port-Ocean Framework" authors = ["Yair Siman-Tov "] @@ -11,7 +11,7 @@ aiolimiter = "^1.1.0" python-gitlab = "^3.14.0" pathlib = "^1.0.1" jsonschema = "^4.17.3" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/jenkins/CHANGELOG.md b/integrations/jenkins/CHANGELOG.md index a65279eebe..92ecfbf167 100644 --- a/integrations/jenkins/CHANGELOG.md +++ b/integrations/jenkins/CHANGELOG.md @@ -6,6 +6,15 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## 0.1.62 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.60 (2024-09-25) ### Improvements diff --git a/integrations/jenkins/poetry.lock b/integrations/jenkins/poetry.lock index fcec795ef8..8236d14b46 100644 --- a/integrations/jenkins/poetry.lock +++ b/integrations/jenkins/poetry.lock @@ -1000,13 +1000,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1894,4 +1894,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "49069de194b7838dc21956b6e268c38c2914f01b86944c07ccae128b10ac430a" +content-hash = "e5348ebc9ff69e275ef0fc3c461633f36fbbf2e46983c5224cf58c7384c8ec49" diff --git a/integrations/jenkins/pyproject.toml b/integrations/jenkins/pyproject.toml index 1a6c57c779..8bbe66ca81 100644 --- a/integrations/jenkins/pyproject.toml +++ b/integrations/jenkins/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "jenkins" -version = "0.1.61" +version = "0.1.62" description = "Jenkins Integration to Port Ocean" authors = ["Albert Luganga "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} pip = "^23.3.1" python-dotenv = "^1.0.0" loguru = "^0.7.2" diff --git a/integrations/jira/CHANGELOG.md b/integrations/jira/CHANGELOG.md index 997fb26383..5635525de2 100644 --- a/integrations/jira/CHANGELOG.md +++ b/integrations/jira/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.91 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.90 (2024-10-01) diff --git a/integrations/jira/poetry.lock b/integrations/jira/poetry.lock index 5dc442fa63..c47242d943 100644 --- a/integrations/jira/poetry.lock +++ b/integrations/jira/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "071b38af50f8e7b047f31a6436853ea415945011a120abfb058e45c6229d8280" +content-hash = "1b3e35a47ef664c9a248d23627f72cc2d1de6c537befa4140f0a15e29b74e8ba" diff --git a/integrations/jira/pyproject.toml b/integrations/jira/pyproject.toml index 79016d20a2..eb7d682dc9 100644 --- a/integrations/jira/pyproject.toml +++ b/integrations/jira/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "jira" -version = "0.1.90" +version = "0.1.91" description = "Integration to bring information from Jira into Port" authors = ["Mor Paz "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} httpx = "^0.27.0" [tool.poetry.group.dev.dependencies] diff --git a/integrations/kafka/CHANGELOG.md b/integrations/kafka/CHANGELOG.md index 270647498a..71f9cc3a28 100644 --- a/integrations/kafka/CHANGELOG.md +++ b/integrations/kafka/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.79 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.78 (2024-10-01) diff --git a/integrations/kafka/poetry.lock b/integrations/kafka/poetry.lock index 84c933f2dc..3b4fc7f73e 100644 --- a/integrations/kafka/poetry.lock +++ b/integrations/kafka/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "6db1e65458f1beed31f592e18b27e0c288a6d6a16ee6c1fb40b513bcf49d7c12" +content-hash = "693f87458082ee0b0fd03bc0cbfd2764c4153ecf8c0736eae954f56885c70e74" diff --git a/integrations/kafka/pyproject.toml b/integrations/kafka/pyproject.toml index 7d970c03cd..0e4a210395 100644 --- a/integrations/kafka/pyproject.toml +++ b/integrations/kafka/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "kafka" -version = "0.1.78" +version = "0.1.79" description = "Integration to import information from a Kafka cluster into Port. The integration supports importing metadata regarding the Kafka cluster, brokers and topics." authors = ["Tal Sabag "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} confluent-kafka = "^2.2.0" [tool.poetry.group.dev.dependencies] diff --git a/integrations/kubecost/CHANGELOG.md b/integrations/kubecost/CHANGELOG.md index 5264a54b90..3044930766 100644 --- a/integrations/kubecost/CHANGELOG.md +++ b/integrations/kubecost/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.84 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.83 (2024-10-01) diff --git a/integrations/kubecost/poetry.lock b/integrations/kubecost/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/kubecost/poetry.lock +++ b/integrations/kubecost/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/kubecost/pyproject.toml b/integrations/kubecost/pyproject.toml index 34059a67e5..e13c4211ad 100644 --- a/integrations/kubecost/pyproject.toml +++ b/integrations/kubecost/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "kubecost" -version = "0.1.83" +version = "0.1.84" description = "Kubecost integration powered by Ocean" authors = ["Isaac Coffie "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/launchdarkly/CHANGELOG.md b/integrations/launchdarkly/CHANGELOG.md index 2733721474..be23ae038e 100644 --- a/integrations/launchdarkly/CHANGELOG.md +++ b/integrations/launchdarkly/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.56 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.55 (2024-10-01) diff --git a/integrations/launchdarkly/poetry.lock b/integrations/launchdarkly/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/launchdarkly/poetry.lock +++ b/integrations/launchdarkly/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/launchdarkly/pyproject.toml b/integrations/launchdarkly/pyproject.toml index af589e6905..5267c2221e 100644 --- a/integrations/launchdarkly/pyproject.toml +++ b/integrations/launchdarkly/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "launchdarkly" -version = "0.1.55" +version = "0.1.56" description = "Launchdarkly integration for Port" authors = ["Michael Armah "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/linear/CHANGELOG.md b/integrations/linear/CHANGELOG.md index d15326b72c..210a7d3e13 100644 --- a/integrations/linear/CHANGELOG.md +++ b/integrations/linear/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.42 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.41 (2024-10-01) diff --git a/integrations/linear/poetry.lock b/integrations/linear/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/linear/poetry.lock +++ b/integrations/linear/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/linear/pyproject.toml b/integrations/linear/pyproject.toml index 0904eb1c56..497d194bf7 100644 --- a/integrations/linear/pyproject.toml +++ b/integrations/linear/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "linear" -version = "0.1.41" +version = "0.1.42" description = "Integration to bring information from Linear into Port" authors = ["Mor Paz "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/newrelic/CHANGELOG.md b/integrations/newrelic/CHANGELOG.md index d1c3b19990..7127767381 100644 --- a/integrations/newrelic/CHANGELOG.md +++ b/integrations/newrelic/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.86 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.85 (2024-10-01) diff --git a/integrations/newrelic/poetry.lock b/integrations/newrelic/poetry.lock index 5dc442fa63..c47242d943 100644 --- a/integrations/newrelic/poetry.lock +++ b/integrations/newrelic/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "071b38af50f8e7b047f31a6436853ea415945011a120abfb058e45c6229d8280" +content-hash = "1b3e35a47ef664c9a248d23627f72cc2d1de6c537befa4140f0a15e29b74e8ba" diff --git a/integrations/newrelic/pyproject.toml b/integrations/newrelic/pyproject.toml index 58a031de6c..0dc0e52f01 100644 --- a/integrations/newrelic/pyproject.toml +++ b/integrations/newrelic/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "newrelic" -version = "0.1.85" +version = "0.1.86" description = "New Relic Integration" authors = ["Tom Tankilevitch "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} httpx = "^0.27.0" [tool.poetry.group.dev.dependencies] diff --git a/integrations/octopus/CHANGELOG.md b/integrations/octopus/CHANGELOG.md index 7044e3d2c9..885fd6cb5c 100644 --- a/integrations/octopus/CHANGELOG.md +++ b/integrations/octopus/CHANGELOG.md @@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +# Port_Ocean 0.1.14-beta (2024-10-08) + +### Improvements + +- Bumped ocean version to ^0.12.2 + + # Port_Ocean 0.1.13-beta (2024-10-01) ### Improvements diff --git a/integrations/octopus/poetry.lock b/integrations/octopus/poetry.lock index 1dc47fed2f..cd115536f1 100644 --- a/integrations/octopus/poetry.lock +++ b/integrations/octopus/poetry.lock @@ -992,13 +992,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/octopus/pyproject.toml b/integrations/octopus/pyproject.toml index 425e9412b7..6b9481b612 100644 --- a/integrations/octopus/pyproject.toml +++ b/integrations/octopus/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "octopus" -version = "0.1.13-beta" +version = "0.1.14-beta" description = "This integration ingest data from octopus deploy" authors = ["Adebayo Iyanuoluwa "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # Uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/opencost/CHANGELOG.md b/integrations/opencost/CHANGELOG.md index 69728a749e..ac5effe15d 100644 --- a/integrations/opencost/CHANGELOG.md +++ b/integrations/opencost/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.82 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.81 (2024-10-01) diff --git a/integrations/opencost/poetry.lock b/integrations/opencost/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/opencost/poetry.lock +++ b/integrations/opencost/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/opencost/pyproject.toml b/integrations/opencost/pyproject.toml index 0d1ae22561..09a6b52059 100644 --- a/integrations/opencost/pyproject.toml +++ b/integrations/opencost/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "opencost" -version = "0.1.81" +version = "0.1.82" description = "Ocean integration for OpenCost" authors = ["Isaac Coffie "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/opsgenie/CHANGELOG.md b/integrations/opsgenie/CHANGELOG.md index c09eb682a2..1d119964bd 100644 --- a/integrations/opsgenie/CHANGELOG.md +++ b/integrations/opsgenie/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.2.6 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.2.5 (2024-10-01) diff --git a/integrations/opsgenie/poetry.lock b/integrations/opsgenie/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/opsgenie/poetry.lock +++ b/integrations/opsgenie/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/opsgenie/pyproject.toml b/integrations/opsgenie/pyproject.toml index a4181dd174..1c80ba27a9 100644 --- a/integrations/opsgenie/pyproject.toml +++ b/integrations/opsgenie/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "opsgenie" -version = "0.2.5" +version = "0.2.6" description = "Ocean integration for OpsGenie" authors = ["Isaac Coffie "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/pagerduty/CHANGELOG.md b/integrations/pagerduty/CHANGELOG.md index f1d799f64e..ccadb369b0 100644 --- a/integrations/pagerduty/CHANGELOG.md +++ b/integrations/pagerduty/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.106 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.105 (2024-10-01) diff --git a/integrations/pagerduty/poetry.lock b/integrations/pagerduty/poetry.lock index 5dc442fa63..c47242d943 100644 --- a/integrations/pagerduty/poetry.lock +++ b/integrations/pagerduty/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "071b38af50f8e7b047f31a6436853ea415945011a120abfb058e45c6229d8280" +content-hash = "1b3e35a47ef664c9a248d23627f72cc2d1de6c537befa4140f0a15e29b74e8ba" diff --git a/integrations/pagerduty/pyproject.toml b/integrations/pagerduty/pyproject.toml index 06f024399f..9638c4af67 100644 --- a/integrations/pagerduty/pyproject.toml +++ b/integrations/pagerduty/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "pagerduty" -version = "0.1.105" +version = "0.1.106" description = "Pagerduty Integration" authors = ["Port Team "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} httpx = "^0.27.0" [tool.poetry.group.dev.dependencies] diff --git a/integrations/sentry/CHANGELOG.md b/integrations/sentry/CHANGELOG.md index 3a36c5e790..22ede629dc 100644 --- a/integrations/sentry/CHANGELOG.md +++ b/integrations/sentry/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.82 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.81 (2024-10-01) diff --git a/integrations/sentry/poetry.lock b/integrations/sentry/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/sentry/poetry.lock +++ b/integrations/sentry/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/sentry/pyproject.toml b/integrations/sentry/pyproject.toml index dcc50cffe5..6fb53af4c6 100644 --- a/integrations/sentry/pyproject.toml +++ b/integrations/sentry/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "sentry" -version = "0.1.81" +version = "0.1.82" description = "Sentry Integration" authors = ["Dvir Segev ","Matan Geva "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/servicenow/CHANGELOG.md b/integrations/servicenow/CHANGELOG.md index fc74cc450a..1f16e0f16c 100644 --- a/integrations/servicenow/CHANGELOG.md +++ b/integrations/servicenow/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.72 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.71 (2024-10-01) diff --git a/integrations/servicenow/poetry.lock b/integrations/servicenow/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/servicenow/poetry.lock +++ b/integrations/servicenow/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/servicenow/pyproject.toml b/integrations/servicenow/pyproject.toml index 4a06788610..f761fbcb9a 100644 --- a/integrations/servicenow/pyproject.toml +++ b/integrations/servicenow/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "servicenow" -version = "0.1.71" +version = "0.1.72" description = "Service Now Ocean Integration" authors = ["Isaac Coffie "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/snyk/CHANGELOG.md b/integrations/snyk/CHANGELOG.md index 83bb6af64d..cab612412f 100644 --- a/integrations/snyk/CHANGELOG.md +++ b/integrations/snyk/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.92 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.91 (2024-10-01) diff --git a/integrations/snyk/poetry.lock b/integrations/snyk/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/snyk/poetry.lock +++ b/integrations/snyk/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/snyk/pyproject.toml b/integrations/snyk/pyproject.toml index 9cc98c486c..74922622fd 100644 --- a/integrations/snyk/pyproject.toml +++ b/integrations/snyk/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "snyk" -version = "0.1.91" +version = "0.1.92" description = "Snyk integration powered by Ocean" authors = ["Isaac Coffie "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/sonarqube/CHANGELOG.md b/integrations/sonarqube/CHANGELOG.md index 49d8d3b67f..43dee00ebc 100644 --- a/integrations/sonarqube/CHANGELOG.md +++ b/integrations/sonarqube/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.99 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.98 (2024-10-01) diff --git a/integrations/sonarqube/poetry.lock b/integrations/sonarqube/poetry.lock index 0ecda4e90f..746f1d85d9 100644 --- a/integrations/sonarqube/poetry.lock +++ b/integrations/sonarqube/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "2700b83e2e44f3c09087a29be0d6f0d884d7598caca91efbb74d5aadaf4db23d" +content-hash = "0f3e91e36f43b1b2050532d7707a4f225fa463710e3c95b0527d9fa9dc3c0932" diff --git a/integrations/sonarqube/pyproject.toml b/integrations/sonarqube/pyproject.toml index 81edf189ac..530ae9127d 100644 --- a/integrations/sonarqube/pyproject.toml +++ b/integrations/sonarqube/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "sonarqube" -version = "0.1.98" +version = "0.1.99" description = "SonarQube projects and code quality analysis integration" authors = ["Port Team "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} rich = "^13.5.2" cookiecutter = "^2.3.0" diff --git a/integrations/statuspage/CHANGELOG.md b/integrations/statuspage/CHANGELOG.md index 8b1c8f8be9..eb1cba7280 100644 --- a/integrations/statuspage/CHANGELOG.md +++ b/integrations/statuspage/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.31 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.30 (2024-10-01) diff --git a/integrations/statuspage/poetry.lock b/integrations/statuspage/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/statuspage/poetry.lock +++ b/integrations/statuspage/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/statuspage/pyproject.toml b/integrations/statuspage/pyproject.toml index 37385b77f5..fe79cfe7e0 100644 --- a/integrations/statuspage/pyproject.toml +++ b/integrations/statuspage/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "statuspage" -version = "0.1.30" +version = "0.1.31" description = "Connect Statuspage to Ocean and automatically ingest incidents, updates, and impacted components for comprehensive monitoring" authors = ["Albert Luganga "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/terraform-cloud/CHANGELOG.md b/integrations/terraform-cloud/CHANGELOG.md index e0cf7289ea..1b2f565ce9 100644 --- a/integrations/terraform-cloud/CHANGELOG.md +++ b/integrations/terraform-cloud/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.70 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.69 (2024-10-01) diff --git a/integrations/terraform-cloud/poetry.lock b/integrations/terraform-cloud/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/terraform-cloud/poetry.lock +++ b/integrations/terraform-cloud/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/terraform-cloud/pyproject.toml b/integrations/terraform-cloud/pyproject.toml index 54bd6c5949..311339387e 100644 --- a/integrations/terraform-cloud/pyproject.toml +++ b/integrations/terraform-cloud/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "terraform-cloud" -version = "0.1.69" +version = "0.1.70" description = "Terraform Cloud Integration for Port" authors = ["Michael Armah "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration diff --git a/integrations/wiz/CHANGELOG.md b/integrations/wiz/CHANGELOG.md index 66ccfa7d01..c02b412223 100644 --- a/integrations/wiz/CHANGELOG.md +++ b/integrations/wiz/CHANGELOG.md @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +## 0.1.63 (2024-10-08) + + +### Improvements + +- Bumped ocean version to ^0.12.2 + + ## 0.1.62 (2024-10-01) diff --git a/integrations/wiz/poetry.lock b/integrations/wiz/poetry.lock index 10b84e581e..c6d524e17b 100644 --- a/integrations/wiz/poetry.lock +++ b/integrations/wiz/poetry.lock @@ -989,13 +989,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "port-ocean" -version = "0.12.1" +version = "0.12.2" description = "Port Ocean is a CLI tool for managing your Port projects." optional = false python-versions = "<4.0,>=3.11" files = [ - {file = "port_ocean-0.12.1-py3-none-any.whl", hash = "sha256:e6cad7777521a6c44a127edec5b3ab9b419948551ebf42d2e2893279ee54ee1f"}, - {file = "port_ocean-0.12.1.tar.gz", hash = "sha256:a163b17736717385120abd83e846357523dc157037a46f037f6c3eb1eff8317d"}, + {file = "port_ocean-0.12.2-py3-none-any.whl", hash = "sha256:81cb8b8c1494c6282bf1abd0c4dcf83188c64d5929adf5b93336c85bdd7896a9"}, + {file = "port_ocean-0.12.2.tar.gz", hash = "sha256:ea717d3eb8ee983644af6b8aaf623c3cd968ec44d292f20f8d13822724a5c8d3"}, ] [package.dependencies] @@ -1883,4 +1883,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "5c4b983aae1f8d0622197028027dc4894ac3e145be2753241573be59e79f3413" +content-hash = "a4c59f3bfb72b3c41a1437d6a757db8cc4795fd72203b18e28b48093140bce21" diff --git a/integrations/wiz/pyproject.toml b/integrations/wiz/pyproject.toml index 75b2e8b290..86f8262f87 100644 --- a/integrations/wiz/pyproject.toml +++ b/integrations/wiz/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] name = "wiz" -version = "0.1.62" +version = "0.1.63" description = "Wiz Port integration in Ocean" authors = ["Albert Luganga "] [tool.poetry.dependencies] python = "^3.11" -port_ocean = {version = "^0.12.1", extras = ["cli"]} +port_ocean = {version = "^0.12.2", extras = ["cli"]} [tool.poetry.group.dev.dependencies] # uncomment this if you want to debug the ocean core together with your integration