diff --git a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/_github_exporter_supported_resources.mdx b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/_github_exporter_supported_resources.mdx
index a88e7eb1c..d15a1914f 100644
--- a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/_github_exporter_supported_resources.mdx
+++ b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/_github_exporter_supported_resources.mdx
@@ -1,4 +1,7 @@
- [`repository`](https://docs.github.com/en/rest/repos/repos#get-a-repository)
- [`pull-request`](https://docs.github.com/en/rest/pulls/pulls#get-a-pull-request)
- [`file`](/build-your-software-catalog/sync-data-to-catalog/git/github/#ingest-files-from-your-repositories)
-
+- [`environment`](https://docs.github.com/en/rest/deployments/environments#get-an-environment)
+- [`deployment`](https://docs.github.com/en/rest/deployments/deployments#get-a-deployment)
+- [`releases`](https://docs.github.com/en/rest/releases/releases#list-releases)
+- [`tags`](https://docs.github.com/en/rest/repos/repos#list-repository-tags)
diff --git a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-deployments-environments/_github_exporter_example_deployment_blueprint.mdx b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-deployments-environments/_github_exporter_example_deployment_blueprint.mdx
new file mode 100644
index 000000000..cf3e47719
--- /dev/null
+++ b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-deployments-environments/_github_exporter_example_deployment_blueprint.mdx
@@ -0,0 +1,58 @@
+
+Deployment blueprint (click to expand)
+
+```json showLineNumbers
+{
+ "identifier": "githubDeployment",
+ "title": "Deployment",
+ "icon": "Deployment",
+ "schema": {
+ "properties": {
+ "description": {
+ "title": "Description",
+ "type": "string"
+ },
+ "ref": {
+ "title": "Ref",
+ "type": "string"
+ },
+ "sha": {
+ "title": "Sha",
+ "type": "string"
+ },
+ "transientEnvironment": {
+ "title": "Transient Running Service",
+ "type": "boolean"
+ },
+ "productionEnvironment": {
+ "title": "Production Running Service",
+ "type": "boolean"
+ },
+ "createdAt": {
+ "title": "Created At",
+ "type": "string",
+ "format": "date-time"
+ },
+ "url": {
+ "title": "URL",
+ "type": "string",
+ "icon": "Link",
+ "format": "url"
+ }
+ },
+ "required": []
+ },
+ "mirrorProperties": {},
+ "calculationProperties": {},
+ "relations": {
+ "deployment_environment": {
+ "title": "Deployment Environment",
+ "target": "githubRepoEnvironment",
+ "required": false,
+ "many": false
+ }
+ }
+}
+```
+
+
diff --git a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-deployments-environments/_github_exporter_example_deployments_and_environments_port_app_config.mdx b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-deployments-environments/_github_exporter_example_deployments_and_environments_port_app_config.mdx
new file mode 100644
index 000000000..9735a19ab
--- /dev/null
+++ b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-deployments-environments/_github_exporter_example_deployments_and_environments_port_app_config.mdx
@@ -0,0 +1,59 @@
+
+
+Port port-app-config.yml (click to expand)
+
+```yaml showLineNumbers
+createMissingRelatedEntities: true
+resources:
+ - kind: repository
+ selector:
+ query: "true" # JQ boolean query. If evaluated to false - skip syncing the object.
+ port:
+ entity:
+ mappings:
+ identifier: ".name" # The Entity identifier will be the repository name.
+ title: ".name"
+ blueprint: '"githubRepository"'
+ properties:
+ readme: file://README.md
+ url: .html_url
+ defaultBranch: .default_branch
+ - kind: environment
+ selector:
+ query: "true"
+ port:
+ entity:
+ mappings:
+ identifier: .__repository + "-" + .name
+ title: .name
+ blueprint: '"githubRepoEnvironment"'
+ properties:
+ url: .html_url
+ customBranchPolicies: .deployment_branch_policy.custom_branches_policies
+ protectedBranches: .deployment_branch_policy.protected_branches
+ createdAt: .created_at
+ updatedAt: .updated_at
+ relations:
+ repository: .__repository
+ - kind: deployment
+ selector:
+ query: "true"
+ port:
+ entity:
+ mappings:
+ identifier: .__repository + "-" + (.id|tostring)
+ title: .task + "-" + .environment
+ blueprint: '"githubDeployment"'
+ properties:
+ description: .description
+ ref: .ref
+ sha: .sha
+ productionEnvironment: .production_environment
+ transientEnvironment: .transient_environment
+ createdAt: .created_at
+ url: .url
+ relations:
+ deployment_environment: .__repository + "-" + .environment
+```
+
+
diff --git a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-deployments-environments/_github_exporter_example_environment_blueprint.mdx b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-deployments-environments/_github_exporter_example_environment_blueprint.mdx
new file mode 100644
index 000000000..2d5835f1f
--- /dev/null
+++ b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-deployments-environments/_github_exporter_example_environment_blueprint.mdx
@@ -0,0 +1,51 @@
+
+Deployment Environment blueprint (click to expand)
+
+```json showLineNumbers
+{
+ "identifier": "githubRepoEnvironment",
+ "title": "Deployment Environments",
+ "icon": "Environment",
+ "schema": {
+ "properties": {
+ "url": {
+ "icon": "DefaultProperty",
+ "title": "URL",
+ "type": "string",
+ "format": "url"
+ },
+ "createdAt": {
+ "title": "Created At",
+ "type": "string",
+ "format": "date-time",
+ "icon": "DefaultProperty"
+ },
+ "updatedAt": {
+ "title": "Updated At",
+ "type": "string",
+ "format": "date-time"
+ },
+ "protectedBranches": {
+ "title": "Protected Branches",
+ "type": "boolean"
+ },
+ "customBranchPolicies": {
+ "title": "Custom Branch Policies",
+ "type": "boolean"
+ }
+ },
+ "required": []
+ },
+ "mirrorProperties": {},
+ "calculationProperties": {},
+ "relations": {
+ "repository": {
+ "target": "githubRepository",
+ "required": true,
+ "many": false
+ }
+ }
+}
+```
+
+
diff --git a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-repository-release-tag/_github_exporter_example_release_blueprint.mdx b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-repository-release-tag/_github_exporter_example_release_blueprint.mdx
new file mode 100644
index 000000000..3bae16bcb
--- /dev/null
+++ b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-repository-release-tag/_github_exporter_example_release_blueprint.mdx
@@ -0,0 +1,48 @@
+
+Release blueprint (click to expand)
+
+```json showLineNumbers
+{
+ "identifier": "githubRelease",
+ "title": "Release",
+ "icon": "Github",
+ "schema": {
+ "properties": {
+ "release_creation_time": {
+ "icon": "DefaultProperty",
+ "type": "string",
+ "title": "Release creation time",
+ "format": "date-time"
+ },
+ "author": {
+ "type": "string",
+ "title": "Author"
+ },
+ "description": {
+ "type": "string",
+ "title": "Description"
+ }
+ },
+ "required": []
+ },
+ "mirrorProperties": {},
+ "calculationProperties": {},
+ "aggregationProperties": {},
+ "relations": {
+ "repository": {
+ "title": "Repository",
+ "target": "githubRepository",
+ "required": false,
+ "many": false
+ },
+ "tag": {
+ "title": "Tag",
+ "target": "githubTag",
+ "required": false,
+ "many": false
+ }
+ }
+}
+```
+
+
diff --git a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-repository-release-tag/_github_exporter_example_release_tag_port_app_config.mdx b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-repository-release-tag/_github_exporter_example_release_tag_port_app_config.mdx
new file mode 100644
index 000000000..130b6b502
--- /dev/null
+++ b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-repository-release-tag/_github_exporter_example_release_tag_port_app_config.mdx
@@ -0,0 +1,51 @@
+
+
+ Port port-app-config.yml (click to expand)
+
+```yaml showLineNumbers
+resources:
+ - kind: repository
+ selector:
+ query: "true" # JQ boolean query. If evaluated to false - skip syncing the object.
+ port:
+ entity:
+ mappings:
+ identifier: ".name" # The Entity identifier will be the repository name.
+ title: ".name"
+ blueprint: '"githubRepository"'
+ properties:
+ readme: file://README.md
+ url: .html_url
+ defaultBranch: .default_branch
+ - kind: tag
+ selector:
+ query: 'true'
+ port:
+ entity:
+ mappings:
+ identifier: .name
+ title: .name
+ blueprint: '"githubTag"'
+ properties:
+ commit_sha: .commit.sha
+ relations:
+ repository: .__repository
+ - kind: release
+ selector:
+ query: 'true'
+ port:
+ entity:
+ mappings:
+ identifier: .name
+ title: .name
+ blueprint: '"githubRelease"'
+ properties:
+ author: .author.login
+ description: .body
+ release_creation_time: .created_at
+ relations:
+ tag: .tag_name
+ repository: .__repository
+```
+
+
diff --git a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-repository-release-tag/_github_exporter_example_tag_blueprint.mdx b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-repository-release-tag/_github_exporter_example_tag_blueprint.mdx
new file mode 100644
index 000000000..6b8b8ad67
--- /dev/null
+++ b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/example-repository-release-tag/_github_exporter_example_tag_blueprint.mdx
@@ -0,0 +1,33 @@
+
+Tag blueprint (click to expand)
+
+```json showLineNumbers
+{
+ "identifier": "githubTag",
+ "title": "Tag",
+ "icon": "Github",
+ "schema": {
+ "properties": {
+ "commit_sha": {
+ "icon": "DefaultProperty",
+ "type": "string",
+ "title": "Commit sha"
+ }
+ },
+ "required": []
+ },
+ "mirrorProperties": {},
+ "calculationProperties": {},
+ "aggregationProperties": {},
+ "relations": {
+ "repository": {
+ "title": "Repository",
+ "target": "githubRepository",
+ "required": false,
+ "many": false
+ }
+ }
+}
+```
+
+
diff --git a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/examples.md b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/examples.md
index c73e774a9..cd04fcb9e 100644
--- a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/examples.md
+++ b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/examples/examples.md
@@ -7,6 +7,14 @@ import PRBlueprint from './\_github_exporter_example_pull_request_blueprint.mdx'
import PortAppConfig from './\_github_exporter_example_port_app_config.mdx'
import GitHubResources from '../\_github_exporter_supported_resources.mdx'
+import RepoEnvironmentBlueprint from './example-deployments-environments/\_github_exporter_example_environment_blueprint.mdx'
+import DeploymentBlueprint from './example-deployments-environments/\_github_exporter_example_deployment_blueprint.mdx'
+import PortRepoDeploymentAndEnvironmentAppConfig from './example-deployments-environments/\_github_exporter_example_deployments_and_environments_port_app_config.mdx'
+
+import TagBlueprint from './example-repository-release-tag/\_github_exporter_example_tag_blueprint.mdx'
+import ReleaseBlueprint from './example-repository-release-tag/\_github_exporter_example_release_blueprint.mdx'
+import RepositoryTagReleaseAppConfig from './example-repository-release-tag/\_github_exporter_example_release_tag_port_app_config.mdx'
+
import PackageBlueprint from './example-file-kind/\_example_package_blueprint.mdx'
import PackageAppConfig from './example-file-kind/\_package_json_app_config.mdx'
import FileBlueprint from './example-file-kind/\_example_file_blueprint.mdx'
@@ -48,6 +56,7 @@ The following example demonstrates ingestion of dependencies from a `package.jso
The example will parse the `package.json` file in your repository and extract the dependencies into Port entities.
For more information about ingesting files and file contents, click [here](/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/#ingest-files-from-your-repositories).
+
## Map Files and Repositories
The following example demonstrates mapping files to repository.
@@ -57,6 +66,29 @@ The following example demonstrates mapping files to repository.
+## Map repositories, deployments and environments
+
+The following example demonstrates how to ingest your GitHub repositories, their deployments and environments to Port, you may use the following Port blueprint definitions and `port-app-config.yml`:
+
+
+
+
+
+
+
+
+
+## Map repositories, repository releases and tags
+
+The following example demonstrates how to ingest your GitHub repositories, their releases and tags to Port, you may use the following Port blueprint definitions and `port-app-config.yml`:
+
+
+
+
+
+
+
+
## Map supported resources
diff --git a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/installation/github-app.mdx b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/installation/github-app.mdx
index eb34e275f..67d921182 100644
--- a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/installation/github-app.mdx
+++ b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/installation/github-app.mdx
@@ -46,6 +46,8 @@ This page outlines the following steps:
- Contents: Readonly (for reading port configuration files and repository files).
- Metadata: Readonly.
- Pull Request: Readonly
+ - Deployments: Readonly
+ - Environments: Readonly
- **Organization Permissions:**
- Webhooks: Read and Write (to allow the integration create webhook).
diff --git a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/installation/installation.mdx b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/installation/installation.mdx
index d1670fe58..1517d9e72 100644
--- a/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/installation/installation.mdx
+++ b/docs/build-your-software-catalog/sync-data-to-catalog/git/github-ocean/installation/installation.mdx
@@ -47,6 +47,8 @@ To create a personal access token see Github's [managing your personal access to
- **Content**: Readonly
- **Metadata**: Readonly
- **Pull Requests**: Readonly
+ - **Deployments**: Readonly
+ - **Environments**: Readonly
**Organization permissions:**
- **Webhooks**: Read and Write (for managing webhook)
diff --git a/src/components/ocean-saas-specifics/live-events.jsx b/src/components/ocean-saas-specifics/live-events.jsx
index 4a2a962af..11b0d386a 100644
--- a/src/components/ocean-saas-specifics/live-events.jsx
+++ b/src/components/ocean-saas-specifics/live-events.jsx
@@ -210,7 +210,12 @@ export const liveEvents = {
\n - unassigned \
\n - review_request_removed \
\n - closed \
- \n\n **push** ",
+ \n\n **push** \
+ \n\n **deployment** \
+ \n\n **deployment_status** \
+ \n\n **release:** \
+ \n - created \
+ \n - edited",
};
export const OceanSaasLiveEventsTriggersOAuth = ({ id, isOAuth = false }) => {