diff --git a/_docs/integrations/ci-integrations.md b/_docs/integrations/ci-integrations.md
index 00bcf630..f43ad8e4 100644
--- a/_docs/integrations/ci-integrations.md
+++ b/_docs/integrations/ci-integrations.md
@@ -8,6 +8,8 @@ toc: true
Use Codefresh's Hosted GitOps with any popular Continuous Integration (CI) solution, not just with Codefresh CI.
You can connect a third-party CI solution to Codefresh, such as GitHub Actions for example, to take care of common CI tasks such as building/testing/scanning source code, and have Codefresh Hosted GitOps still responsible for the deployment, including image enrichment and reporting.
+The integration brings in all the CI information to your images which you can see in the Images dashboard.
+
See [Image enrichment with integrations]({{site.baseurl}}/docs/integrations/image-enrichment-overview/).
### Codefresh image reporting and enrichment action
@@ -22,8 +24,8 @@ Use the action as follows:
1. Use existing CI actions for compiling code, running unit tests, security scanning etc.
1. Place the final action in the pipeline as the "report image" action provided by Codefresh.
See:
- [GitHub Action Codefresh report image](https://github.com/marketplace/actions/codefresh-report-image){:target="\_blank"}
- [Codefresh Classic Codefresh report image](https://codefresh.io/steps/step/codefresh-report-image){:target="\_blank"}
+ [GitHub Action Codefresh report image](https://github.com/marketplace/actions/codefresh-report-image){:target="\_blank"}
+ [Codefresh Classic Codefresh report image](https://codefresh.io/steps/step/codefresh-report-image){:target="\_blank"}
1. When the pipeline completes execution, Codefresh retrieves the information on the image that was built and its metadata through the integration names specified (essentially the same data that Codefresh CI would send automatically).
1. View the image in Codefresh's [Images dashboard]({{site.baseurl}}/docs/deployment/images/), and in any [application]({{site.baseurl}}/docs/deployment/applications-dashboard/) in which it is used.
@@ -31,17 +33,29 @@ Use the action as follows:
Connecting the CI platform/tool to Codefresh from the UI includes configuring the required arguments, and then generating and copying the YAML manifest for the report image to your pipeline.
1. In the Codefresh UI, go to [Integrations](https://g.codefresh.io/2.0/account-settings/integrations){:target="\_blank"}.
-1. Filter by **CI tools**, select the CI tool, and click **Configure**.
+1. Filter by **CI tools**, then select the CI tool and click **Add**.
1. Define the arguments for the CI tool:
[Codefresh Classic]({{site.baseurl}}/docs/integrations/ci-integrations/codefresh-classic/)
[GitHub Action]({{site.baseurl}}/docs/integrations/ci-integrations/github-actions/)
[Jenkins]({{site.baseurl}}/docs/integrations/ci-integrations/jenkins/)
- For the complete list of arguments you can use, see [CI integration argument reference](#ci-integration-argument-reference) later in this article.
+ For the complete list of arguments you can use, see [CI integration argument reference](#ci-integration-argument-reference) in this article.
+
+1. To generate a YAML snippet with the arguments, on the top-right, click **Generate Manifest**.
+ Codefresh validates the generated manifest, and alerts you to undefined arguments that are required, and other errors.
+
+ {% include image.html
+lightbox="true"
+file="/images/integrations/generated-manifest-with-error.png"
+url="/images/integrations/generated-manifest-with-error.png"
+alt="Example of manifest generated for Codefresh Classic with validation errors"
+caption="Example of manifest generated for Codefresh Classic with validation errors"
+max-width="50%"
+%}
-1. To generate a YAML snippet with the arguments, on the top-right, click **Generate Manifest**.
-1. In the generated manifest, add fields and values, as needed.
-1. To copy the YAML manifest, click **Copy**.
+{:start="5"}
+1. If required, click **Close**, update as needed and generate the manifest again.
+1. If there are no validation errors, click **Copy**.
{% include image.html
lightbox="true"
@@ -53,7 +67,7 @@ max-width="50%"
%}
{:start="6"}
-1. Paste it as the last step in your CI pipeline.
+1. Paste the copied manifest as the last step in your CI pipeline.
### CI integration argument reference
The table describes _all_ the arguments required for CI integrations in general. The actual arguments required, differs according to the CI integration tool.
@@ -61,24 +75,26 @@ The table describes _all_ the arguments required for CI integrations in general.
{: .table .table-bordered .table-hover}
| Argument | Description | Required/Optional/Default |
| ---------- | -------- | ------------------------- |
-| `CF_HOST` | _Deprecated from v 0.0.460 and higher._ Recommend using `CF_RUNTIME_NAME` instead. {::nomarkdown}
CF_HOST has been deprecated because the URL is not static, and any change can fail the enrichment.
The URL to the cluster with the Codefresh runtime to integrate with. If you have more than one runtime, select the runtime from the list. Codefresh displays the URL of the selected runtime cluster.{:/} | Required |
+| `CF_HOST` | _Deprecated from v 0.0.460 and higher._ Recommend using `CF_RUNTIME_NAME` instead. {::nomarkdown}
CF_HOST has been deprecated because the URL is not static, and any change can fail the enrichment.
The URL to the cluster with the Codefresh runtime to integrate with. If you have more than one runtime, select the runtime from the list. Codefresh displays the URL of the selected runtime cluster.{:/} | _Deprecated_ |
| `CF_RUNTIME_NAME` | The runtime to use for the integration. If you have more than one runtime, select the runtime from the list. | Required |
+| `CF_PLATFORM_URL` | The root URL of the Codefresh application. The default value is `https://g.codefresh.io`. | Optional |
| `CF_API_KEY` | The API key for authentication. Generate the key for the integration. | Required |
| `CF_CONTAINER_REGISTRY_INTEGRATION` | The name of the container registry integration created in Codefresh where the image is stored. See [Container registry integrations]({{site.baseurl}}/docs/integrations/container-registries/). | Optional |
-| `CF_JIRA_INTEGRATION` | The name of the issue tracking integration created in Codefresh to use to enrich the image. Relevant only if Jira enrichment is required for the image. See [Jira integration]({{site.baseurl}}/docs/integrations/issue-tracking/jira/). | Optional |
+| `CF_JIRA_INTEGRATION` | _Deprecated from version 0.0.565 and higher._ Replaced by `CF_ISSUE_TRACKING_INTEGRATION`. | _Deprecated_
+| `CF_ISSUE_TRACKING_INTEGRATION` | The name of the issue tracking integration created in Codefresh to use for image enrichment. Relevant only if Jira enrichment is required for the image. If you don't have a Jira integration, click **Create Atlassian Jira Integration** and configure settings. See [Jira integration]({{site.baseurl}}/docs/integrations/issue-tracking/jira/). | Optional |
| `CF_IMAGE` | The image to be enriched and reported in Codefresh. Pass the `[account-name]/[image-name]:[tag]` built in your CI. | Required |
| `CF_WORKFLOW_NAME` | The name assigned to the workflow that builds the image. When defined, the name is displayed in the Codefresh platform. Example, `Staging step` | Optional |
| `CF_GIT_BRANCH` | The Git branch with the commit and PR (pull request) data to add to the image. Pass the Branch from the event payload used to trigger your action. | Required |
-| `CF_GIT_REPO` | The Git repository with the configuration and code used to build the image. | Required |
-| `CF_GIT_PROVIDER` | The Git provider for the integration, and can be either GitHub, GitLab, or Bitbucket. | Required |
-| `CF_GITHUB_TOKEN` | The GitHub authentication token. The token must have `repo` scope. See [Git tokens]({{site.baseurl}}/docs/reference/git-tokens/). | Required |
-| `CF_GITHUB_API_URL` | The URL to the GitHub developer site. | Required |
-| `CF_BITBUCKET_USERNAME` | The username for the Bitbucket or the BitBucket Server (on-prem) account. | Required |
-| `CF_BITBUCKET_PASSWORD` | The password for the Bitbucket or the BitBucket Server (on-prem) account. | Required |
-| `CF_BITBUCKET_HOST_URL` | Relevant for Bitbucket Server accounts only. The URL address of your Bitbucker Server instance. Example, `https://bitbucket-server:7990`. | Required |
-|`CF_JIRA_PROJECT_PREFIX` | Relevant only when `CF_JIRA_INTEGRATION` is defined. The Jira project prefix that identifies the ticket number to use.| Required|
-| `CF_JIRA_MESSAGE` | Relevant only when `CF_JIRA_INTEGRATION` is defined. The Jira issue IDs matching the string to associate with the image. | Required |
-| `CF_JIRA_FAIL_ON_NOT_FOUND` | Relevant only when `CF_JIRA_INTEGRATION` is defined. The report image action when the `CF_JIRA_MESSAGE` is not found. When set to `true`, the report image action is failed. | Required |
+| `CF_GIT_REPO` | The Git repository with the configuration and code used to build the image. {::nomarkdown}
- Optional for GitHub Actions.
- Required for Classic and Jenkins.
{:/} | Required |
+| `CF_GIT_PROVIDER` | The Git provider for the integration, and can be either `github`, `gitlab`, or `bitbucket`. {::nomarkdown} - Optional when you don't define other related Git provider arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the Git provider arguments. For example, when you define CF_GITLAB_TOKEN, then you must define all Git provider arguments, in this case, CF_GIT_PROVIDER as gitlab, and CF_GITLAB_HOST_URL.
{:/}| Optional |
+| `CF_GITLAB_TOKEN` | The token to authenticate the GitLab account. {::nomarkdown} - Optional when you don't define any GitLab-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the GitLab-specific arguments, such as CF_GIT_PROVIDER as gitlab, or CF_GITLAB_HOST_URL.
{:/} | Optional |
+| `CF_GITLAB_HOST_URL` | The URL address of your GitLab Cloud/Server instance. {::nomarkdown} - Optional when you don't define other related GitLab-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the GitLab-specific arguments, such as CF_GIT_PROVIDER as gitlab, or CF_GITLAB_TOKEN.
{:/} | Optional |
+| `CF_BITBUCKET_USERNAME` | The username for the Bitbucket or the Bitbucket Server (on-prem) account. {::nomarkdown}- Optional when you don't define other related Bitbucket-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the Bitbucket-specific arguments, such as CF_GIT_PROVIDER as bitbucket, CF_BITBUCKET_PASSWORD or CF_BITBUCKET_HOST_URL.
{:/}| Optional |
+| `CF_BITBUCKET_PASSWORD` | The password for the Bitbucket or the BitBucket Server (on-prem) account. {::nomarkdown} - Optional when you don't define other related Bitbucket-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the Bitbucket-specific arguments, such as CF_GIT_PROVIDER as bitbucket, CF_BITBUCKET_USERNAME, or CF_BITBUCKET_HOST_URL.
{:/}| Optional |
+| `CF_BITBUCKET_HOST_URL` | Relevant for Bitbucket Server accounts only. The URL address of your Bitbucket Server instance. Example, `https://bitbucket-server:7990`. {::nomarkdown}- Optional when you don't define other related Bitbucket Server-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the Bitbucket Server-specific arguments, such as CF_GIT_PROVIDER as bitbucket, CF_BITBUCKET_USERNAME or CF_BITBUCKET_PASSWORD.
{:/} | Optional |
+|`CF_JIRA_PROJECT_PREFIX` | Relevant only when `CF_ISSUE_TRACKING_INTEGRATION` is defined. The Jira project prefix that identifies the ticket number to use.| Required|
+| `CF_JIRA_MESSAGE` | Relevant only when `CF_ISSUE_TRACKING_INTEGRATION` is defined. The Jira issue IDs matching the string to associate with the image. | Required |
+| `CF_JIRA_FAIL_ON_NOT_FOUND` | Relevant only when `CF_ISSUE_TRACKING_INTEGRATION` is defined. The report image action when the `CF_JIRA_MESSAGE` is not found. When set to `true`, the report image action is failed. | Required |
### Related articles
[Container registry integrations]({{site.baseurl}}/docs/integrations/container-registries/)
diff --git a/_docs/integrations/ci-integrations/codefresh-classic.md b/_docs/integrations/ci-integrations/codefresh-classic.md
index a0c358cc..e15ab68e 100644
--- a/_docs/integrations/ci-integrations/codefresh-classic.md
+++ b/_docs/integrations/ci-integrations/codefresh-classic.md
@@ -6,36 +6,95 @@ sub_group: ci-integrations
toc: true
---
- Use Hosted GitOps with any popular Continuous Integration (CI) solution, not just with Codefresh CI. Codefresh Classic is one of the third-party CI platform/tools that you can connect to Codefresh for deployment with image enrichment and reporting.
-
+ Use Hosted GitOps with any popular Continuous Integration (CI) solution, not just with Codefresh CI. Codefresh Classic is one of the third-party CI platform/tools that you can connect to Codefresh for deployment with image enrichment and reporting.
+
+
+ Connecting Codefresh Classic, adds the CI information to images which are displayed in the Images dashboard, as in the example below.
+
+ {% include
+ image.html
+ lightbox="true"
+ file="/images/integrations/images-dashboard.png"
+ url="/images/integrations/images-dashboard.png"
+ alt="Images dashboard with enriched image information"
+ caption="Images dashboard with enriched image information"
+ max-width="70%"
+ %}
+
+
For information on how to use the image reporting action in your Codefresh Classic pipeline and how to configure the integration, see [CI Integrations]({{site.baseurl}}/docs/integrations/ci-integrations/).
+### Example of Codefresh Classic pipeline with report image step
+
+{% highlight yaml %}
+{% raw %}
+
+reportImage:
+ title: Report image to Codefresh CD
+ type: codefresh-report-image
+ working_directory: /code
+ arguments:
+ # The URL to the cluster with the Codefresh runtime to integrate with.
+ CF_HOST: '[runtime-host-url]'
+
+ # Codefresh API key !! Committing a plain text token is a security risk. We highly recommend using encrypted secrets !!
+ # Documentation - https://codefresh.io/docs/docs/configure-ci-cd-pipeline/secrets-store/
+ CF_API_KEY: ${{API_KEY}}
+
+ # Image path to enrich
+ CF_IMAGE: '[full image path here, including tag]'
+
+ # Name of Container registry integration
+ CF_CONTAINER_REGISTRY_INTEGRATION: 'v2'
+
+ # The git branch which is related for the commit
+ CF_GIT_BRANCH: '[name-of-your-git-branch]'
+
+ # Name of Jira integration
+ CF_JIRA_INTEGRATION: 'jira'
+
+ # Jira project filter
+ CF_JIRA_PROJECT_PREFIX: '[jira-project-prefix]'
+
+ # String starting with the issue ID to associate with image
+ CF_JIRA_MESSAGE: '[issue-id]'
+
+{% endraw %}
+{% endhighlight yaml %}
+
### Codefresh Classic-Codefresh integration arguments
-The table describes the arguments required to connect Codefresh Classic to Codefresh.
+The table describes the arguments required to connect Codefresh Classic to Codefresh.
+
+>Except for Git branch and Git repo which are required, you can omit other Git provider arguments. Codefresh retrieves the required values from the runtime context selected for the integration.
+
+For the complete argument reference, see [CI integration argument reference]({{site.baseurl}}/docs/integrations/ci-integrations/#ci-integration-argument-reference).
+
{: .table .table-bordered .table-hover}
| Argument | Description | Required/Optional/Default |
| ---------- | -------- | ------------------------- |
| `CF_RUNTIME_NAME` | The runtime to use for the integration. If you have more than one runtime, select the runtime from the list. | Required |
+| `CF_PLATFORM_URL` | The root URL of the Codefresh application. The default value is `https://g.codefresh.io`. | Optional |
| `CF_API_KEY` | The API key to authenticate the Codefresh Classic user to Codefresh. Generate the key for the integration. | Required |
| `CF_CONTAINER_REGISTRY_INTEGRATION` | The name of the container registry integration created in Codefresh where the image is stored. To create a container registry integration if you don't have one, click **Create Container Registry Integration**, and then configure the settings. See [Container registry integrations]({{site.baseurl}}/docs/integrations/container-registries/). | Optional |
-| `CF_JIRA_INTEGRATION` | The name of the issue tracking integration created in Codefresh to use to enrich the image. Relevant only if Jira enrichment is required for the image. If you don't have a Jira integration, click **Create Atlassian Jira Integration** and configure settings. See [Jira integration]({{site.baseurl}}/docs/integrations/issue-tracking/jira/). | Optional |
+| `CF_JIRA_INTEGRATION` | Deprecated from version 0.0.565. Replaced by `CF_ISSUE_TRACKING_INTEGRATION`. | _Deprecated_
+| `CF_ISSUE_TRACKING_INTEGRATION` | The name of the issue tracking integration created in Codefresh to use to enrich the image. Relevant only if Jira enrichment is required for the image. If you don't have a Jira integration, click **Create Atlassian Jira Integration** and configure settings. See [Jira integration]({{site.baseurl}}/docs/integrations/issue-tracking/jira/). | Optional |
| `CF_IMAGE` | The image to be enriched and reported in Codefresh. Pass the `[account-name]/[image-name]:[tag]` built in your CI. | Required |
| `CF_WORKFLOW_NAME` | The name assigned to the workflow that builds the image. When defined, the name is displayed in the Codefresh platform. Example, `Staging step` | Optional |
| `CF_GIT_BRANCH` | The Git branch with the commit and PR (pull request) data to add to the image. Pass the Branch from the event payload used to trigger your action. | Required |
| `CF_GIT_REPO` | The Git repository with the configuration and code used to build the image. | Required |
-| `CF_GIT_PROVIDER` | The Git provider for the integration, and can be either GitHub, GitLab, or Bitbucket. | Required |
-| `CF_GITHUB_TOKEN` | The GitHub authentication token. The token must have `repo` scope. See [Git tokens]({{site.baseurl}}/docs/reference/git-tokens/). | Required |
-| `CF_GITHUB_API_URL` | The URL to the GitHub developer site. | Required |
-| `CF_BITBUCKET_USERNAME` | The username for the Bitbucket or the BitBucket Server (on-prem) account. | Required |
-| `CF_BITBUCKET_PASSWORD` | The password for the Bitbucket or the BitBucket Server (on-prem) account. | Required |
-| `CF_BITBUCKET_HOST_URL` | Relevant for Bitbucket Server accounts only. The URL address of your Bitbucket Server instance. Example, `https://bitbucket-server:7990`. | Required |
-|`CF_JIRA_PROJECT_PREFIX` | Relevant only when `CF_JIRA_INTEGRATION` is defined. The Jira project prefix that identifies the ticket number to use.| Required|
-| `CF_JIRA_MESSAGE` | Relevant only when `CF_JIRA_INTEGRATION` is defined. The Jira issue IDs matching the string to associate with the image. | Required |
-| `CF_JIRA_FAIL_ON_NOT_FOUND` | Relevant only when `CF_JIRA_INTEGRATION` is defined. The report image action when the `CF_JIRA_MESSAGE` is not found. When set to `true`, the report image action is failed. | Required |
+| `CF_GIT_PROVIDER` | The Git provider for the integration, and can be either `github`, `gitlab`, or `bitbucket`. {::nomarkdown} - Optional when you don't define other related Git provider arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the Git provider arguments. For example, when you define CF_GITLAB_TOKEN, then you must define all Git provider arguments, in this case, CF_GIT_PROVIDER as gitlab, and CF_GITLAB_HOST_URL.
{:/}| Optional |
+| `CF_GITLAB_TOKEN` | The token to authenticate the GitLab account. {::nomarkdown} - Optional when you don't define any GitLab-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the GitLab-specific arguments, such as CF_GIT_PROVIDER as gitlab, or CF_GITLAB_HOST_URL.
{:/} | Optional |
+| `CF_GITLAB_HOST_URL` | The URL address of your GitLab Cloud/Server instance. {::nomarkdown} - Optional when you don't define other related GitLab-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the GitLab-specific arguments, such as CF_GIT_PROVIDER as gitlab, or CF_GITLAB_TOKEN.
{:/} | Optional |
+| `CF_BITBUCKET_USERNAME` | The username for the Bitbucket or the Bitbucket Server (on-prem) account. {::nomarkdown}- Optional when you don't define other related Bitbucket-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the Bitbucket-specific arguments, such as CF_GIT_PROVIDER as bitbucket, CF_BITBUCKET_PASSWORD or CF_BITBUCKET_HOST_URL.
{:/}| Optional |
+| `CF_BITBUCKET_PASSWORD` | The password for the Bitbucket or the Bitbucket Server (on-prem) account. {::nomarkdown} - Optional when you don't define other related Bitbucket-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the Bitbucket-specific arguments, such as CF_GIT_PROVIDER as bitbucket, CF_BITBUCKET_USERNAME, or CF_BITBUCKET_HOST_URL.
{:/}| Optional |
+| `CF_BITBUCKET_HOST_URL` | Relevant for Bitbucket Server accounts only. The URL address of your Bitbucket Server instance. Example, `https://bitbucket-server:7990`. {::nomarkdown}- Optional when you don't define other related Bitbucket Server-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the Bitbucket Server-specific arguments, such as CF_GIT_PROVIDER as bitbucket, CF_BITBUCKET_USERNAME or CF_BITBUCKET_PASSWORD.
{:/} | Optional |
+|`CF_JIRA_PROJECT_PREFIX` | Relevant only when `CF_ISSUE_TRACKING_INTEGRATION` is defined. The Jira project prefix that identifies the ticket number to use.| Required|
+| `CF_JIRA_MESSAGE` | Relevant only when `CF_ISSUE_TRACKING_INTEGRATION` is defined. The Jira issue IDs matching the string to associate with the image. | Required |
+| `CF_JIRA_FAIL_ON_NOT_FOUND` | Relevant only when `CF_ISSUE_TRACKING_INTEGRATION` is defined. The report image action when the `CF_JIRA_MESSAGE` is not found. When set to `true`, the report image action is failed. | Required |
For how-to instructions, see [Connect a third-party CI platform/tool to Codefresh]({{site.baseurl}}/docs/integrations/ci-integrations/#connect-a-third-party-ci-platformtool-to-codefresh/).
@@ -142,44 +201,6 @@ The Jira message represents an existing Jira issue, and must be a literal string
Value:
`CR-1246`
-### Example of report image step in Codefresh Classic pipeline
-
-{% highlight yaml %}
-{% raw %}
-
-reportImage:
- title: Report image to Codefresh CD
- type: codefresh-report-image
- working_directory: /code
- arguments:
- # The URL to the cluster with the Codefresh runtime to integrate with.
- CF_HOST: '[runtime-host-url]'
-
- # Codefresh API key !! Committing a plain text token is a security risk. We highly recommend using encrypted secrets !!
- # Documentation - https://codefresh.io/docs/docs/configure-ci-cd-pipeline/secrets-store/
- CF_API_KEY: ${{API_KEY}}
-
- # Image path to enrich
- CF_IMAGE: '[full image path here, including tag]'
-
- # Name of Container registry integration
- CF_CONTAINER_REGISTRY_INTEGRATION: 'v2'
-
- # The git branch which is related for the commit
- CF_GIT_BRANCH: '[name-of-your-git-branch]'
-
- # Name of Jira integration
- CF_JIRA_INTEGRATION: 'jira'
-
- # Jira project filter
- CF_JIRA_PROJECT_PREFIX: '[jira-project-prefix]'
-
- # String starting with the issue ID to associate with image
- CF_JIRA_MESSAGE: '[issue-id]'
-
-{% endraw %}
-{% endhighlight yaml %}
-
### Codefresh Classic integration logs
View and analyze logs for Codefresh Classic workflows through the Logs tab. When a Codefresh Classic pipeline is run, it is added to the Logs tab.
You can:
diff --git a/_docs/integrations/ci-integrations/github-actions.md b/_docs/integrations/ci-integrations/github-actions.md
index a66f1795..fa6dd1c8 100644
--- a/_docs/integrations/ci-integrations/github-actions.md
+++ b/_docs/integrations/ci-integrations/github-actions.md
@@ -7,11 +7,99 @@ toc: true
---
Use Codefresh Hosted GitOps with any popular Continuous Integration (CI) solution, not just with Codefresh CI.
-GitHub Actions is one of the third-party CI solutions that you can connect to Codefresh for deployment with image reporting and enrichment.
+GitHub Actions is one of the third-party CI solutions that you can connect to Codefresh for deployment with image reporting and enrichment.
+
+ Connecting a GitHub Action, adds the CI information to images which are displayed in the Images dashboard, as in the example below.
+
+ {% include
+ image.html
+ lightbox="true"
+ file="/images/integrations/images-dashboard.png"
+ url="/images/integrations/images-dashboard.png"
+ alt="Images dashboard with enriched image information"
+ caption="Images dashboard with enriched image information"
+ max-width="70%"
+ %}
For information on how to use the image reporting action in your GitHub Action pipeline and how to configure the integration, see [CI Integrations]({{site.baseurl}}/docs/integrations/ci-integrations/).
+### Example of GitHub Actions pipeline with Codefresh report image action
+
+
+Here is an example pipeline that uses GitHub Actions to build a container image, and the Codefresh action to enrich and report the resulting image to Codefresh.
+
+Because a Jira integration account is configured in Codefresh, the step needs only the name for `CF_JIRA_INTEGRATION`, instead of explicit credentials `CF_JIRA_API_TOKEN`, `CF_JIRA_HOST_URL`, and `CF_JIRA_EMAIL`.
+
+
+{% highlight yaml %}
+{% raw %}
+
+name: Docker Image CI
+
+on:
+ push:
+ branches: [ main ]
+ pull_request:
+ branches: [ main ]
+jobs:
+ build:
+ environment:
+ name: test
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ - name: Login to DockerHub
+ uses: docker/login-action@v2
+ with:
+ username: ${{ secrets.DOCKERHUB_USERNAME }}
+ password: ${{ secrets.DOCKERHUB_TOKEN }}
+ - name: Build & push the Docker image
+ env:
+ CF_IMAGE: ${{ secrets.DOCKERHUB_USERNAME }}/build-by-github-action:0.0.1
+ run: |
+ docker build . --file Dockerfile --tag $CF_IMAGE && docker push $CF_IMAGE
+ echo "Image should be accessible to your local machine (after docker login) by:"
+ echo "docker pull $CF_IMAGE"
+ docker pull $CF_IMAGE
+ echo "On the next step, the report image would use the integration to pull information on the reported image, using the specified enrichers."
+ - name: report image by action
+ with:
+ # Name of runtime to implement the enrichment
+ CF_RUNTIME_NAME: 'codefresh-hosted'
+
+ # Codefresh API key !! Committing a plain text token is a security risk. We highly recommend using encrypted secrets. !!
+ # Documentation - https://docs.github.com/en/actions/security-guides/encrypted-secrets
+ CF_API_KEY: ${{ secrets.USER_TOKEN }}
+
+ # Name of Container registry integration
+ CF_CONTAINER_REGISTRY_INTEGRATION: 'docker'
+
+ # The git branch which is related for the commit
+ CF_GIT_BRANCH: 'main'
+
+ # Image path to enrich
+ CF_IMAGE: ${{ secrets.DOCKERHUB_USERNAME }}/build-by-github-action:0.0.1
+
+ # GitHub Access token !! Committing a plain text token is a security risk. We highly recommend using encrypted secrets. !!
+ # Documentation - https://docs.github.com/en/actions/security-guides/encrypted-secrets
+ CF_GITHUB_TOKEN: ${{ secrets.CF_GITHUB_TOKEN }}
+
+ # Name of Jira integration
+ CF_ISSUE_TRACKING_INTEGRATION: 'jira'
+
+ # String starting with the issue ID to associate with image
+ CF_JIRA_MESSAGE: 'CR-11027'
+
+ # Jira project filter
+ CF_JIRA_PROJECT_PREFIX: "CR"
+ uses: codefresh-io/codefresh-report-image@latest
+
+
+{% endraw %}
+{% endhighlight yaml %}
+
### GitHub Action-Codefresh integration arguments
The table describes the arguments required to connect a GitHub Action to Codefresh.
@@ -21,29 +109,22 @@ The table describes the arguments required to connect a GitHub Action to Codefre
| ---------- | -------- | ------------------------- |
| `CF_HOST` | _Deprecated from v 0.0.460 and higher._ Recommend using `CF_RUNTIME_NAME` instead. {::nomarkdown}
CF_HOST has been deprecated because the URL is not static, and any change can fail the enrichment.
The URL to the cluster with the Codefresh runtime to integrate with. If you have more than one runtime, select the runtime from the list. Codefresh displays the URL of the selected runtime cluster.{:/} | Required |
| `CF_RUNTIME_NAME` | The runtime to use for the integration. If you have more than one runtime, select the runtime from the list. | Required |
+| `CF_PLATFORM_URL` | The root URL of the Codefresh application. The default value is `https://g.codefresh.io`. | Optional |
| `CF_API_KEY` | The API key to authenticate the GitHub Actions user to Codefresh. Generate the key for the GitHub Action. {::nomarkdown}
Enter this token in GitHub Actions as a secret with the name CF_API_KEY. You can then reference it in all GitHub pipelines as you would any other secret.{:/}| Required |
| `CF_CONTAINER_REGISTRY_INTEGRATION` | The name of the container registry integration created in Codefresh where the image is stored. {::nomarkdown}
- For a GitHub Container registry, select GHCR_GITHUB_TOKEN_AUTHENTICATION even if you have not created an integration in Codefresh.
Codefresh retrieves and provides the explicit credentials for the container registry on generating the integration manifest. - To create a container registry integration if you don't have one, click Create Container Registry Integration, and then configure the settings.
See Container registry integrations.
{:/} | Optional |
-| `CF_JIRA_INTEGRATION` | The name of the Jira integration created in Codefresh to use for the report image action. Relevant only if Jira enrichment is required for the image. If you don't have a Jira integration, click **Create Atlassian Jira Integration** and configure settings. See [Jira integration]({{site.baseurl}}/docs/integrations/issue-tracking/jira/). | Optional |
+| `CF_GIT_REPO` | The Git repository with the configuration and code used to build the image. If not defined, Codefresh retrieves it from the repo defined for the GitHub Action. | Required |
+| `CF_JIRA_INTEGRATION` | Deprecated from version 0.0.565. Replaced by `CF_ISSUE_TRACKING_INTEGRATION`. | _Deprecated_
+| `CF_ISSUE_TRACKING_INTEGRATION` | The name of the issue tracking integration created in Codefresh to use to enrich the image. Relevant only if Jira enrichment is required for the image. If you don't have a Jira integration, click **Create Atlassian Jira Integration** and configure settings. See [Jira integration]({{site.baseurl}}/docs/integrations/issue-tracking/jira/). | Optional |
| `CF_IMAGE` | The image to be enriched and reported in Codefresh. Pass the `[account-name]/[image-name]:[tag]` built in your CI. | Required |
| `CF_WORKFLOW_NAME` | The name assigned to the workflow that builds the image. When defined, the name is displayed in the Codefresh platform. Example, `Staging step` | Optional |
| `CF_GIT_BRANCH` | The Git branch with the commit and PR (pull request) data to add to the image. Pass the Branch from the event payload used to trigger your action. | Required |
-| `CF_GITHUB_TOKEN` | The GitHub authentication token. The token must have `repo` scope. See [Git tokens]({{site.baseurl}}/docs/reference/git-tokens/). | Required |
-|`CF_JIRA_PROJECT_PREFIX` | Relevant only when `CF_JIRA_INTEGRATION` is defined. The Jira project prefix that identifies the ticket number to use.| Required|
-| `CF_JIRA_MESSAGE` | Relevant only when `CF_JIRA_INTEGRATION` is defined. The Jira issue IDs matching the string to associate with the image. | Required |
-| `CF_JIRA_FAIL_ON_NOT_FOUND` | Relevant only when `CF_JIRA_INTEGRATION` is defined. The report image action when the `CF_JIRA_MESSAGE` is not found. When set to `true`, the report image action is failed. | Required |
+| `CF_GITHUB_TOKEN` | The GitHub authentication token. See [Git tokens]({{site.baseurl}}/docs/reference/git-tokens/#git-personal-tokens). | Required |
+|`CF_JIRA_PROJECT_PREFIX` | Relevant only when `CF_ISSUE_TRACKING_INTEGRATION` is defined. The Jira project prefix that identifies the ticket number to use.| Required|
+| `CF_JIRA_MESSAGE` | Relevant only when `CF_ISSUE_TRACKING_INTEGRATION` is defined. The Jira issue IDs matching the string to associate with the image. | Required |
+| `CF_JIRA_FAIL_ON_NOT_FOUND` | Relevant only when `CF_ISSUE_TRACKING_INTEGRATION` is defined. The report image action when the `CF_JIRA_MESSAGE` is not found. When set to `true`, the report image action is failed. | Required |
-{% include image.html
-lightbox="true"
-file="/images/integrations/github-actions/github-action-int-settings.png"
-url="/images/integrations/github-actions/github-action-int-settings.png"
-alt="GitHub Action integration for image enrichment"
-caption="GitHub Action integration for image enrichment"
-max-width="50%"
-%}
-
For how-to instructions, see [Connect a third-party CI platform/tool to Codefresh]({{site.baseurl}}/docs/integrations/ci-integrations/#connect-a-third-party-ci-platformtool-to-codefresh).
-
### Templatization examples for CF arguments
Arguments such as `CF_IMAGE`, `CF_GIT_BRANCH`, and `CF_JIRA_MESSAGE` are populated dynamically when the GitHub Actions pipeline is triggered. You can templatize the values of these arguments to ensure that the required information is included in the reported image.
@@ -128,81 +209,6 @@ The Jira message represents an existing Jira issue, and must be a literal string
Value:
`CR-1246`
-### GitHub Actions pipeline example
-
-Here is an example pipeline that uses GitHub Actions to build a container image, and the Codefresh action to enrich and report the resulting image to Codefresh.
-
-Because a Jira integration account is configured in Codefresh, the step needs only the name for `CF_JIRA_INTEGRATION`, instead of explicit credentials `CF_JIRA_API_TOKEN`, `CF_JIRA_HOST_URL`, and `CF_JIRA_EMAIL`.
-
-
-{% highlight yaml %}
-{% raw %}
-
-name: Docker Image CI
-
-on:
- push:
- branches: [ main ]
- pull_request:
- branches: [ main ]
-jobs:
- build:
- environment:
- name: test
- runs-on: ubuntu-latest
- steps:
- - name: Checkout
- uses: actions/checkout@v3
- - name: Login to DockerHub
- uses: docker/login-action@v2
- with:
- username: ${{ secrets.DOCKERHUB_USERNAME }}
- password: ${{ secrets.DOCKERHUB_TOKEN }}
- - name: Build & push the Docker image
- env:
- CF_IMAGE: ${{ secrets.DOCKERHUB_USERNAME }}/build-by-github-action:0.0.1
- run: |
- docker build . --file Dockerfile --tag $CF_IMAGE && docker push $CF_IMAGE
- echo "Image should be accessible to your local machine (after docker login) by:"
- echo "docker pull $CF_IMAGE"
- docker pull $CF_IMAGE
- echo "On the next step, the report image would use the integration to pull information on the reported image, using the specified enrichers."
- - name: report image by action
- with:
- # Name of runtime to implement the enrichment
- CF_RUNTIME_NAME: 'codefresh-hosted'
-
- # Codefresh API key !! Committing a plain text token is a security risk. We highly recommend using encrypted secrets. !!
- # Documentation - https://docs.github.com/en/actions/security-guides/encrypted-secrets
- CF_API_KEY: ${{ secrets.USER_TOKEN }}
-
- # Name of Container registry integration
- CF_CONTAINER_REGISTRY_INTEGRATION: 'docker'
-
- # The git branch which is related for the commit
- CF_GIT_BRANCH: 'main'
-
- # Image path to enrich
- CF_IMAGE: ${{ secrets.DOCKERHUB_USERNAME }}/build-by-github-action:0.0.1
-
- # GitHub Access token !! Committing a plain text token is a security risk. We highly recommend using encrypted secrets. !!
- # Documentation - https://docs.github.com/en/actions/security-guides/encrypted-secrets
- CF_GITHUB_TOKEN: ${{ secrets.CF_GITHUB_TOKEN }}
-
- # Name of Jira integration
- CF_JIRA_INTEGRATION: 'jira'
-
- # String starting with the issue ID to associate with image
- CF_JIRA_MESSAGE: 'CR-11027'
-
- # Jira project filter
- CF_JIRA_PROJECT_PREFIX: "CR"
- uses: codefresh-io/codefresh-report-image@latest
-
-
-{% endraw %}
-{% endhighlight yaml %}
-
### GitHub Action logs
View and analyze logs for GitHub Action workflows through the Logs tab. When a GitHub Action is run, it is added to the Logs tab.
You can:
diff --git a/_docs/integrations/ci-integrations/jenkins.md b/_docs/integrations/ci-integrations/jenkins.md
index e831af0b..ddfa1eba 100644
--- a/_docs/integrations/ci-integrations/jenkins.md
+++ b/_docs/integrations/ci-integrations/jenkins.md
@@ -6,11 +6,109 @@ sub_group: ci-integrations
toc: true
---
- Use Hosted GitOps with any popular Continuous Integration (CI) solution, not just with Codefresh CI. Jenkins is one of the third-party CI platform/tools that you can connect to Codefresh for deployment with image enrichment and reporting.
+ Use Hosted GitOps with any popular Continuous Integration (CI) solution, not just with Codefresh CI. Jenkins is one of the third-party CI platform/tools that you can connect to Codefresh for deployment with image enrichment and reporting.
+
+ Connecting a Jenkins pipeline, adds the CI information to images which are displayed in the Images dashboard, as in the example below.
+
+ {% include
+ image.html
+ lightbox="true"
+ file="/images/integrations/images-dashboard.png"
+ url="/images/integrations/images-dashboard.png"
+ alt="Images dashboard with enriched image information"
+ caption="Images dashboard with enriched image information"
+ max-width="70%"
+ %}
+
For information on how to use the image reporting action in your Jenkins pipeline and how to configure the integration, see [CI Integrations]({{site.baseurl}}/docs/integrations/ci-integrations/).
+### Example of Jenkins pipeline with report image step
+
+{% highlight yaml %}
+{% raw %}
+
+pipeline {
+
+ agent any
+ stages {
+ stage('Clone repository') {
+ steps {
+ checkout scm
+ }
+ }
+ stage ('Build & Push ') {
+ environment {
+ CF_IMAGE= credentials('CF_IMAGE')
+ }
+ steps {
+ sh 'echo "Building $CF_IMAGE"'
+ script {
+ def app
+ app = docker.build("${env.CF_IMAGE}")
+ // require credentials to be stored under DOCKERHUB
+ docker.withRegistry('https://registry.hub.docker.com', 'DOCKERHUB') {
+ app.push("latest")
+ }
+ }
+ sh '''
+ # test we have image in repository.
+ docker pull $CF_IMAGE
+ '''
+ }
+ }
+
+ stage('report image') {
+ environment {
+ // Name of runtime to implement the enrichment
+ CF_RUNTIME_NAME= 'codefresh-hosted'
+ // Image path to enrich
+ CF_IMAGE= credentials('CF_IMAGE')
+
+ // Codefresh API key !! Committing a plain text token is a security risk. We highly recommend using encrypted secrets. !!
+ // Documentation - https://www.jenkins.io/doc/book/using/using-credentials
+ CF_API_KEY= credentials('CF_API_KEY')
+
+ // Name of Container registry integration
+ CF_CONTAINER_REGISTRY_INTEGRATION= 'docker'
+
+ // Name of Jira integration
+ CF_ISSUE_TRACKING_INTEGRATION= 'jira'
+
+ // String starting with the issue ID to associate with image
+ CF_JIRA_MESSAGE= 'CR-11027'
+
+ // Jira project filter
+ CF_JIRA_PROJECT_PREFIX= 'CR'
+
+ // GitHub Access token !! Committing a plain text token is a security risk. We highly recommend using encrypted secrets. !!
+ // Documentation - https://www.jenkins.io/doc/book/using/using-credentials
+ CF_GITHUB_TOKEN= credentials('CF_GITHUB_TOKEN')
+ }
+ steps {
+ sh '''
+ export CF_CI_TYPE="jenkins"
+ # add workflow details
+ export CF_WORKFLOW_NAME="${CF_WORKFLOW_NAME:-$JOB_NAME}"
+ export CF_WORKFLOW_URL="${CF_WORKFLOW_URL:-$BUILD_URL}"
+ # add git branch
+ export CF_GIT_PROVIDER="${CF_GIT_PROVIDER:-github}"
+ WITHOUT_POSTFIX="${GIT_URL%.*}"
+ export CF_GIT_REPO="${CF_GIT_REPO:-${WITHOUT_POSTFIX#*//*/}}"
+ # slice branch name from repo/branch
+ export CF_GIT_BRANCH="${CF_GIT_BRANCH:-${GIT_BRANCH#*/}}"
+ env | cut -f 1 -d "=" | grep -E "^CF_" > cf_env
+ docker run --env-file=cf_env "quay.io/codefresh/codefresh-report-image:latest"
+ '''
+ }
+ }
+
+ }
+}
+
+{% endraw %}
+{% endhighlight yaml %}
### Jenkins-Codefresh integration arguments
The table describes the arguments to connect Codefresh Classic to Codefresh.
@@ -19,23 +117,23 @@ The table describes the arguments to connect Codefresh Classic to Codefresh.
| Argument | Description | Required/Optional/Default |
| ---------- | -------- | ------------------------- |
| `CF_RUNTIME_NAME` | The runtime to use for the integration. If you have more than one runtime, select the runtime from the list. | Required |
+| `CF_PLATFORM_URL` | The root URL of the Codefresh application. The default value is `https://g.codefresh.io`. | Optional |
| `CF_API_KEY` | The API key to authenticate the Codefresh Classic user to Codefresh. Generate the key for the integration. | Required |
| `CF_CONTAINER_REGISTRY_INTEGRATION` | The name of the container registry integration created in Codefresh where the image is stored. To create a container registry integration if you don't have one, click **Create Container Registry Integration**, and then configure the settings. See [Container registry integrations]({{site.baseurl}}/docs/integrations/container-registries/). | Optional |
-| `CF_JIRA_INTEGRATION` | The name of the issue tracking integration created in Codefresh to use to enrich the image. Relevant only if Jira enrichment is required for the image. If you don't have a Jira integration, click **Create Atlassian Jira Integration** and configure settings (see [Jira integration]({{site.baseurl}}/docs/integrations/issue-tracking/jira/)). | Optional |
+| `CF_JIRA_INTEGRATION` | Deprecated from version 0.0.565. Replaced by `CF_ISSUE_TRACKING_INTEGRATION`. | _Deprecated_
+| `CF_ISSUE_TRACKING_INTEGRATION` | The name of the issue tracking integration created in Codefresh to use to enrich the image. Relevant only if Jira enrichment is required for the image. If you don't have a Jira integration, click **Create Atlassian Jira Integration** and configure settings. See [Jira integration]({{site.baseurl}}/docs/integrations/issue-tracking/jira/). | Optional |
| `CF_IMAGE` | The image to be enriched and reported in Codefresh. Pass the `[account-name]/[image-name]:[tag]` built in your CI. | Required |
| `CF_GIT_BRANCH` | The Git branch with the commit and PR (pull request) data to add to the image. Pass the Branch from the event payload used to trigger your action. | Required |
| `CF_GIT_REPO` | The Git repository with the configuration and code used to build the image. | Required |
-| `CF_GIT_PROVIDER` | The Git provider for the integration, and can be either GiitHub, GitLab, or Bitbucket. | Required |
-| `CF_GITHUB_TOKEN` | The GitHub authentication token. The token must have `repo` scope. See [Git tokens]({{site.baseurl}}/docs/reference/git-tokens/). | Required |
-| `CF_GITHUB_API_URL` | The URL to the GitHub developer site. | Required |
-| `CF_GITLAB_TOKEN` | The GitLab token for authentication. | Required |
-| `CF_GITLAB_HOST_URL` | The URL to the GitLab instance. | Optional |
-| `CF_BITBUCKET_USERNAME` | The username for the Bitbucket or the BitBucket Server (on-prem) account. | Required |
-| `CF_BITBUCKET_PASSWORD` | The password for the Bitbucket or the BitBucket Server (on-prem) account. | Required |
-| `CF_BITBUCKET_HOST_URL` | Relevant for Bitbucket Server accounts only. The URL address of your Bitbucket Server instance. Example, `https://bitbucket-server:7990`. | Required |
-|`CF_JIRA_PROJECT_PREFIX` | Relevant only when `CF_JIRA_INTEGRATION` is defined. The Jira project prefix that identifies the ticket number to use.| Required|
-| `CF_JIRA_MESSAGE` | Relevant only when `CF_JIRA_INTEGRATION` is defined. The Jira issue IDs matching the string to associate with the image. | Required |
-| `CF_JIRA_FAIL_ON_NOT_FOUND` | Relevant only when `CF_JIRA_INTEGRATION` is defined. The report image action when the `CF_JIRA_MESSAGE` is not found. When set to `true`, the report image action is failed. | Required |
+| `CF_GIT_PROVIDER` | The Git provider for the integration, and can be either `github`, `gitlab`, or `bitbucket`. {::nomarkdown} - Optional when you don't define other related Git provider arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the Git provider arguments. For example, when you define CF_GITLAB_TOKEN, then you _must_ define all Git provider arguments, in this case, CF_GIT_PROVIDER as gitlab, and CF_GITLAB_HOST_URL.
{:/}| Optional |
+| `CF_GITLAB_TOKEN` | The token to authenticate the GitLab account. {::nomarkdown} - Optional when you don't define any GitLab-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the GitLab-specific arguments, such as CF_GIT_PROVIDER as gitlab, or CF_GITLAB_HOST_URL.
{:/} | Optional |
+| `CF_GITLAB_HOST_URL` | The URL address of your GitLab Cloud/Server instance. {::nomarkdown} - Optional when you don't define other related GitLab-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required if you define at least one of the GitLab-specific arguments, such as CF_GIT_PROVIDER as gitlab, or CF_GITLAB_TOKEN.
{:/} | Optional |
+| `CF_BITBUCKET_USERNAME` | The username for the Bitbucket or the Bitbucket Server (on-prem) account. {::nomarkdown}- Optional when you don't define other related Bitbucket-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the Bitbucket-specific arguments, such as CF_GIT_PROVIDER as bitbucket, CF_BITBUCKET_PASSWORD or CF_BITBUCKET_HOST_URL.
{:/}| Optional |
+| `CF_BITBUCKET_PASSWORD` | The password for the Bitbucket or the Bitbucket Server (on-prem) account. {::nomarkdown} - Optional when you don't define other related Bitbucket-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the Bitbucket-specific arguments, such as CF_GIT_PROVIDER as bitbucket, CF_BITBUCKET_USERNAME, or CF_BITBUCKET_HOST_URL.
{:/}| Optional |
+| `CF_BITBUCKET_HOST_URL` | Relevant for Bitbucket Server accounts only. The URL address of your Bitbucket Server instance. Example, `https://bitbucket-server:7990`. {::nomarkdown}- Optional when you don't define other related Bitbucket Server-specific arguments. When not defined, Codefresh retrieves the required information from the runtime selected for the integration.
- Required when you define at least one of the Bitbucket Server-specific arguments, such as CF_GIT_PROVIDER as bitbucket, CF_BITBUCKET_USERNAME or CF_BITBUCKET_PASSWORD.
{:/} | Optional |
+|`CF_JIRA_PROJECT_PREFIX` | Relevant only when `CF_ISSUE_TRACKING_INTEGRATION` is defined. The Jira project prefix that identifies the ticket number to use.| Required|
+| `CF_JIRA_MESSAGE` | Relevant only when `CF_ISSUE_TRACKING_INTEGRATION` is defined. The Jira issue IDs matching the string to associate with the image. | Required |
+| `CF_JIRA_FAIL_ON_NOT_FOUND` | Relevant only when `CF_ISSUE_TRACKING_INTEGRATION` is defined. The report image action when the `CF_JIRA_MESSAGE` is not found. When set to `true`, the report image action is failed. | Required |
For how-to instructions, see [Connect a third-party CI platform/tool to Codefresh]({{site.baseurl}}/docs/integrations/ci-integrations/#connect-a-third-party-ci-platform-tool-to-codefresh).
@@ -123,94 +221,6 @@ The Jira message represents an existing Jira issue, and must be a literal string
Value:
`CR-1246`
-
-### Example of Jenkins pipeline with report image step
-
-{% highlight yaml %}
-{% raw %}
-
-pipeline {
-
- agent any
- stages {
- stage('Clone repository') {
- steps {
- checkout scm
- }
- }
- stage ('Build & Push ') {
- environment {
- CF_IMAGE= credentials('CF_IMAGE')
- }
- steps {
- sh 'echo "Building $CF_IMAGE"'
- script {
- def app
- app = docker.build("${env.CF_IMAGE}")
- // require credentials to be stored under DOCKERHUB
- docker.withRegistry('https://registry.hub.docker.com', 'DOCKERHUB') {
- app.push("latest")
- }
- }
- sh '''
- # test we have image in repository.
- docker pull $CF_IMAGE
- '''
- }
- }
-
- stage('report image') {
- environment {
- // Name of runtime to implement the enrichment
- CF_RUNTIME_NAME= 'codefresh-hosted'
-
- // Image path to enrich
- CF_IMAGE= credentials('CF_IMAGE')
-
- // Codefresh API key !! Committing a plain text token is a security risk. We highly recommend using encrypted secrets. !!
- // Documentation - https://www.jenkins.io/doc/book/using/using-credentials
- CF_API_KEY= credentials('CF_API_KEY')
-
- // Name of Container registry integration
- CF_CONTAINER_REGISTRY_INTEGRATION= 'docker'
-
- // Name of Jira integration
- CF_JIRA_INTEGRATION= 'jira'
-
- // String starting with the issue ID to associate with image
- CF_JIRA_MESSAGE= 'CR-11027'
-
- // Jira project filter
- CF_JIRA_PROJECT_PREFIX= 'CR'
-
- // GitHub Access token !! Committing a plain text token is a security risk. We highly recommend using encrypted secrets. !!
- // Documentation - https://www.jenkins.io/doc/book/using/using-credentials
- CF_GITHUB_TOKEN= credentials('CF_GITHUB_TOKEN')
- }
- steps {
- sh '''
- export CF_CI_TYPE="jenkins"
- # add workflow details
- export CF_WORKFLOW_NAME="${CF_WORKFLOW_NAME:-$JOB_NAME}"
- export CF_WORKFLOW_URL="${CF_WORKFLOW_URL:-$BUILD_URL}"
- # add git branch
- export CF_GIT_PROVIDER="${CF_GIT_PROVIDER:-github}"
- WITHOUT_POSTFIX="${GIT_URL%.*}"
- export CF_GIT_REPO="${CF_GIT_REPO:-${WITHOUT_POSTFIX#*//*/}}"
- # slice branch name from repo/branch
- export CF_GIT_BRANCH="${CF_GIT_BRANCH:-${GIT_BRANCH#*/}}"
- env | cut -f 1 -d "=" | grep -E "^CF_" > cf_env
- docker run --env-file=cf_env "quay.io/codefresh/codefresh-report-image:latest"
- '''
- }
- }
-
- }
-}
-
-{% endraw %}
-{% endhighlight yaml %}
-
### Jenkins integration logs
View and analyze logs for Jenkins through the Logs tab. When a Jenkins pipeline is run, it is added to the Logs tab.
You can:
diff --git a/_docs/integrations/issue-tracking.md b/_docs/integrations/issue-tracking.md
index 4394dc0f..60ea2d5a 100644
--- a/_docs/integrations/issue-tracking.md
+++ b/_docs/integrations/issue-tracking.md
@@ -22,6 +22,7 @@ Configure the settings for a container registry integration in Codefresh.
1. In the Codefresh UI, go to [Integrations](https://g.codefresh.io/2.0/account-settings/integrations){:target="\_blank"}.
1. Filter by **Issue Tracking**, select the issue tracking tool to integrate, and click **Configure**.
+1. Jira integrations only: For a new Jira integration, from the **Add Integration** dropdown, select the type of integration, as either **Deployment reporting** or **Image enrichment**.
1. If you already have integrations, click **Add**.
1. Define the arguments for the issue tracking tool:
[Jira]({{site.baseurl}}/docs/integrations/issue-tracking/jira/)
diff --git a/images/integrations/generated-manifest-with-error.png b/images/integrations/generated-manifest-with-error.png
new file mode 100644
index 00000000..f745c7f7
Binary files /dev/null and b/images/integrations/generated-manifest-with-error.png differ
diff --git a/images/integrations/images-dashboard-image-drilldown.png b/images/integrations/images-dashboard-image-drilldown.png
new file mode 100644
index 00000000..4fd5d3b4
Binary files /dev/null and b/images/integrations/images-dashboard-image-drilldown.png differ
diff --git a/images/integrations/images-dashboard.png b/images/integrations/images-dashboard.png
new file mode 100644
index 00000000..c3556efd
Binary files /dev/null and b/images/integrations/images-dashboard.png differ