Get acquainted with the latest KubeRocketCI releases.
- Version 3.10.4
- Version 3.10.3
- Version 3.10.2
- Version 3.10.1
- Version 3.10.0
- Version 3.9.0
- Version 3.8.0
Earlier Versions
- Version 3.7.5
- Version 3.7.4
- Version 3.7.3
- Version 3.7.2
- Version 3.7.1
- Version 3.7.0
- Version 3.6.0
- Version 3.5.3
- Version 3.5.2
- Version 3.5.1
- Version 3.5.0
- Version 3.4.1
- Version 3.4.0
- Version 3.3.0
- Version 3.2.2
- Version 3.2.1
- Version 3.2.0
- Version 3.1.0
- Version 3.0.0
- Version 2.12.2
- Version 2.12.1
- Version 2.12.0
- Version 2.11.0
- Version 2.10.2
- Version 2.10.1
- Version 2.10.0
- Version 2.9.0
- Version 2.8.4
- Version 2.8.3
- Version 2.8.2
- Version 2.8.1
- Version 2.8.0
- Version 2.7.8
- Version 2.7.7
- Version 2.7.6
- Version 2.7.5
- Version 2.7.4
- Version 2.7.2
- Version 2.7.1
- Version 2.7.0
- Version 2.6.4
- Version 2.6.3
- Version 2.6.2
- Version 2.6.1
- Version 2.6.0
- Tekton Dashboard is updated to the v0.52.0 LTS version. (#391)
- Tekton pipelines can now be executed on a concrete Kubernetes Node. This functionality is implemented using the NodeSelector attribute. This feature improves platform flexibility and allows to isolate CI/CD workloads on designated nodes. (#367)
- The CI Voting feature has been extended to build pipelines. Previously available only for review pipelines, this feature now provides build pipeline status notifications after changes are merged. It enhances visibility and maintainability across the development workflow. (#385)
- Users can now define parameters for build pipelines using the Run with params button in the codebase details page. (#524)
- User with developer access now have the ability to manage deployment flows targeting remote clusters. This functionality is implemented using an
available_clusters
parameter in the 'edp-config' ConfigMap. (#365) - The alert message for lost cluster connection has been redesigned. (#540)
- In KubeRocketCI portal, Grafana and Kibana links were renamed to "Monitoring" and "Logging" for a more generalized meaning. (#534)
- Codebase and the codebase branch name length are now restricted to 30 symbols. (#528)
- Git source URL has been updated for build pipelines. Now Git source URL is displayed in the
ssh://${gitUser}@${gitHost}:${sshPort}${codebaseGitUrlPath}
format. (#532) - Nexus repository naming was changed. Now repositories have
krci
prefix instead ofedp
. (#384)
- Disabled redundant secret creation for CodeMie integration when it is not needed. (#369)
- Fixed rendering of the
edp-config
Config Map if theapiGatewayUrl
parameter is left blank in the values.yaml file when deploying the platform. (#344) - Fixed an issue when Bitbucket pipeline (build and review) failed when branch name contained slashes (e.g. release/2.1). (#395)
The Getting Started section is updated with the following:
- The Supported Versions and Compatibility page has been updated. (#71)
- The Deploy Application page has been updated. (#95)
The User Guide section is updated with the following:
- The Platform Cleanup Guide page has been added. (#104)
- The KubeRocketCI: Tekton Overview page has been added. (#108)
- The Manage Branches page has been updated. (#85)
The Operator Guide section is updated with the following:
- The OIDC Authentication with Microsoft Entra: Overview page has been added.(#96)
- The Guide: Microsoft Entra SSO integration with Argo CD page has been added.(#96)
- The Guide: Microsoft Entra SSO integration with Ansible AWX page has been added.(#96)
- The Guide: Microsoft Entra SSO integration with AWS EKS & KubeRocketCI Portal page has been added.(#96)
- The Guide: Microsoft Entra SSO integration with Dependency-Track page has been added.(#96)
- The Guide: Microsoft Entra SSO integration with DefectDojo page has been added.(#96)
- The Guide: Microsoft Entra SSO integration with Grafana page has been added.(#96)
- The Guide: Microsoft Entra SSO integration with Harbor page has been added.(#96)
- The Guide: Microsoft Entra SSO integration with Nexus page has been added.(#96)
- The Guide: Microsoft Entra SSO integration with OAuth2-proxy (Tekton Dashboard) page has been added.(#96)
- The Guide: Microsoft Entra SSO integration with OpenSearch page has been added.(#96)
- The Guide: Microsoft Entra SSO integration with SonarQube page has been added.(#96)
- The Install Tekton page has been updated.(#122)
- The Sonatype Nexus Repository OSS Integration page has been updated. (#118)
- The Package Registry page has been updated. (#118)
- The IAM Roles for Kaniko Service Accounts page has been updated. (#112)
- The Install KubeRocketCI page has been updated. (#113)
- The Deploy RPM Packages page has been added. (#84)
- The Deployment Strategies Overview page has been added. (#93)
- KubeRocketCI has been verified on the 0.7.2 version of Capsule. (#88)
- KubeRocketCI has been verified on the 1.30 cluster version. (#66)
- A new compact deployment flow view mode has been added to the platform. To enable compact view mode, navigate to deployment flows details page and click View less details on the top right corner of the page. (#511)
- The ability to show pipeline run logs from long-term storages, such as OpenSearch has been added. It can be used when platform couldn't to retrieve these logs from Tekton. (#505)
- The ability to rerun deploy pipelines with variables has been added. (#461)
- The ability to specify a set pipelines and tasks has been added using the deployableResources section of the values.yaml file. (#346)
- KubeRocketCI portal now shows user avatar in the profile icon. (#509)
- To prevent unintended deletions and potential impacts on environments, deploy pipelines now validate the environment namespace uniqueness. (#91)
- A resource quota widget was added to the platform. It displays platform usage and limits. This widget is accessible if the Capsule resource quotas are configured. (#503)
- The Resource not found errors are now displaying comprehensive notifications instead of infinite loading. (#493)
- Notification pop up logic has been refactored. (#475)
- The login process has been streamlined when using Keycloak as an OIDC provider. A separate browser tab is opened for OIDC login process instead of a separate window. (#469)
- To prevent security risks, autocomplete feature was disabled sensitive data fields in the Configuration section. (#465) (#466)
- Clean pipeline resource naming has been modified. Now it uses
CDSTAGE ($(tt.params.CDSTAGE))
andCDPIPELINE ($(tt.params.CDPIPELINE))
resources. (#463)
- Fixed an issue when changing application Git Server didn't change it's configuration in environment where this application is included. (#86)
- Fixed an issue when tree diagram task links didn't lead to task run if user was on the pipeline run page. (#475)
- Fixed an issue when a user could log into the platform using invalid token. (#516) (#517)
- Fixed unexpected crash when editing codebase branch. (#487)
- Fixed an issue when pipeline task logs showed identical data when switching between tasks. (#485)
- Fixed an issue when pages failed to load properly if the
tekton-custom-task
resource wasn't created in the platform. (#481) (#482) - Fixed redundant websocket recreation when retrieving logs. (#478)
- Fixed an issue that blocked environment creation due to invalid namespace field. Even if the namespace had a valid pattern. (#471)
- Fixed an issue when users couldn't configure Microsoft Entra ID as an OIDC provider when installing KubeRocketCI from scratch. (#325)
General:
- The obsolete documentation site is now redirected to a new one. (#352)
The Getting Started section is updated with the following:
- The Supported Versions and Compatibility page has been updated. (#71)
- The Deploy Application page has been updated. (#95)
The User Guide section is updated with the following:
- The Add Git Server page has been updated. (#82)
The Operator Guide section is updated with the following:
- The KrakenD Integration page has been updated. (#102)
- The Install Keycloak page has been updated. (#97)
- The Nexus Image Registry page has been updated. (#103)
- The Deploy AWS EKS Cluster page has been updated. (#106)
- The Sonatype Nexus Repository OSS Integration page has been updated. (#107)
The Use Cases section is updated with the following:
- The Set Test Suite Parameters Using Environment Variables in CD Pipelines page has been updated. (#91)
- The Deploy Application With Custom Build Tool/Framework page has been updated. (#83)
- Microsoft Azure Entra ID support as an Identity Provider has been aligned. This feature will be useful for those who leverage Azure as a cloud provider. Configuring OIDC authentication with Microsoft Entra brings significant benefits, including improved security, simplified access management, and compliance with enterprise standards. (#325)
- A new parameter called
issuerUrl
has been added to the KubeRocketCI portal, enabling integration with the arbitrary identity provider. (#325)
- Fixed an issue where the default branch in the Сodebase did not align with the default branch in Bitbucket. (#155)
- Fixed an issue with insufficient permissions that prevented users with
developer
role from interacting with theApprovalTask
custom resource. (#332)
- Fixed an issue related to the missed
ApprovalTask
custom resource definition support. (#318)
We are enhancing the platform towards new code storage and Version Control Systems support. We are pleased to introduce Bitbucket Cloud as a new Version Control System in KubeRocketCI.
Our platform now integrates with Large Language Models, such as ChatGPT, as an intelligent chat assistant. Depending on your assistant's settings, it can perform a variety of tasks. We can also set up this assistant for you. Please contact our team for more details.
A new release brings a new look. Check out our new documentation site, which features improved navigation and documentation versioning support.
We have updated terminology within the platform. Environments are now referred to as Deployment Flows, and Stages are now Environments. These changes align our terminology with globally recognized terms, reducing user confusion. For more details, please refer to our updated Glossary.
We have added the ability to specify custom build and review pipelines when editing or creating new codebase branches. This enhancement increases flexibility when working with codebases, allowing for easier modifications to pipeline logic based on specific requirements.
Another significant enhancement is the introduction of a new section called Pipelines. This section centralizes pipeline observability by consolidating all pipelines in one place. We are continuing to migrate Tekton functionality into our platform. Consequently, we have consolidated our pipelines into a single location. The new Pipelines section displays the entire Tekton Pipeline Run history, simplifying pipeline management and observability.
We are expanding the options for delivering applications. Users are now able to automate the deployment of their applications packaged as RPMs, utilizing Ansible for this process.
As part of our expanding language support, we’ve added C and C++ to our CI/CD platform. This includes integration with the make and CMake build tools, enhancing the platform's capabilities for building and managing C/C++ projects.
We have also introduced the ability to customize Environment deletion. This feature is particularly useful for users with applications that have specific configurations or dependencies, e.g. database cleanup, infrastructure tearing down, etc. Customized clean flows make it easier to maintain components throughout their lifecycle.
This release adds new functionality to deployment pipelines. A new tab, "Variables", has been added to the Environment details page (previously known as the Stage details page). In this tab, users can specify key-value pairs that will be injected into the deployment pipeline as environment variables. This enhancement allows users to configure application deployment settings directly within the KubeRocketCI portal, providing greater flexibility and control over the deployment process.
We are pleased to introduce a new Manual Approval feature on the platform. This feature allows developers to incorporate an approval task within their custom deployment pipelines, requiring a manual review and approval before advancing to the next stage. While deployment pipelines are a primary use case for this capability, the approval task can also be leveraged in other workflows. This enhancement provides greater control and oversight, ensuring all processes meet required standards and criteria before progressing.
We have added a new deployment strategy called "Auto-stable" has been added to the platform. This strategy allows for creating an ordered queue of deploy Pipeline Runs, which will be launched sequentially once the previous one finishes. Unlike the "Auto" trigger type, where intermediate versions are skipped and only the latest versions are deployed, "Auto-stable" ensures that each version is deployed, making it easier to identify the exact application version that caused errors during deployment.
- Tekton dashboard is updated to the v0.50.0 version. (#286)
- The platform has been verified on the 1.29 cluster version. (#66)
- Bitbucket Cloud support as a Git Server has been added to the platform. (#306)
- The KubeRocketCI platform now provides Tekton monitoring via Grafana out of the box. To enable this functionality, set the
grafana.enabled
parameter totrue
in thevalues.yaml
file when deploying or updating the platform. (#268) - Users can now set custom build and clean pipelines when creating Environments (formerly Stages). (#66)
- KubeRocketCI Marketplace has been embedded with the 'Echo-Server' application template. This application will be useful when testing and troubleshooting the networking capabilities of your primary application. (#265)
- KubeRocketCI Marketplace has been embedded with the 'Terminal' application template. This application is designed as a secondary application for your Environment to serve as a full-fledged bash terminal. (#262)
- The Gen AI chatbot integration has been added to the platform. (#270)
- A Tekton Configuration section has been added to the portal. In this section, users can see the list of all Tekton Pipelines and Tasks. By clicking on these resources, users can see the YAML configuration, associated Kubernetes labels, and pipeline diagram. (#339)
- Deploy pipelines now feature the ability for manual approval. When you create a custom deploy pipeline, you can create a checkpoint to prompt the user to approve or reject proceeding with the next step. (#359)
- To improve the flexibility and user experience of our onboarding process for new and existing codebases, we introduce new features that enable users to easily redefine and update pipeline configurations. (#348)
- A Pipelines section has been added to the platform. It serves as a centralized hub for all Pipeline Runs. (#339)
- C and C++ language support with Make and CMake build tools has been added to the platform. (#335)
- A new pipeline type called "clean" has been added to the platform. It allows for customizable application deletion logic. (#319)
- In this release, KubeRocketCI can now deploy RPM packages in addition to common Helm charts. (#272)
- Ansible tool support has been added to the platform. In the context of the platform, this tool will serve as a means of deploying RPM packages. (#311)
- When creating codebases, users can now select a Deployment Option. It can be either a Helm chart or an RPM package. (#363)
- A new tab called "Variables" has been added to the Environment (formerly Stage) page. In this tab, users can set key-value variables to be injected into the application as environment variables. (#404)
- A new deployment trigger type called "Auto-stable" has been added to the platform. (#75)
- KubeRocketCI now supports CodeMie as a chat assistant solution. Users can provide CodeMie chat assistants with codebase data when creating a codebase by enabling the "Integrate with CodeMie" checkbox. Contact the platform team for more details. (#315)
- Validation logic has been integrated with the Deployment Flow Create dialog. The validation ensures that the input cannot exceed 15 characters in length. (#386)
- The Deployment Flow (formerly Environment) creation flow has been refactored for a better user experience. (#365)
- Since Tekton pipelines were seamlessly integrated into the KubeRocketCI portal, the Tekton dashboard deployment is now disabled by default. (#276)
- The SSO configuration section has been moved into several components. Now Single Sign-On is configured via Add-Ons. (#351)
- When users successfully create codebases and Deployment Flows, a success notification window appears with a resource link. (#344)
- Environment (formerly Stage) deletion now requires user confirmation. (#321)
- The account settings menu now displays user information: username, membership, and issuer URL. (#395)
- Tekton Task and Pipeline structures have been modified. This change aims to maintain consistency and enhance readability across our Tekton Tasks and Pipelines when working with custom Tekton Pipelines. (#290)
- Build pipeline performance has been improved in the
get-cache
andsave-cache
tasks. (#294) - Review pipelines can now be triggered by the "/ok-to-test" message. It has the same effect as entering the "/recheck" message. (#238)
- Users are now checked for codebase ownership when building applications. This check restricts users to building applications only if they are the owner of the codebase. This feature works only for codebases created in GitHub. (#234)
- When Jira integration is enabled, Jira tickets are now provided with a Git commit URL instead of a Pipeline Run URL. (#252)
- Permission checks have been improved when navigating the Configuration section. (#384)
- In the Environment (formerly Stage) page, the Pipelines tab now has a green circle that notifies users when a new deploy pipeline has started. (#369)
- An autocompletion feature has been added to the Deployment Flow (formerly Environment) creation flow. Now instead of selecting an application name and branch from a list, users can type them and get autocompletion suggestions. (#284)
- Notification message appearance has been updated. (#268) (#269)
- Fixed an issue where buttons were active when users didn't have permissions to update resources. (#297)
- Fixed an issue where integration status showed
Connected: true
when invalid credentials were provided. (#105) - Fixed an issue where SonarQube widget metrics could show incorrect information. (#397)
- Fixed an issue where the Git Server connection status was green even when the integration had actually failed. (#97)
- Fixed an issue where the CodebaseImageStream Custom Resource wasn't deleted when deleting codebases. (#60)
- Fixed redundant code duplication in the
dockerbuild-verify
Tekton Task. (#242) - Fixed an issue where the
commit-validate
Tekton Task checked unnecessary data. (#229) - Fixed an issue where Jira integration showed a failed status when the integration was properly set up. (#103)
- Fixed an issue where build pipelines failed on the
push-python
step with theKeyError: 'license'
message. (#215) - From now on, KubeRocketCI doesn't create an Ingress resource when the Webhook URL is specified in the Git Server. (#95)
General:
- EDP has been renamed to KubeRocetCI throughout KubeRocketCi repositores. (#278)
- The README.md file of the edp-install repostory has been updated. (#273)
- Obsolete documentation site now contains an info message with a link to new documentation site. (#278)
- KubeRocketCI logo has been updated for Capsule adopters. (#298)
The User Guide section is updated with the following:
- The Add Gen AI Assistant page has been added. (#317)
The Operator Guide section is updated with the following:
- Troubleshooting section has been updated. (#214)
We are introducing the built-in pipeline tracker. This new feature allows you to monitor Tekton pipeline runs directly within KubeRocketCI, removing the need to open extra tabs in your browser. With pipeline statuses and details readily accessible, your workflow becomes more streamlined and efficient.
As usual, we are continuously working on refining the user interface. For better user experience, we've made a major contribution to optimizing KubeRocketCI. Changes affect almost all the aspects of using the UI, whether it's codebase creation, deployment, third-party tool integration, platform settings, etc. Besides, now it features real-time pipelines within KubeRocketCI so there is no need to navigate to Tekton to observe pipeline runs, their statuses are always at hand now.
Apart from that, we implemented GitHub Container Registry (GHCR) support. This allows you to seamlessly store your container images using GitHub's solution, offering more options for managing your container images.
Lastly, we announce the Kiosk tool deprecation. For those who are looking for a tenancy management solution instead of an obsolete Kiosk, we encourage you to consider Capsule as a more flexible solution.
- The developer role in KubeRocketCI now grants the ability to view the Kubernetes resources within the KubeRocketCI, such as codebases, environments, widgets, etc. (#191)
- The Keycloak realm name value is now configurable. Now users can redefine the realm name, patterns no longer include '-main', and the namespace is used as the default realm name. (#183)
- The
sso.ingress.enabled
parameter has been added to manipulate ingress creation for OAuth2-Proxy. (#178) - GitHub Container Registry support has been implemented. Now users have one another option for storing container images. (#238)
- Added the ability for KeycloakRealmRole custom resource to configure client roles alongside roles as composite roles. (#44)
- The ability to configure Keycloak realm token settings has been added to the platform. (#38)
- Added custom SSL/TLS certificate support for the Keycloak HTTPS connection. (#36)
- The KeycloakClient custom resource now supports creating authorization policies and permissions for a client. (#28)
- The GerritMergeRequest custom resource is now capable of removing the files in the repository. (#30)
- The Kiosk tenancy management tool has been deprecated. As an alternative, consider using Capsule. (#55)
- The SSO tab of the Configuration section has been improved. To simplify integration, now it contains a table of related ingresses. (#173)
- The Configuration section structure has been updated for better navigation. (#192) (#194) (#188)
- The codebase creation flow has been redesigned for simplicity. (#177)
- The procedure of deploying KubeRocketCI without ingress has been streamlined. (#185)
- The KeycloakRealm custom resource has been updated to use separate CRs, KeycloakRealm and KeycloakRealmIdentityProvider, for a more flexible setup, and the deprecated SSO configuration has been removed. (#47)
- The edp-keycloak-operator has been enhanced to support the reconciliation of user attributes, including FirstName, LastName, and Email, with optional support for the Email-Verified field, ensuring consistency with the source of truth. (#45)
- The KeycloakClient custom resource has been provided with authorization settings to configure client scopes. (#41)
- The KeycloakRealmComponent custom resource can now reference secrets. Now users can create Keycloak realms that store their secret strings in a user-defined secret. (#30)
- The KubeRocketCI UI has been significantly revamped. It concerns all the tabs and sections, including notifications and UI settings. (#258)
- The Components section design has been refined. (#252) (#253)
- The Actions button now includes a permissions check for actions. (#249) (#250)
- Tekton pipelines are now displayed in real-time mode within the KubeRocketCI UI directly. To see these real-time pipeline details, simply click on any pipeline name. (#225)
- The ability to add custom webhooks via the
Webhook Url
field has been added to Git Servers. (#242) - Tekton resources no longer appear as unsynchronized in Argo CD when KubeRocketCI has been deployed using the add-ons approach. (#169)
- GitOps approach can now be enabled for multiple applications separately within one stage. (#180)
- The Marketplace page has been updated. (#178)
- The URL field validation logic has been updated in the third-party tool integration forms of the Configuration section. (#175)
- The Overview page has been redesigned. Now it additionally displays widget status at the left border of each widget. (#172)
- The ability to delete multiple codebases at a time has been added to the Components section. (#171)
- The Environment details page has been significantly redesigned. Now it contains much more information, such as creation time, application image, promotion option. Besides, they contain quick links to Argo CD, Grafana, Kibana, application logs, etc. (#258)
- Commit message validation is now applied to all of the pipeline runs from GitHub. Previously, commits were validated solely for pull requests. (#193)
- Quality Gates are implemented in the review process that check for alignment between the Helm chart name and the codebase name. (#191)
- In order to better manage and control distributed development, we facilitated the flexibility of using different package registries in our Gradle Tekton pipelines. Users can now leverage different package registries, such as Nexus, GitLab, GitHub, and Azure DevOps Registries. (#132)
- Pipeline steps and task sequences were optimised by removing the
get-nexus-repository-url
step and adjusting task sequences for application and library codebase types for enhanced efficiency and streamlined processes. (#132) (#177) - For better security, the permissions scope has been shrunk for the edp-cd-pipeline-operator. (#52)
- The SonarQube integration for new codebases now correctly uses 'master' as the default branch name, ensuring alignment between the codebase and SonarQube project configurations. (#207)
- Redundant web sockets for streaming pipeline runs were removed, leaving the only one with filtering by labels. (#170)
- The
helm-validate
step now uses Go cache for better performance. (#44) - To reflect the latest best practices and features, we updated the chart templates within the edp-codebase-operator. (#68)
- Validation message for creating a new branch with an invalid name in a codebase has been updated. (#240)
- Fixed issue when users couldn't see the error messages in some pages. (#183)
- Fixed issue when users could create codebases with corrupted Git Servers. (#179)
- Fixed issue with various pop-ups throughout the entire Configuration section. (#223)
- Fixed issue when users had to double click the Sign In button to log into the KubeRocketCI user interface. (#218)
- Fixed issue when users couldn't see all of the application images in the stage details page if the promote option was disabled. (#174)
- Fixed issue when the Go to source code button in the stage details page led to the wrong endpoint. (#198)
- Fixed wrong namespace validation in the stage creation window. (#155)
- Fixed issue when the build pipelines interfered with each other. (#71)
- Fixed issue when the Tekton resource pruner didn't prune unused resources completely. (#205)
- The deploy button has been fixed: it now correctly appears inactive in situations where its functionality is actually unavailable. (#155)
- Fixed issue when the deploy pipeline failed if the
ingress.enabled
parameter was set totrue
. (#80) - Added ability to KeycloakRealmRole CR configure client roles alongside roles as composite roles. FastAPI codebase build pipeline related to h11 and httpcore has been resolved by downgrading h11 to a version compatible with httpcore. (#195)
- The
init-autotest
stage failure in the deploy-with-autotests pipeline template has been resolved, allowing the application to deploy successfully and initialize autotests. (#199) - The CreateContainerConfigError error in the
helm-push
step has been fixed for both Helm application and library codebase types. (#184) - Rudimentary workspaces and volumes have been removed from the
get-version
,jira
,commit-validate
,getDefaultVersion
, and other related tasks. (#78) - Fixed issue when the edp-tekton component couldn't get deployed in the OpenShift cluster due to a misconfigured route resource. (#151)
- The build and review pipelines for a Next.js-based project now successfully complete the build step. (#201)
- Fixed issue when users couldn't create multiple event listeners when deploying KubeRocketCI into the OpenShift cluster. (#175)
- The Run KubeRocketCI on Kind Cluster guide is published in our YouTube channel.
- The Extending KubeRocketCI: Integrating Custom Build Tools, Frameworks, Languages, and Pipelines guide is published in our YouTube channel.
The Getting Started section is updated with the following:
- The Supported Versions and Compatibility page has been updated. (#187)
- The Install EDP page has been updated. (#184)
The Operator Guide is updated with the following:
- A new subsection called Troubleshooting has been added. It aims to help users with the frequently asked questions: (#177)
- The Container Registry Reset page has been added.
- The Application Is Not Deployed page has been added. (#177)
- The Codebase Creation Issue page has been added. (#177)
- The Resource Observability Issue page has been added. (#177)
- The Application Already Exists Error (Gerrit VCS) page has been added. (#177)
- The Codebase Build Process is Failed page has been added. (#177)
- The Invalid Codebase ID Issue (GitHub/GitLab VCS) page has been added. (#177)
- The Upgrade KubeRocketCI v3.7 to 3.8 page has been added. (#199)
- The SonarQube Project Visibility page has been added. (#180)
- The Package Registry page has been added. (#182)
- The Install Velero page has been updated. (#235)
- The Monitoring page has been updated. (#212)
- The Customize Deployment page has been updated. (#197)
- The KubeRocketCI Access Model page has been updated. (#175)
- The Argo CD Integration page has been updated. (#176)
- The Deploy AWS EKS Cluster page has been updated. (#174)
- The Install EDP page has been updated. (#181)
The Developer Guide is updated with the following:
- The KubeRocketCI Project Rules. Working Process page has been updated. (#206)
- The AWS Infrastructure Cost Estimation page has been added. (#202)
- The EDP Reference Architecture on AWS page has been updated. (#177)
The User Guide has been updated with the following.
- The Components Overview page has been added. (#204)
- The Manage GitOps page has been added. (#204)
- The Overview page has been updated. (#204)
- The Add Application page has been updated. (#204)
- The Manage Applications page has been updated. (#204)
- The Add Autotest page has been updated. (#204)
- The Manage Autotests page has been updated. (#204)
- The Add Library page has been updated. (#204)
- The Manage Libaries page has been updated. (#204)
- The Add Infrastructure page has been updated. (#204)
- The Manage Infrastructures page has been updated. (#204)
- The Manage Branches page has been updated. (#204)
- The Add Environment page has been updated. (#204)
- The Manage Environments page has been updated. (#204)
- The Add Quality Gate page has been updated. (#204)
- The Manage Git Servers page has been updated. (#204)
- The Manage Container Registries page has been updated. (#223)
- The Go language is updated to the 1.22 version. (#57)
- EDP Keycloak operator v1.21.0 has been published on OperatorHub. (#37)
- The alpine packages were updated to the 3.18.6 version. (#49)
- The Tekton dashboard is updated to the v0.46.0 version. (#180)
To start from, we're undergoing a significant platform transformation as we reveal our new identity: KubeRocketCI. This rebranding endeavor underscores our dedication to innovation and marks the start of a fresh chapter in our journey.
This release introduces crucial improvements to our Tekton deploy pipelines. With this update, users have more freedom to customize Tekton pipelines to fit their needs, making deployment smoother. Whether users are setting up environments beforehand or conducting tests afterward, our new approach makes it easier.
For better convenience, we're introducing multiple Git Servers support. This major feature will be especially appreciated by those who spread their code over multiple version control systems.
In this release, we've broadened our support for repository platforms, including Azure Artifacts, Artifactory, GitLab Repository, and GitHub Registry. Additionally, we've enhanced Nexus to serve as a unified repository capable of managing application artifacts and container images. This improvement simplifies asset management by aggregating all development assets into one centralized location.
We've improved our KubeRocketCI portal user interface. The latest update introduces an enhanced stages menu, boasting a clearer and more comprehensive design. Additionally, we've revamped the Quick Links menu in the Configuration tab and streamlined the sections panel for easier navigation, all aimed at enhancing user experience.
To showcase the platform's accessibility, we've published EDP on the Civo marketplace. It means that users interested in deploying a Civo cluster, can also onboard EDP in just a few clicks. Watch our video tutorial to see how elementary it is.
- The deploy pipeline logic has been reworked. With this change, users can personally set pre-deploy and post-deploy tasks for the deploy pipelines, which makes them highly flexible. (#142)
- The Argo CD integration section is added to the Configuration tab. With this section, users will be able to integrate Argo CD directly in the KubeRocketCI portal. (#135)
- The pipeline stage menu has been redesigned. Now it has three tabs: Applications, Pipelines, and Monitoring. (#152)
- The Quick Link creation flow is managed now via KubeRocketCI portal. (#157)
- Now users can define node selectors and tolerations for the oauth2-proxy Helm chart to deploy on specific nodes. (#164)
- The new naming convention for the ingress objects has been defined. (#159)
- The secret support has been enabled in the
KeycloakRealmComponent
resource. (#30) - The stage creation menu now allows to choose a pipeline template. Although there is an option to create custom pipeline templates, we also provide two predefined templates: one with autotests and one without. (#165)
- The ability to set Nexus as a container registry tool has been added to the KubeRocketCI portal. It's located in the Registry section of the Configuration tab. (#160)
- The
Skip Webhook SSL Verification
option has been added to the Git Server creation form. (#137) - Custom package registry integration support (Nexus, GitLab, GitHub, Azure DevOps) has been added to the following languages:
- Now users can manage the cleanup policies in Nexus using the
NexusCleanupPolicy
custom resource. (#25) - The EDP Nexus Operator now manages Nexus scripts. (#21)
- A new custom resource named NexusBlobStore has been introduced for configuring blob stores. (#20)
- The environment details page has been redesigned. Now it displays stages as separate rectangle blocks. (#142)
- To simplify the structure of the values.yaml file, the
sso
andoauth2_proxy
sections were merged in a single one. (#145) - To make Argo CD credentials validation easier, the
app.edp.epam.com/integration-secret-connected
annotation was added to theci-argocd
secret with its connection status. (#39) - The
Cluster Token
field has been added to the cluster secret creation process in the KubeRocketCI portal. (#161) - A random set of symbols is now appended to the GitOps repository name when the repository is created in the GitOps Configuration tab. (#163)
- As a result of a redesign of the deployment logic, the
Update
button has been removed from the pipeline stage menu as it is now considered redundant. To redeploy the application, utilize theDeploy
button instead. (#162) - The
JiraServer
custom resource will no longer be created during installation of the edp-install Helm chart if the Jira integration is disabled. (#150) - Tooltips and links throughout the entire KubeRocketCI portal have been updated. (#148)
- Secret integration forms for most of the Configuration tab have been updated. (#138)
- Now, KubeRocketCI users have the capability to define both node selectors and tolerations for the edp-tekton Helm chart. (#126)
- Maven builds now support setting custom package registry integration from the settings.xml file, such as Nexus, GitLab, GitHub, Azure DevOps. (#106)
- The SonarQube interaction has been refactor. Now the sonar-operator supports branching. This ehnacement allows for creating new branches in SonarQube projects instead of creating new projects for each new build. (107)
- The
sso
section of the values.yaml file has been updated. From now on, users are allowed to redefine the realm name using therealmName
parameter. (#149) - The
el-gitlab-listener
andel-github-listener
resources were renamed toevent-listener
. (#36)
- Fixed incorrect ingress annotation in the Tekton dashboard. (#143)
- Fixed issue when the codebase creation failed if the
Empty project
field was enabled. (#43) - Fixed issue when the tree diagram window displayed not the whole set of stages. (#146)
- Fixed issue with improper Component filter work when user gets an empty page if it is located not on the first page of the Components list. (#144)
- Fixed issue where a pipeline run would fail if the application was deployed in two separate pipelines with identical stage name. (#137)
- The EPAM Delivery Platform has been included to the Capsule adopters list. (#18)
- Both the Previous and Next navigation buttons have been added to mkdocs. (#119)
- The Effortless CI/CD Mastery: Installing EPAM Delivery Platform with Civo Marketplace article has been published to the Medium blog.
- The Quick Start - Part 1 video tutorial has been published on our YouTube channel. (#140)
- The Use Cases section has been refactored. (#119)
- The RoadMap section has been updated. ((#119))
- The Main Page of our documentation has been updated. ((#119))
- Documentation pages have been provided with widgets that display the page contibutors, the creation date, and the update dates. ((#119))
- The README.md file has been updated for the following repositories:
The Getting Started section is updated with the following:
- The Compliance page has been added. (#119)
- The Supported Versions and Compatibility page has been updated. (#119)
- The Install EDP has been added. (#119)
- The Integrate SonarQube page has been added. (#119)
- The Integrate GitHub page has been added. (#119)
- The Integrate DockerHub page has been added. (#119)
- The Create Application page has been added. (#119)
- The Integrate Argo CD page has been added. (#119)
- The Deploy Application page has been added. (#119)
The Operator Guide is updated with the following:
- The Install via Civo page has been added (#152)
- The Protect Endpoints page has been updated. (#145)
- The EDP installation flow has been re-organized for better naviagation. (#163)
- The Change Container Registry page has been added. (#136)
- The Multi-Tenancy Overview page has been added. (#124)
- The Integrate Capsule (#124)
- The Upgrade EDP v3.6 to 3.7 page has been added. (#127)
- The Argo CD Integration page has been added. (#125)
- The EKS OIDC With Keycloak page has been updated.
- The External Secrets Operator Integration page has been updated.
The Developer Guide is updated with the following:
- The Overview page has been updated.
- Create the Quality Control page has been added. (#161)
- The Microsoft Teams Notification page has been updated. (#156)
- The Annotations and labels page has been added. (#146)
The User Guide has been updated.
- KubeRocketCI is now based on Headlamp 0.22.0 version. (#139)
- The mkdocs engine has been updated to the 9.5.7 version. (#146)
- The alpine image is updated to the 3.18.6 version. (#35)
- The EDP Keycloak Operator is updated to the 1.20.0 version. (#27)
- The EDP Nexus Operator is updated to the 3.2.0 version. (#26)
- SSH private key format has been aligned for CI pipelines.
- Users can now modify the Version Control System integration secret in the EDP Portal, even if the Git Server has already been onboarded.
- In the SonarQube widget, quality gates have been provided with the Failed and Passed statuses of quality gate runs.
- The system codebase icon has been updated. (#127)
- No secrets found messages have been added to the Configuration page list. (#118)
- Fixed incorrect SonarQube widget loading status when there was no SonarQube component integrated. (#118)
- Integration status has been provided for registry integration. Additionally, integration status can now display the connection error status. (#29)
- Fixed issue that prevented environment stage deletion if external cluster configuration was incorrect. (#10)
In this release, we introduce DependencyTrack and SonarQube widgets on the application details page, enhancing observability. The SonarQube widget provides essential information on bugs, vulnerabilities, code smells, coverage, and duplications. Whereas DependencyTrack widget highlights potential security risks with severity levels. With these widgets, it is getting much easier to monitor application's quality.
We've invested considerable effort in major user interface enhancements to make your navigation seamless. In the Configuration section, tabs are now intelligently categorized for an intuitive experience, each equipped with status indicators for easy integration tracking. We have elevated the overall user experience to a more sophisticated standard, underscoring our commitment to providing a refined and intuitive interface. Additionally, we've included comprehensive descriptions for all sections, simplifying your navigation journey.
Originally developed to meet the specific requirements of internal EDP use, the Nexus operator has undergone a redesign to embrace general use cases. We are pleased to announce its availability on OperatorHub, allowing users to deploy this versatile operator independently for an enhanced experience. Now, users can effortlessly leverage this independent component to enhance experience with Nexus.
In our commitment to optimizing your workflow, we've implemented Tekton cache support for CI pipelines. Jointly with pipeline dependency reorganization, this feature results in significant time savings. Expect a remarkable improvement in the overall performance of Tekton pipelines, ensuring valuable time efficiency.
- EDP Portal is now based on Headlamp 0.21.0 version. (#99)
- mkdocs has been updated to the 9.4.8 version. (#113)
- Now EDP Portal displays the secret creation status for component integration. (#122)
- An integration status identifier has been added for DefectDojo, Dependency-Track, Registry, Nexus, and SonarQube tabs in the Configuration section. (#29)
- Passwords and tokens are now hidden in EDP Portal, and users can reveal the hidden values by clicking the crossed eye button. (#104)
- The Tekton resource pruner has been updated to prune only Pods and PVCs, preserving the history of Pipeline Runs in Tekton Dashboard. (#45)
- The versioning of the codebase has been adjusted to be independent of the codebase type. (#74)
- Tekton cache support has been implemented for CI pipelines, with the option to enable it directly in the values.yaml file. (#74)
- To streamline EDP deployment, the minimal set of mandatory parameters has been decreased. (#121)
- The KeycloakRealmIdentityProvider resource now supports Kubernetes secret reference, allowing users to specify a Kubernetes secret in the "config.clientSecret" parameter. (#21)
- EDP Portal labels have been updated for a better user experience, including tooltips for buttons, fields, and descriptions. (#113)
- The Configuration section of the EDP Portal has been updated, categorizing internal tabs. (#111)
- The Deployment type field has been removed from the Create CD Pipeline menu. (#109)
- An ingress controller is no longer required for application deployment. (#101)
- Git Server integration no longer requires creating secrets. All necessary data can be created via UI. (#100)
- EDP Portal now automatically encodes sensitive data (e.g., SSH keys, tokens) when users input it in the corresponding fields. (#97)
- To expedite CI pipelines, Tekton cache support has been implemented. (#74)
- To accelerate pipelines execution, the number of independent tasks has been decreased. (#68)
- Now EDP uses branches as version baselines for Dependency-Track reports. (#71)
- We are continuously working on to create the best CI/CD platform ever made. To help ourselves achieve this aim, we enabled basic anonymous telemetry throughout the platform. It doesn't collect sensitive data, it aims to collect patterns of user behavior within our platform only. (#112)
- Fixed issue when EDP deployment fails if the dockerRegistry.url parameter is not set. (#118)
- Fixed issue when the default Keycloak realm role didn't function properly. (#22)
- Fixed issue when the KeycloakRealm resource renaming caused resource deletion. (#18)
- Fixed issue when the catalog filter was shown improperly. (#113)
- Fixed issue when Dependency-Track didn't setup project name for GoLang codebases. (#70)
- The new tab called Pricing has been added to the mkdocs. In this page, users can see the support plans offered by the EDP team.
- The Platform Multitenancy! Learn How We Adopt Capsule to Give Our Developers More Freedom 🚀 article has been published on the Medium blog.
- The Elevating CI/CD Security with Supply Chains article has been published on the SolutionsHub blog.
- The README.md file of the edp-headlamp operator has been updated with the new description and introduction video.
- The README.md file of the edp-sonar-operator has been updated. (#3)
The Getting Started section is updated with the following:
- The Supported Versions and Compatibility page has been updated. (#116)
- The Glossary page has been updated.
The Operator Guide is updated with the following:
- The Upgrade EDP v3.5 to v3.6 page has been added. (#115)
- The Integrate GitHub/GitLab in Tekton page has been updated. (#116)
- The Verification of EDP Artifacts page has been updated. (#117)
The Developer Guide is updated with the following:
- The Overview page has been added.
- The Reference Architecture page has been added. (#120)
- The Kubernetes Deployment page has been added. (#120)
- The Reference CI/CD Pipeline page has been added. (#120)
- The EDP Reference Architecture on AWS page has been added. (#120)
- The EDP Deployment on AWS page has been added. (#120)
Exciting news! Our platform is now available on the AWS Marketplace, providing users with an additional free installation option via AWS Marketplace.
In this release, we've significantly extended the Overview page, introducing various valuable enhancements. Alongside dynamic widgets displaying key metrics, such as CD Pipelines, Stages, Branches, Codebases, and Tekton Pipeline runs, the page now also features a user-friendly list of recent pipeline runs. These pipeline runs are thoughtfully designed with clickable links, enabling swift navigation to their corresponding details in Tekton. This major update offers a detailed view of your deployment processes and provides easy access to essential information, making pipeline management easier.
EDP Portal now offers a simplified and efficient way for registries integrating and managing. This improvement simplifies the process of registry integration and management, allowing you to focus on what matters most.
Introducing digital signatures using cosign for all artifacts within the platform. This significant security enhancement strengthens the overall safety of the platform.
We've implemented the Tree Diagram window for pipelines in both the Component details menu and the Overview page. This feature provides users with a comprehensive real-time view of the pipeline directly from the EDP Portal. Users can navigate to each pipeline task by clicking its name and zoom in or out for better observability.
We've also optimized the task sequence to reduce execution time, significantly boosting the overall performance of pipelines by decreasing the time required for pipelines to run.
In addition, the SSO Integration tab has been introduced in the Configuration section. Users can integrate a platform with the Keycloak identity provider in this tab.
- Git Servers and Clusters are now editable directly in EDP Portal. (#82)
- The ability to watch application logs has been added to the stage menu. (#83)
- The application terminal feature has been added directly in the stage menu of EDP Portal.
- The ability to open application URL form the stage menu has been added to EDP Portal. (#77)
- The Container Registry page of the Configuration section has been updated. Now users can perform a hot switch between container registries eliminating the need to redeploy the platform. (#20)
- The Tree Diagram window for pipelines has been added both Component details menu and Overview page. (#66)
- The SSO Integration page has been added to the Configuration section. (#57)
- The pull request template has been updated. (#107)
- The text field of password type have been provided with the show/hide button to reveal the password. (#84)
- Users can now specify a custom namespace when creating or updating a stage for Environment. (#75)
- Now users can start Build pipelines only if the branch status is in green state. (#78)
- Filters on the Overview page now cache previous filtering settings. (#74)
- The unused "URL" field has been removed from the Jira integration secret form. (#67).
- The ability to set resource limits for the Tekton dashboard and Tekton event listener resources has been added to the values.yaml file. (#54)
- Removed extra "secretKey" field from the kaniko-docker-config secret. (#63)
- Fixed issue when the auto deploy feature doesn't work if GitOps approach is used. (#23)
- Fixed improper cobebase status filtering in the Components list. (#73)
- Fixed improper GitOps repo status handling. (#65)
The Getting Started section is updated with the following:
- The Supported Versions and Compatibility page has been updated.
- The Glossary page has been updated.
The Operator Guide is updated with the following:
- The External Secrets Operator Integration page has been updated. (#106)
- The Upgrade EDP from v3.4 to v3.5 page has been added. (#94)
- The Nexus Sonatype Integration page has been updated.
- The Adjust Jira Integration page has been updated. (#65)
- The Deploy AWS EKS Cluster page has been updated.
- The SonarQube Integration page has been updated. (#88)
- The Verification of EDP Artifacts page has been added.
- The Install DefectDojo page has been updated. (#65)
- The Install via AWS Marketplace page has been updated. (#75)
- The Capsule Integration page has been updated. (#93)
- The Install EDP page has been updated. (#95)
- The Install via Helmfile page has been updated. (#95)
- The Secure Delivery on the Platform page has been updated.
- The Nexus Sonatype Integration page has been updated. (#99)
- The Integrate GitHub/GitLab in Tekton page has been updated. (#96)
The User Guide is updated with the following:
- The Components Overview page has been added. (#100)
- The Manage GitOps page has been added.
- The Overview page has been updated.
- The Add Application page has been updated.
- The Manage Applications page has been updated.
- The Add Autotest page has been updated.
- The Manage Autotests page has been updated.
- The Add Library page has been updated.
- The Manage Libaries page has been updated.
- The Add Infrastructure page has been updated.
- The Manage Infrastructures page has been updated.
- The Manage Branches page has been updated.
- The Add Environment page has been updated.
- The Manage Environments page has been updated.
- The Add Quality Gate page has been updated.
- The Manage Git Servers page has been updated. (#102)
The Developer Guide is updated with the following:
- The EDP Project Rules. Working Process page has been updated.
Other:
- The Go language is upgraded to the 1.20 version.
- Added two new buttons, "Show Logs" and "Show Terminal" to the Environments stage within the EDP Portal UI. These buttons empower users to effortlessly access logs and directly log into the associated pod, improving visibility and control during the deployment process.
- Implemented the capability to sign images when pushing them to Harbor. This added layer of security ensures that your images are signed and verified, enhancing the trustworthiness of your deployments.
- Updated the Argo CD application creation process. The 'namespace' field in the 'destination' section of the Application resource is now sourced from the 'Stage.spec' resource.
- The Git Server status now provides a comprehensive error message when failing. If your cluster hosts multiple EDP environments, it is required to update the edp-codebase-operator. However, if you have only one EDP environment in the cluster, applying these changes is unnecessary.
- Fixed issue when Build pipeline failed on sonar step for Go operator SDK.
- Fixed issue when the update-build-number-gradle task updated all the version keys presented in the build.gradle file.
- Fixed issue when successful codebase creation notification couldn't appear.
- We've streamlined the installation process by disabling SSO integration and excluding the edp-keycloak-operator installation by default, reducing initial setup prerequisites.
- The Artifact Hub annotations related to container images have been removed from the Chart.yaml file to prevent redundant checks.
In this release, we've streamlined EDP installation. The EDP installer now focuses on setting up only core components like edp-headlamp, edp-tekton, codebase-operator, and cd-pipeline-operator. Additional resources, such as Nexus and SonarQube operators can be installed separately. Moreover, the edp-sonar-operator is now accessible as a standalone solution on OperatorHub.
To enhance the security of your software delivery process, we present a new feature: Security Supply Chain with Tekton Chains. It allows for securely capturing and verifying metadata, including source code, dependencies, containers, infrastructure, and applications. With the help of Tekton Chains, users can sign software artifacts with cryptographic keys (e.g., x509 or KMS) and store them in various backends like Tekton Results API or OCI registries. This feature also ensures compliance with SLSA L2 and L3 provenance standards.
We've significantly restructured our secret management process. Currently, this updated secret approach has been implemented for the components, such as Jira, DefectDojo, DependencyTrack, Nexus, and SonarQube. EDP Portal has been equipped with the ability to both create and manage these secrets.
We've introduced Capsule support to enhance our CI/CD platform, bringing tenant management benefits to our users. One of the key advantages of integrating Capsule is its multi-tenancy capabilities. With Capsule, we can now efficiently manage multiple tenants in our platform, isolating their environments, resources, and data. This means improved security, scalability, and resource allocation, ensuring a smoother experience for everyone using our platform.
The Configuration section has a new view, with redesigned Container Registry tab. Now, you can create integration secrets for Harbor or AWS ECR directly in the EDP Portal UI. Additionally, the Configuration section has two new tabs: GitOps and Links. In the GitOps tab, you have the flexibility to customize the default values.yaml file. Plus, you are able to create or edit EDP components from the Overview page using the Links section.
- The
Values override
checkbox has been added to the CD pipelines in the Environments section. When this option is enabled, default values are overwritten with custom one when deploying a stage. - The edp-keycloak-operator now supports setting multiple equally accessible URLs for one application. The edp-keycloak-operator version v1.17.1 has been published on OperatorHub.
- The
edpName
value has been removed from the values.yaml file. Now the default Helm values are used instead. - The cd-pipeline operator now can use the Capsule tool capabilities to provide multi-tenancy.
- The
kioskEnabled
parameter has been removed from the values.yaml file. To enable Kiosk, use the--set global.tenancyEngine=kiosk
parameter instead. - Nexus-operator has been aligned to work with the LTS Nexus 3.58.1 version.
- The method Uint32 for generating cryptographic values has been replaced with the crypto/rand method to improve overall security.
- The
sonar_url
andnexus_url
parameters have been deprecated in the values.yaml file and migrated to appropriate secrets. - Now EDP Portal notifies users if no namespace is set in the EDP Portal settings.
- Now the Create button in the Components section is hidden in case if no Git Server or GitOps repository is connected.
- The link that refers to a newly created application is now displayed if it was successfully created in Marketplace.
- The Git Server provisioning has been modified. Now users can provision only one Git Server.
- The required fields for most tabs in the Configuration section have been redesigned.
- A new tab called GitOps has been added to the Configuration section. It is designed to create a repository that follows the GitOps approach where the parameter are stored. These parameters can override the default values of the CD application. GitOps entities in the contain a link to the values.yaml files from CD Stage.
- The DependencyTrack tab has been added to the Configuration section. It allows to add the DependencyTrack stage into pipelines to have an additional security scanner.
- The Configuration section now contains a new tab called Links. It enables users to create or edit EDP components that are usually shown in the Overview page of the EDP Portal UI.
- The SonarQube scanner now uses Java11 to work with Java8 applications.
- The default host for the GitLab server is now set to
gitlab.com
. - To make the UI more interactive, clicking on the Deploy/Update/Uninstall buttons in the Environments section is now accompanied by corresponding notifications.
- The
keycloakUrl
parameter has been moved to the OIDC section. - The
admins
anddevelopers
fields for Keycloak users have been moved to the sso subsection. - The
sso.enabled
parameter has been added to allow user to manage edp-keycloak-operator resource creation for Argo CD. - The secret name pattern for Version Control Systems has been modified for GitHub and GitLab. The current secret name is
ci-github
andci-gitlab
. - The docker-registry component has been renamed to container-registry in the Overview page.
- The
validateMaintainers
parameter is now disabled by default for the Chart Testing linter.
- Fixed security issue when the NuGet token was shown in output logs.
- Fixed issue with external component logic when necessary secrets weren't mounted to Tekton tasks.
- The default versioning type on longer relies on the application version to prevent Jira integration issues.
- Fixed issue when Build pipeline failed for Go operator SDK on the
sonar
step. - Fixed issue when incorrect properties were set for the Git Server resource.
- Fixed incorrect the execution sequence in the update-build-number and SAST tasks for NPM.
- Fixed issue when the "Push" task pushed incorrect Java, C#, and Python application version into Nexus.
- Fixed unexpected Review pipeline failure on the
sonar
stage for Maven autotest codebase type if Clone or Import strategy is used.
The Getting Started section is updated with the following:
- The Supported Versions and Compatibility page has been updated.
The Operator Guide is updated with the following:
- The Adjust Jira Integration page has been updated.
- The Install DependencyTrack page has been added.
- The Install via AWS Marketplace page has been added.
- The Cluster Add-Ons Overview page has been added.
- The Upgrade EDP v3.3 to 3.4 page has been added.
- The Install EDP page has been updated.
- The Integrate Harbor With EDP Pipelines page has been updated.
- The Install DefectDojo page has been updated.
- The SonarQube Integration page has been updated.
- The Nexus Sonatype Integration page has been updated.
The Developer Guide is updated with the following:
- The EDP Project Rules. Working Process page has been updated.
Other:
- The edp namespace name has been changed to
edp
throughout the whole documentation. - The URL for the EDP documentation has been changed.
- EDP portal is now based on Headlamp version 0.19.1.
- The grid view mode has been added to the Overview page in EDP Portal.
- The Marketplace section has been provided with pagination and status handling.
- EDP documentation buttons have been re-organized. Now the icon looks like a circle with question mark inside. Better still, it now contains three buttons: "Documentation" to open respective documentation page, "Join Discussions" to navigate to EDP discussions on GitHub and "Open an issue/request" button to create an issue for the EDP team.
- The
validateMaintainers
parameter for the ChartTesting tool is now set tofalse
by default.
- Fixed issue when successful resource deletion in EDP Portal caused a return to the previous page.
- Fixed improper real-time image tag updating.
- Fixed issue when the Marketplace section page was empty if there is no view mode selected.
Introducing the "Marketplace" section, a new addition designed to offer pre-configured templates that expedite application setup, simplify development, and improve templates management efficiency. Craft personalized templates aligned with your organization's requirements for enhanced process streamlining, time efficiency, and governance.
Presenting the integration of Kubernetes Cluster Add-Ons in our latest EDP release, featuring the Argo CD tool and GitOps methodology. Our extensive array of add-ons streamline component management and installation at the Kubernetes level, extending EDP capabilities with an array of Observability, Security, and Scalability options.
In this release, we introduce the choice between the All-In-One and Shared Approach in EDP. The latest release enables users to optimize by utilizing shared components such as SonarQube and Nexus across multiple EDP tenants, streamlining accessibility and reducing operational complexity.
By incorporating Harbor into our ecosystem, we reaffirm our dedication to the cloud-agnostic essence of the EPAM Delivery Platform. While adopting Harbor as our default OCI compliant artifact storage, we maintain unwavering support for cloud-based container registries. This commitment empowers users with enduring flexibility to fulfill their distinct needs, exemplifying our drive to cultivate a dynamic and adaptable platform.
In this update, our technical shift aims to improve the User Interface by extending the developer-friendly configuration section across the platform. This involves transforming CD Pipelines into Environments for more precise and efficient management, reinforcing our commitment to enhancing platform efficiency and adaptability, accessible via both UI and CLI.
This update also brings Antora, an advanced documentation-as-code solution, seamlessly integrated into our Marketplace's Template. Empower your team to create, deploy, and maintain up-to-date documentation while freeing technical writers from design concerns.
EDP's scope goes beyond CI/CD excellence, notably in Keycloak management. If Keycloak is vital to your solution, consider its crucial aspects: streamlined user control, attribute updates, and deletions, along with realm, group, role, client scope, and client management. Simplifying this complexity through a declarative approach is where the Keycloak Operator excels, enabling efficient bulk user operations, streamlined realm management, and self-service Single Sign-On (SSO) integration for developers. Discover the EDP Keycloak Operator on OperatorHub.
Our latest release has transitioned exclusively to Tekton deploy scenario. This shift optimizes feature implementation and aligns with evolving user needs. This change reflects our commitment to technical advancement and efficient delivery. Jenkins is no longer supported.
To strengthen security measures, we're expanding our security checks by integrating a diverse array of open-source security tools tailored to specific functionalities. This enhancement provides security practices into the software development lifecycle through a robust DevSecOps approach.
- Tekton-dashboard is updated to the 0.36.1 version.
- Alpine image is updated to the 3.18.2 version for all operators.
- Nexus image is updated to the 3.58.1 version.
- EDP portal is now based on Headlamp version 0.19.0.
- The Marketplace section has been added to EDP Portal. It allows users to view Template kind resources which will be useful when managing applications.
- New section called Configuration is added to EDP Portal. In this section, users can connect EDP with different clusters, integrate with different container registries, such as AWS ECR or Harbor, provide Nexus as an artifact storage or integrate code review analysis powered by SonarQube.
- Antora framework support has been added to JavaScript language to rapidly scaffold documentation engine.
- The Helm framework has been added into Helm language frameworks in library codebase mapping.
- The Next.js framework support is added to JavaScript language.
- User interface has been significantly refactored. The Headlamp UI has been renamed to EDP Portal.
- The Keycloak user password can also be set from secret.
- The ability to configure SubComponent of component in a realm has been added.
- The edp-keycloak-operator is now provided with CI/CD established on GitHub.
- The codebase-operator now requires the helm-docks stage to ensure documentation updates with chart changes.
- Since EDP v3.4.0, the Jenkins deploy scenario is considered deprecated.
- Users can now provide credentials of private registry into any CD namespace.
- The codebase status tooltip has become interactive. Users can copy status message.
- The links to corresponding documentation has been added throughout the whole EDP Portal.
- The
el-listener-app-tls
endpoint now supports TLS connection for better security. - The
branchVersionPostfix
field is no longer mandatory when creating release branches. - Manual/auto trigger type labels are displayed nearly the stage name in CD Pipelines.
- The CD Pipeline page has been redesigned.
- The labels for DefectDojo and Jira secrets have been added to EDP Portal.
- An example of values.yaml file with custom certs support has been provided.
- The
nexusUrl
parameter has been added to the global section. - The default codebase branch has been set for GitLab/GitHub.
- The codebase-operator doesn't depend on the perf-operator anymore.
- The use of '--' characters in the Codebase name is no longer allowed.
- The
StartFrom
parameter for Codebase versioning is now required for edp version type. - The Helm template has been aligned for the codebase-operator.
- Users now have the option to configure Keycloak Frontend URL via the edp-keycloak-operator.
- The additional printer columns for CR Keycloak and Realm custom resources has been added to cd-pipeline-operator, edp-keycloak-operator and codebase-operator.
- The
KeycloakClient
attributes have been provided with the default values. - The build pipeline run button has been moved to branch component.
- Terraform language has been renamed to HCL in the application code language list.
- Https prefixes are now prepended to EDPComponent URLs if they lack it.
- The "in-cluster" option has been set as default into cluster select when creating stage.
- The
Stage.spec.source
parameter has been provided with default value.
- Fixed unexpected error when using the /recheck comment for rerun review pipeline in GitLab or GitHub.
- Fixed issue when it was impossible to set autotests when creating a new stage for CD Pipelines.
- Fixed issue with updating CD Pipeline applications when reopening Create/Edit dialogs.
- Fixed issue when EDP Portal showed incorrect deploy version value for Helm applications.
- Flask and FastAPI frameworks have been removed from Python language on library creation.
- Fixed issue when the Environments (formerly CD Pipelines) pages wasn't showing. Fixed improper Tekton resource status calculation.
- Fixed issue in UI when users had to do extra clicks after adding stages to CD Pipeline to make the Deploy button active.
- The
UPDATE_PASSWORD
action is no longer required by default if it is not explicitly set in the spec.requiredUserActions. - The
keycloak.Spec.url/keycloak.Spec.basePath
formation has been refactored. - Fixed issue when the edp-keycloak-operator didn't configure Keycloak.
- Fixed issue when oauth-proxy route creation was incorrect.
-
The [Getting Started] section is updated with the following:
- The Overview page has been updated.
- The Supported Versions page has been updated.
-
The User Guide is updated with the following:
- To simplify navigation, the User Guide section has been reorganized. Now it resembles EDP Portal structure.
- The Add Cluster page has been added.
- The Manage Clusters page has been added.
- The Add Infrastructure page has been added.
- The Manage Infrastructures page has been added.
- The Marketplace Overview page has been added.
- The Add Component via Marketplace page has been added.
- The Add Application page has been updated.
- The Add Library page has been updated.
- The Add Autotest page has been updated.
- The Application Overview page has been updated and renamed to Manage Applications.
- The Library Overview page has been updated and renamed to Manage Libraries.
- The Autotest Overview page has been updated and renamed to Manage Autotests.
- The Adjust Jira Integration page has been updated.
-
The Operator Guide is updated with the following:
- The Uninstall EDP page has been added.
- The Custom SonarQube Integration page has been added.
- The Install Harbor page has been added.
- The Harbor OIDC Configuration page has been added.
- The [v3.2 to 3.3] page has been added.
- The Integrate Harbor With EDP Pipelines page has been added.
- Most of the documentation related to Version Control Systems has been moved to the corresponding subsection.
- The CI Pipelines for Terraform page has been updated.
- The Enable VCS Import Strategy page has been split into 2 pages called Integrate GitHub/GitLab in Jenkins and Integrate GitHub/GitLab in Tekton.
- The GitHub Integration page has been renamed to GitHub Webhook Configuration.
- The GitLab Integration page has been renamed to GitLab Webhook Configuration.
- The EDP install page has been updated.
- The EKS OIDC With Keycloak page has been updated.
- The Headlamp OIDC Configuration page has been updated.
- The Monitoring page has been updated.
- The Manage Custom Certificates page has been updated.
-
The Use Cases is updated with the following:
- The Autotest as a Quality Gate page has been updated.
-
Other:
In this release, Headlamp UI has been updated. Particularly, the component creation procedure has been significantly changed to be more intuitive. Users can also observe visualized autotest monitoring provided with clickable links to the corresponding Tekton pipelines. Also, we provided completely new component type called Infrastructure which is designed to build infrastructures powered by Terraform.
We are thrilled to announce that one of our features called Autodeploy is now also available for Tekton CI tool. It is designed to automatically define the latest artifact tag and upgrade this service on each environment where this service is deployed. This crucial feature aimed to automate the application update procedure when using Tekton.
With version 3.3.0, the Create and Clone strategies have become available for GitLab/GitHub version control systems. This enhancement provides increased flexibility for onboarding your applications within our platform.
We have provided Java Multi-Module support for Tekton CI tool. This enhancement improves code organization, build time, dependency management, testing, parallel development, and overall maintainability of applications.
One of our major highlights is that code review pipelines can now be re-triggered manually to force their runs. This feature was implemented to simplify the code review process.
From now on, EDP supports Terraform infrastructure as an additional language out of the box. Better still, we have added the new frameworks, such as Vue, Angular and Express frameworks for JavaScript, Gin framework for Go and .Net 3.1 framework support for C# which migrated from the previous deploy scenario.
Apart from that, we are presenting our EDP Introduction video. This video provides a comprehensive overview of the platform's capabilities and benefits, making it easier for users to get started and maximize their productivity.
Lastly, users can easily check their applications for bugs or other issues using Autotests as a Quality Gate. This powerful addition allows users to conveniently add multiple autotests to any environment, be it development or production. By running the appropriate autotests, users can effectively evaluate the stability of your application and ensure it functions properly.
- Alpine image version is updated to the 3.16.4 version.
- Go language is updated to the 1.19 version.
- Prometheus stack is updated to the 45.21.0 version.
- Argo CD is updated to the 2.7.0 version.
- Headlamp is updated to the 0.16.0 version.
- Tekton dashboard is updated to the 0.35.0 version.
- Semgrep scanner is updated to the 1.19.0 version.
- Go security scanner is updated to the 2.15.0 version.
- The additional volumes in OAuth2-Proxy are now can be added to improve data management.
- Custom certificates are now also supported by Headlamp to make Headlamp UI more secure.
- Nexus proxy usage is implemented for the NPM package manager. This feature will increase Nexus flexibility.
- Code review pipelines can now be re-triggered manually to force their runs by sending "/recheck" reply message. This might be helpful if the code review process is stuck.
- Autotests as a Quality Gates are now displayed in the CD Pipelines menu for Tekton deploy scenario. This allows users to monitor run status for autotests. By running the appropriate autotests, users can ensure if the application functions properly. Autotests are to also provided with clickable links to have to the possibility to observe pipeline runs.
- GitLab and GitHub now support Create and Clone strategies. This improvement provides increased flexibility for onboarding applications in EDP.
- New type of component called Infrastructure is added to Headlamp. It allows users to create cloud infrastructures powered by AWS from scratch.
- Vue, Angular and Express frameworks support is added for JavaScript language.
- Gin framework support is added for Go language.
- Headlamp UI now supports deploying Helm applications.
- To improve overall integration with other tools. We have added such links to pipeline stages that lead users to Grafana, Kibana, Argo CD, and cluster.
- To simplify secret creation workflow, Argo CD OIDC client can now be provided with custom secret name.
- In the
Components
menu in Headlamp UI, near the build status icon, theGo to the Source code
andGo to the Quality Gates
clickable icons is added to navigate users directly to the corresponding application code and quality gates. - To simplify bug reporting procedure, templates for reporting GitHub issues in our operators are created. Please see an example.
- The codebase template chart has been refactored, so now it is aligned to upstream and doesn't contain deprecated parameters.
- The .Net language option is hidden from the codebase creation menu for non-Jenkins CI tools.
- Now the
code-review
pipeline includes theDockerbuild-verify
stage that depends on thebuild
step, thus allowing to build the application.
- The
JenkinsFolder
repository URL is added for create/clone strategy if Jenkins deploy scenario is used. - The hard-coded
project-creator
SSH user was removed, Git application path to Git repo provisioning was aligned. - Fixed issue when the first reconciliation fails with a git clone error for import strategy.
- Hotfix swap namespace/name in delete resource request.
- Fixed issue when Java and JavaScript pipelines were failing when the JIRA integration option was enabled for create strategy.
- Fixed wrong tag attachment when EDP versioning is used.
-
The User Guide is updated with the following:
- The Add CD Pipeline page has been updated.
- The Add Application page has been updated.
- The Add Autotest page has been updated.
- The Add Library page has been updated.
-
The Operator Guide is updated with the following:
- The Manage Namespace page has been added.
- The Argo CD Integration page has been updated.
- The Aggregate Application Logs Using EFK Stack page has been added.
- The Protect Endpoints page has been updated.
- The Install EDP page has been updated.
- The Microsoft Teams Notification page has been added.
- The Set Up Kubernetes page has been updated.
- The Enable VCS Import Strategy page has been updated.
-
The Use Cases is updated with the following:
- The Secured Secrets Management for Application Deployment page has been added.
- Fixed issue when the
keycloakclientscope
resource couldn't be created depending on the Argo CD integration settings.
- The ability of using custom certificates is added to nexus-operator OAuth2-Proxy.
- The ability of using custom certificates is added to edp-install OAuth2-Proxy.
- Remove the unused RoleBinding for jenkins-operator for OpenShift deploy scenario.
One of the major highlights of this release is the addition of support for the latest Java 17 language version. Furthermore, we have added support for the FastAPI and Flask frameworks for Python language. We have also included support for the .NET 6.0 framework for C# language. We have expanded our support to include Helm as a library. This will allow users to onboard their custom charts and facilitate development.
To improve security and streamline the login process, we have improved the RBAC model for cluster login. Thus, we have enriched this with more granular permissions.
We are pleased to announce that our platform now has the ability to use custom certificates when deploying platform. This feature provides greater flexibility and customization options for users, enabling them to provide an additional level of flexibility.
In addition to this, we have introduced the ability to enable Single Sign-On for the services (applications) that do not support OIDC from the box. This feature offers high flexibility, enabling you to choose the optimal authentication solution.
We have integrated Kaniko to OpenShift internal registry, allowing users to build and store their container images with OpenShift native solution. This integration offers a range of benefits, including faster build times and greater control over image for OpenShift users.
We are excited to introduce a new section in our documentation called "Use Cases". This section has been thoughtfully designed to guide you through the most common scenarios for using EDP, helping you to gain a better understanding of how our platform can be utilized to its full potential. By reading through these use cases, you will be equipped with the knowledge and tools you need to make the most of EDP and build advanced, high-quality applications with ease.
Explore the upgrades, new functionality and improvements below.
- Keycloak is updated to the 20.0.3 version.
- Operator SDK is updated to the 1.25.3 version.
- Alpine image is updated to the 3.16.4 version.
- .NET is updated to the 6.0 version.
- Findbugs plugin version in SonarQube is updated to the 4.2.2 version.
- Our latest application version includes an upgrade to the upstream Headlamp version 0.16.0, which is now the foundation for our platform.
- Semgrep is updated to the 1.2.1 version.
- Argo CD is updated to the 2.5.8 version.
- The
VERSION
file creation for Go codebases is removed. - Read-only mode in tekton-dashboard is now available.
- Cd-pipeline-operator now manages projects instead of namespaces on OpenShift.
- Kiosk integration when using OpenShift cluster is removed.
- The
cd-pipeline-operator
is now responsible for RBAC in the created namespaces. - The ability to set constant requeue time in GroupMember reconciler is added.
- Add monitoring and logging stack to the helmfile.
- Health check for Headlamp deployment is added.
- In Headlamp UI, the
Repository URL
field is renamed to 'Forked from' for the cases of using clone strategy. - Tekton pipelines are now available in Headlamp UI.
- The user is now able to onboard an application with custom framework/language version.
- Empty project button is now hidden if clone/import strategy is used.
- Commit validation functionality is available without JIRA integration.
- Error message of reconciliation is available over status in case of failure in Headlamp UI.
- The update/uninstall buttons when deploy pipeline run is in "running" status have been disabled.
- The
Last time updated
field has been removed from Headlamp codebaseBranch info. - In the components overview list, icons have been provided for the language/framework/build tool/ci tool elements.
- The Quality Gate Pipeline can now be run by the user only when the health status is green.
- Request-limit resource block is added to Tekton tasks.
- We have made the
awsRegion
parameter optional in order to eliminate the dependency on any specific cloud provider. - The deployment of EDP has been aligned with the requirements of the OpenShift cluster (OKD 4.10).
- Change icon for docker-registry on overview page.
- From now on, the
Git repo relative path
field is checked for uniqueness when creating application. - The field
From Commit Hash
in Headlamp is now validated to ensure that the entered commit hash exists so now users can not enter any numbers in the field. - App list rendering has been optimized.
- Resource details page crashes when resource has no status.
-
The EDP RoadMap page is updated.
-
The Use Cases is updated with the following:
- The Scaffold and Deploy FastAPI Application page is added.
- The Deploy Application With Custom Build Tool/Framework page is added.
-
The User Guide is updated with the following:
- The Headlamp User Guide tab is renamed to User Guide.
- The Headlamp OIDC Integration page is added.
- The Add Quality Gate page is added.
- The Add Application page is added.
-
The Operator Guide is updated with the following:
- The Report-Portal integration page is added.
- The Tekton Overview page is added.
- The Upgrade EDP v2.12 to 3.0 page is updated.
- The Argo CD Integration page is updated.
- The Install Amazon EBS CSI Driver page is added.
- The Migrate CI Pipelines From Jenkins to Tekton page is added.
- The Install Keycloak page is updated.
- The Monitoring page is added.
- The EDP Installation Prerequisites Overview page is updated.
- The Set Up Kubernetes page is updated.
- The Manage Custom Certificates page is added.
- The Protect Endpoints page is added.
-
The Developer Guide is updated with the following:
- The Local Development Guide page is updated and renamed to Workspace Setup Manual.
-
The Getting Started is updated with the following:
- The EDP Overview page is updated.
- The Quick Start page is updated.
- The Supported Versions and Compatibility page is added.
- Update Tekton Operator to the v0.64.0 version.
- Gerrit and Jenkins Operators now can manage respective resources through custom URL.
- Provide the ability to install
kiosk helm chart
for users using helmfile. - [Headlamp] Ensure secret is created in correct format for GitServer.
- Use Argo CD for the deployment of an application added with the Import strategy.
- [Headlamp] Disable 'Create' and 'Clone' button for Import strategy.
- [Headlamp] Merge Applications, Libraries, and Autotests into Components section.
- [Headlamp] Zoom in the tooltips for a better view.
Headlamp
creates a Tekton PipelineRun with a name that consists of an application name and a branch.- Remove duplicate parameters for configuring
perf-operator
in Helm chart. - Deprecated Kubernetes resources for
edp-db
have been removed from theedp-install
helm chart.
- Fix the consideration of the
commit hash validity
during the promotion of a new codebase branch. - Tekton CI pipelines generate Jira
fixVersion
in lowercase, previously both uppercase and lowercase names were allowed causing an error. - [Headlamp] Fix the usage of autotests as a part of quality gate.
- [Headlamp] Fix the description in the
Relative Path
field. - [Headlamp] Fix the commit message pattern for Jira integration.
- [Headlamp] Fix the font size for the Components page titles.
-
The Operator Guide is updated with the following:
- The Install Tekton page is updated.
- The Manage Jenkins CI Pipeline Job Provisioner page is updated.
- The Install ReportPortal page is updated.
- The Install via Helmfile page is updated.
- The Install EDP page is updated.
- The EDP Installation Prerequisites Overview page is added.
- The Enable VCS Import Strategy page is updated.
- The Add a Custom Global Pipeline Library page is updated.
- The Set Up Kubernetes page is updated.
- The Set Up OpenShift page is updated.
- The Install Keycloak page is updated.
- The Argo CD Integration page is updated.
- The Upgrade EDP v.2.11.x to v.2.12.x page is updated.
- The Upgrade EDP v.2.12.x to v.3.0.x page is added.
-
The Quick Start page is updated.
In EDP 3.0.0, Tekton is used alongside Jenkins for building, testing, and deploying application components. Tekton is a cloud-native CI/CD solution working seamlessly with Kubernetes and OpenShift Container Platform.
Argo CD is integrated with EDP and allows using GitOps approach for Kubernetes application deployment.
The Keycloak operator is now available on the OperatorHub. Now this operator can be installed on the OpenShift cluster using the OperatorHub installation approach.
EDP Headlamp UI tool is now used as a new EDP dashboard. Because of the EDP Headlamp implementation, the edp-admin-console and edp-reconciler tools are deprecated and completely removed.
EDP suggests ReportPortal as a primary test result aggregation tool. The ReportPortal tool integration with EDP allows categorizing the automated test results and reduce test results analysis efforts using built-in analytics features and Machine Learning.
Explore the upgrades, new functionality, breaking changes and improvements below.
- Kubectl is updated to the 1.24.3 version.
- Helm is updated to the 3.10.2 version.
- Gerrit is updated to the 3.6.2 version.
- Jenkins is updated to the 2.375.1 version, as well as Jenkins plugins are updated to the latest stable versions.
- SonarQube is updated to the 8.9.10 version.
- Nexus is updated to the 3.43.0 version.
- Argo CD is updated to the 2.5.3 version.
- Keycloak is updated to the 20.0.1 version.
- Golang is updated to the 1.19.3 version.
- DefectDojo is updated to the 2.17.0 version.
- The
edp-tekton
is enabled as a EDP subcomponent and a part of the EDP deployment pipeline. - The web and desktop versions of EDP Headlamp are implemented.
- The
keycloak-operator
is published on the OperatorHub. The Keycloak client is updated alongside with the KeycloakClient custom resource. - The ReportPortal functionality is integrated into EDP. The ReportPortal deployment is added into the Helmfile.
- The Argo CD functionality is integrated into EDP. Argo CD application is deployed in the edp-tenant and Gerrit Argo CD user is created.
- The
basePath
variable is added to thegerrit-operator
to form thegerritApiUrl
.
- Dotnet 2.1 is no longer supported.
- The
edp-reconciler
is no longer supported. All V1 API handlers are switched to V2 version and database resources are removed from the deployment templates. - The
edp-admin-console
is no longer supported. All REST and WebUI handlers are deprecated and database resources are removed from the deployment templates. - The
edp-argocd-operator
is no longer supported. - The process of resource updating operations is refactored for the codebase controller, thus shortening the reconciliation period.
- Keycloak adapter client structure is updated when updating
KeycloakClient
custom resource. - New approach to SonarQube plugins installation is implemented in the
sonar-operator
repository. - By default, anonymous statistics for SonarQube deployment is disabled.
- The
create-release
job possible failure is fixed on thecreate-branch
step. - The
codebase-operator
leader election is fixed. - The
ImageName
parameter is aligned for the verified stages of the CD pipeline. - The
sonar-project.properties
are now considered in the Npm code review.
-
The EDP RoadMap is updated.
-
The Headlamp User Guide is created.
-
The Operator Guide is updated with the following:
- The ReportPortal section is created with the Integration With Tekton and Keycloak Integration pages.
- The Use Cert-Manager in OpenShift page is added.
- The Logsight Integration page is added.
- The Upgrade Keycloak v.17.0.x-Legacy to v.19.0.x page is added.
- The Overview page is updated.
- The Debug GitLab Webhooks in Jenkins page is updated.
- The GitLab Integration page is updated.
- The Debug GitHub Webhooks in Jenkins page is updated.
- The GitHub Integration page is updated.
- The Enable VCS Import Strategy page is updated.
- The Adjust Jira Integration page is updated.
- The Install via Helmfile page is updated.
- The Install ReportPortal page is updated.
- The Install Argo CD page is updated.
- The Install DefectDojo page is updated.
- The Install Keycloak page is updated.
- The Install EDP page is updated.
- The Deploy AWS EKS Cluster page is updated.
- The Manage Jenkins CI Pipeline Job Provisioner page is updated.
- The Argo CD Integration page is updated.
-
The User Guide is updated with the following:
- The Add a Custom Global Pipeline Library page is updated.
- The CI Pipeline for Container page is updated with the Tools for Container Images Building section.
- The Add Library page is updated.
- The Customize CI Pipeline page is updated.
-
The FAQ documentation section is updated with the following:
- Gerrit and Jenkins Operators now can manage respective resources through custom URL.
- The basePath key can be indicated in the Gerrit Operator custom resource to form gerritApiUrl.
- Fix Gerrit project syncer and controller conflict in the Gerrit Operator to reduce the delay during the multiple projects sync.
- Kiosk integration with the cd-pipeline operator is no longer mandatory for the EDP deployment.
- By default, Java 8 Maven and Java 8 Gradle Jenkins agents now use Java 8 instead of Java 11.
- The 431 error for Nexus is fixed by increasing the request header size.
- Remote Git HEAD is set as a default branch in Gerrit.
EDP 2.12.0 version presents EDP Argo CD Operator that runs as an adapter layer between the EDP Platform and Argo CD and manages the EDP Argo CD Tenants. Argo CD is suggested as a solution providing the Continuous Delivery capabilities.
Another new EDP subcomponent is EDP Headlamp that is a new UI on React.js that will replace the EDP Admin Console in future releases. EDP Headlamp, based on the Kinvolk Headlamp UI Client, provides the ability to define pipelines and project resources in a simple way.
Now EDP also provides the implemented Static Application Security Testing (SAST) support allowing to work with the Semgrep security scanner and the DefectDojo vulnerability management system to check the source code for known vulnerabilities. SAST is introduced as a mandatory part of the CI Pipelines.
Since this release, External Secret Operator is a recommended secret management tool for the EDP components.
EDP operator manifests have been updated to the latest v1 API version. Now EDP Platform supports Kubernetes versions 1.22+ and runs on the 4.9 and 4.10 OKD versions.
Creating the IAM Roles for Service Account is a recommended way to work with AWS Resources from the OKD cluster.
Explore the upgrades, new functionality, breaking changes and improvements below.
- Gerrit is updated to the 3.6.1 version, please refer to the official website.
- Keycloak is updated to the 19.0.1 version, please refer to the official website.
- EDP Custom resource definitions now use the stable
apiextensions.k8s.io/v1
API version, please refer to the official website. - SonarQube is updated to the 8.9.9 version, please refer to the official website.
- Nexus is updated to the 3.41.0 version, please refer to the official website.
- The Alpine Operators Base Image is updated to the 3.16.2 version, please refer to the official website.
- Jenkins is updated to the 2.346.3 version, please refer to the official website.
- All components in the Jenkins agents are updated to the latest stable versions.
- Go version in all EDP operators are updated to the 1.18.4 version, please refer to the official website.
- Kaniko images are updated to the 1.8.1 version, please refer to the official website.
- Now it is possible to use External Secrets Operator.
- The SAST Static security analysis testing, namely the DefectDojo component, is installed as a part of the EDP ecosystem.
- EDP Headlamp is added as a new EDP subcomponent that will replace the EDP Admin Console in future releases.
- EDP Argo CD Operator is a new EDP subcomponent that manages the EDP Argo CD Tenants.
- The Helmfile is introduced as an approach for the EDP ecosystem deployment.
- The Logsight integration is implemented as an optional step into the CD pipeline on the
edp-delivery
. - The Keycloak-X is now used on the EDP platform.
- For the Keycloak Operator, a user can manage the assignment of the default scope mapper for the
keycloakclient
custom resource.
- Starting from this release, it is expected that a
CodebaseBranches
custom resource definition uses astatus
field as a subresource.
- The OKD 4.10 cluster is deployed in the AWS cloud. Please refer to the Deploy OKD 4.10 Cluster page for the details.
- The RBAC schema for the
cd-pipeline-operator
andjenkins-operator
is refactored. - The Keycloak custom resources are aligned with the Argo CD integration.
- The EDP Helm charts are populated with the metadata to be exposed on the Artifact Hub.
- The
previous-stage-name
is removed from the Jenkins deployed versions view. - The
deployments
is now a default deployment type for the OpenShift cluster.
- The exponential back-off is used when retrying the
GerritGroupMemeber
reconciliation. - The
Chart.yaml
content is aligned throughout the EDP. - Git checkout is fixed for an Autotest step of the CD Pipeline.
- The EDP deploy on the OKD 4.9 cluster works as expected after a typo has been fixed in the CI job-provisioner for the OpenShift cluster, and user creation process for the OpenShift cluster has been refactored.
- A
status
field is now ignored during the update of a Stage custom resource, and a CD Stage is successfully created. - The password policy can be successfully created in the Keycloak realm using a custom resource.
- A status for the
GerritGroupMember
custom resource is updated as expected. - The deprecated Custom Resource Definition fields are removed from the EDP
codebase-operator
. - The
mdx_truly_sane_lists
issue when building MkDocs is fixed. - The
sonar-operator
API is updated to be compliant with SonarQube 8.9.9.
-
The EDP RoadMap is updated.
-
The Operator Guide is updated with the following:
- The Upgrade EDP v.2.11.0 to v.2.12.0 page is added.
- The Install via Helmfile page is updated.
- The Deploy OKD 4.10 Cluster page is added.
- The Install DefectDojo page is added.
- The Secrets Management section is added including the Install External Secrets Operator and External Secrets Operator Integration pages.
- The Install Keycloak page is added.
- The Argo CD Integration page is added.
- The Static Application Security Testing section is added including the Static Application Security Testing Overview, Add Security Scanner, and Semgrep pages.
- The Manage Jenkins CI Pipeline Job Provisioner page is updated.
- The Associate IAM Roles With Service Accounts page is updated.
- The Install NGINX Ingress Controller page is updated.
- The EKS OIDC With Keycloak page is updated.
- The Upgrade EDP v.2.10.x to v.2.11.x page is updated.
-
The User Guide is updated with the following:
- The CI Pipeline for Terraform page is updated.
EDP 2.11.0 version presents the CD pipeline customizations, namely, now it is possible to populate secrets to different environments and stages; to remove Helm releases from a namespace, thus allowing to redeploy the application from scratch. CD pipeline flexible optimizations providing the ability to define custom logic of the application deployment. In addition to the automation deployment proceeding with the latest versions and manual selection of the necessary version, there is a possibility to build your own custom deployment logic. From the side of operators, there is a bulk of Gerrit improvements for the merge requests: tracking MR statuses, creating MRs directly from a custom resource and with the data specified in a config map. In Keycloak, now it is possible to configure Keycloak Realm Password Policy, to make the Keycloak Realm role mappers optional, to set the full reconciliation for the Keycloak Realm user, and to configure and create the Authentication flows via the KeycloakAuthflow custom resource. Also, there are extensions of Jenkins Shared Libraries allowing to add any shared library using custom resource. In addition, the Docker support is available.
Explore the upgrades, new functionality, breaking changes and improvements below.
- SonarQube is updated to the LTS 8.9.8 Community Edition. For details, please refer to the official website.
- Jenkins is updated to the LTS 2.332.2 version. For details, please refer to the official website.
- All Alpine-based images are updated to the 3.15.4 version. For details, please refer to the official website.
- Go language is updated to the 1.17.8 version. For details, please refer to the official website.
- Helm is updated to the 3.8.1 version on Jenkins agents. For details, please refer to the official website.
- Keycloak is updated to the 17.0.1 version. For details, please refer to the official website.
- Kubectl is updated to the 1.23.5 version on Jenkins agents. For details, please refer to the official website.
- Nexus is updated to the LTS 3.38.1 version. For details, please refer to the official website.
- Now it is possible to add a library for Dockerfile, thus having CI pipelines for Docker.
- The copy-secret pipeline stage is added providing the ability to populate Kubernetes secrets across deployed environments/stages.
- The ability to remove Helm releases from a namespace, thus allowing to redeploy the application from scratch.
- Validation of the generated documentation for the Helm deployment templates.
- Use pre-defined deployment logic or your own: either keep the automation deploy proceeding with the latest versions or select manually the necessary version for deploy.
- EDP versioning supports the arbitrary artifacts version name for branches, i.e. tags can be of any value besides the RC / SNAPSHOT that are specified by default.
- The newly created CD pipeline includes the enabled Discard old builds option with the configured rules.
- Extension of Kaniko template flexibility allowing to set extra arguments, environments, and resource requests for every container.
- Extension of Jenkins shared libraries allowing to add any shared library using custom resource.
- Ability to manage environment variables, namely, adding and configuring of a new environment variable for components.
- Configuration and creation of Authentication flows via the KeycloakAuthflow custom resource.
- Ability to configure Keycloak Realm Password Policy.
- Making the Keycloak Realm role mappers optional.
- Set the full reconciliation for the Keycloak Realm user.
- Configurable reconciliation time in Gerrit is added into environment variable.
- Ability to track the Gerrit merge request status in the custom resource status.
- Creating a merge request directly from the custom resource of the Gerrit operator.
- Defining additional parameters for Gerrit merge request using the custom resource.
- Creating a Gerrit merge request with contents specified in a config map.
- The ability to provide read-only repositories via the ReadOnly group in the Gerrit operator.
- Managing Sonar permission templates and groups using the Kubernetes custom resource.
- Defining Sonar default permissions template using the Sonar custom resource.
- Managing Nexus users via custom resource.
- Custom resource will have two keys: 'tag' for a single tag and 'tags' for the list of tags.
- Use gorilla's csrf implementation instead of beego's xsrf.
- Switch to use v2 admin console API for build, code review and deploy pipelines.
- Respective GerritGroupMember Custom Resources must be created to replace existing users[] mapping. Consult the release upgrade instruction.
- Update Gerrit config according to groups.
- Implement Developers group creation;
- Assign users to admins and developers groups using the GerritGroupMember CR;
- Align permission for groups.
- The TLS certificate option is added when using Ingress controller for SSL certificates.
- CI job provisioner now runs on the specific Jenkins label.
- There is a namespace defined for a Service Account in the Role Binding.
- The Kaniko build step has a timeout.
- The Kaniko provision logic is moved to the edp-install helm chart, thus providing the ability to deliver updates.
- Gerrit members are managed from GerritGroups and GerritGroupMembers, providing the successful upgrade from older versions.
- The creation of users within the EDP installation is removed.
- The images within the main EDP documentation are scalable.
- Disabled access to Gerrit for users without admin/developer roles in Keycloak.
- The replacing of the default branch option is added to specification in codebase operator.
- Postponed reconciliation for the Import strategy for the codebase operator.
- Disable of putting deploy configs by a flag for the codebase operator.
- Fixed the changelog generation in GH Release Action.
- Codebase operator does not repeat the GitServer custom resource reconciliation.
- Sonar proxy error in helm template file.
- Failed to get the CodebaseImageStream CR when branch name contains the slash character.
- CD pipeline fails if image is not promoted.
- Fixed build issue for operator Docker images.
- Jenkins role mapping CR controller does not return an error if a group does not exist.
- The Fix Version field does not contain data for the container libraries.
- An error occurs when deleting the KeycloakAuthFlow CR.
- Keycloak realm user does not synchronize roles correctly.
- The SonarGroup and SonarPermissionTemplate controllers do not remove failed custom resource.
- It is impossible to set any branch as a default existing in a repository using the Import strategy.
- Nexus operator does not disable anonymous access to Admin Console UI.
-
The Operator Guide is updated with the following pages:
- Associate IAM Roles With Service Accounts
- Configure AWS WAF With Terraform
- Debug GitLab Webhooks in Jenkins
- Debug GitHub Webhooks in Jenkins
- EKS OIDC With Keycloak
- Enable VCS Import Strategy
- GitHub Integration
- GitLab Integration
- Manage Jenkins CI Pipeline Job Provisioner
- Multitenant Logging
- Upgrade EDP v.2.10.2 to v.2.11.0
-
The User Guide is updated with the following pages:
- It is possible to use the custom ct.yaml config defined per repository. For details, please refer to the Use Chart Testing Tool for Code Review Pipeline page.
- Jenkins pipelines use SSH Agent Jenkins Plugin instead of "eval ssh-agent" approach.
- Make possible to use oc and kubectl tools on Jenkins master, go and helm agents.
- Jenkins ecr-to-docker stage now supports EDP and default versioning.
- SonarQube is upgraded to the 8.9.6 version. For details, please refer to the official website.
- The EDP Sonar operator is upgraded to the 2.10.2 version. For details, please refer to the edp-sonar-operator repository.
- A new CHANGELOG.md file is added providing the information regarding the changes in the edp-install repository.
- The RELEASES.md file is updated providing the information regarding overall platform changes.
EDP 2.10.0 version provides the CI/CD improvements. For instance, each operator now exposes metadata information during start up, like: build tag/date, commit hash from which the operator was built. There are updates in Keycloak operator. Now Keycloak Custom Resources allows configuring realm identity providers settings, managing the user federation, controlling the roles and groups, reconciling Keycloak Clients in Custom Resource with several strategies, setting user attributes, and managing events in Keycloak. In addition, login attempts are optimized by synchronizing the access token cache. General configuration for Ingress controller is provided in Helm charts, which simplifies logic for deployment to different environments. Since this release, EDP supports large Git repositories. As for the EDP components, each of them contains a CHANGELOG file providing the release information.
Explore the updates, new functionality, breaking changes and improvements below.
- All Alpine based images are upgraded to the 3.13.7 version. For details, please refer to the official website.
- Go is upgraded to the 1.17 version. For details, please refer to the official website.
- Helm is upgraded to the 3.7.1 version on Jenkins agents. For details, please refer to the official website.
- Jenkins is upgraded to the LTS 2.303.3 version. For details, please refer to the official website.
- Keycloak is upgraded to the 15.0.2 version. For details, please refer to the official website.
- Kubectl is upgraded to the 1.20.0 version on Jenkins agents. For details, please refer to the official website.
- Nexus is upgraded to the LTS 3.36.0 version. For details, please refer to the official website.
- SonarQube is upgraded to the LTS 8.9.3 Community Edition. For details, please refer to the official website.
- Now EDP supports large Git repositories.
- Each operator/component provides meta information in logs, for example, the date of build, the build branch, tag, etc.
- The performance issue is addressed by defining history depth (up to 10) for job provisioner run.
- A new Custom Resource Definition KeycloakRealmIdentityProvider allows configuring realm identity providers settings.
- A new KeycloakRealmComponent Custom Resource allows managing the user federation in Keycloak.
- Several strategies are available for Keycloak Client reconciliation in Custom Resource.
- The token in the kc-token-main secret is updated immediately after the creation of a new realm.
- To ensure the desired and actual states are identical, a Custom Resource is reconciled in a configured period of time.
- Using a service account in Keycloak allows getting the admin realm token.
- KeycloakClient Custom Resource allows setting Front Channel Logout parameter in SAML clients.
- Keycloak Custom Resource allows recreating already existing Keycloak client scopes.
- When using the Import strategy of adding a codebase, Jenkins secrets can be created through the JenkinsServiceAccount Custom Resource.
- A new Jenkins agent is added with Java SE 14 and Apache Maven 3.8.4.
- GCC and Make tools are added to the Jenkins agent image.
- Dynamic parameters are implemented for a codebase branch trigger release.
- A shared Golang library is created. For details, please refer to the GitHub page.
- With v.2.10.0, EDP provides breaking changes and improvements in CI/CD process. For instance, the Jenkins job provisioner creates a Jenkinsfile (that contains the definition of the Jenkins pipeline) and configures it in the Jenkins pipeline as a pipeline script.
- From the Continuous Integration part, Jenkins pipelines are provisioned by a pipeline provisioner instead of a codebase operator. Please refer to the Manage Jenkins CI Pipeline Job Provisioner page for the details.
- Work with Ingress becomes intuitively clear, and the default Ingress creation process is improved.
- Golang tests are excluded from the sonar stage in the Code Review pipeline.
- The edp-codebase operator work is improved during Jenkins and Gerrit initialization.
- Login attempts are optimized by implementing synchronization on the access token cache for Keycloak.
- Stashing the hadolint files allows configuring the hadolint check.
- EDP allows to deploy and manage an application with the third-party dependency.
- In Keycloak, the id for a newly created realm is identical to the realm name.
- Events in Keycloak can be managed with a corresponding Custom Resource.
- In Keycloak, user attributes can be set using a corresponding Custom Resource.
- Jenkins and Nexus deployments are fixed on the OKD cluster.
- A new branch can be created from an undefined commit.
- Empty 'Deployment Script' field in Admin Console by default.
- Jenkins is unable to create Jenkins agents.
- Code Review and Build pipelines fail on the sonar stage for .Net applications.
- The edp-cd-pipeline operator can not create a CD stage.
- Panic issue in case GetCodebaseImages doesn't exist.
- The unknown apiGroup field is removed in OpenShift RB.
- A user is unable to clone a codebase from a public repository.
- A Custom Resource is not deleted from a namespace after the codebase deletion from the EDP Admin Console.
- The whitespace in the git-tag stage is removed.
- Duplication of the key value in Keycloak during repeated reconciliation of KeycloakRealm Custom Resource is fixed.
- The EDP Project Rules. Working Process page is added to the Developer Guide.
- The Operator Guide is updated with the following:
- The Upgrade section is added including the Upgrade EDP v.2.7.8 to v.2.8.4 and Upgrade EDP v.2.8.4 to v.2.9.0 pages:
- The Enable VCS Import Strategy page is updated.
- The Schedule Pods Restart page is updated.
- The following pages are added to the Use Cases section:
- The User Guide is updated with the following:
- EDP CI/CD Overview is added.
- CI Pipeline Details is added.
- Code Review Pipeline is added.
- Build Pipeline is added.
- CD Pipeline Details is added.
- Prepare for Release is added.
- The EDP Pipeline Framework page is updated.
- The Autotest section is updated.
- The FAQ section is added to the EDP documentation.
With v.2.9.0, EPAM Delivery Platform offers more flexibility in deployment and work. Thus, EDP and all the prerequisites can be installed with Terraform tool or Helm. IRSA for Kaniko (Kaniko is a tool for building container images from Dockerfile) is an optional step. Alternative is to use instance profiles. Kiosk, a respective multi-tenancy extension to manage tenants and namespaces, is optional and can be enabled or disabled during EDP deployment. It is possible to get the list of namespaces owned by a specific edp-tenant with the help of Kubernetes labels.
EPAM Delivery Platform allows to configure authorization for key roles in Jenkins in a declarative way. Now, Jenkins operator reconciles any changes in shared libraries specification. As for the Keycloak, it is possible to make Jenkins Keycloak client confidential and to manage attributes for service account in Keycloak with Keycloak Client Custom Resource. In addition, the roles for Keycloak proxy can be set in Nexus.
There are Gerrit operator improvements: each Gerrit repository is presented as a Custom Resource in Kubernetes. Available branches are displayed in Gerrit Project Custom Resource.
See the list of actions required to work with EDP v.2.9.0, new functionality and enhancements, as well as the list of fixed issues and updated documentation below.
- Before updating EDP from v.2.8.X to v.2.9.X, please update the 'gerrit-is-credentials' secret by adding the new 'clientSecret' key with the value from 'gerrit-is-credentials.client_secret'.
- After EDP update, please restart the 'sonar-operator' pod to address proper Sonar plugin versioning. After sonar-operator is restarted, check the list of installed plugins in the corresponding SonarQube menu.
- All alpine based images are updated to version 3.13.6. For details, please refer to Alpine Official Website.
- EDP and prerequisites can be installed using Terraform tool.
- Kiosk is optional and can be enabled or disabled during EDP deployment.
- IRSA for Kaniko is an optional step.
- Permissions in Jenkins are configured in a declarative way.
- Keycloak proxy image can be defined in Nexus spec.
- It is possible to set roles for Keycloak proxy in Nexus spec.
- Keycloak Client Scope is managed with Kubernetes Custom Resource.
- There is an option to provision users in Keycloak and to assign them roles and groups using custom resources.
- CD pipelines reconciliation can be enabled or disabled.
- Now Jenkins Keycloak client supports confidential mode.
- Jenkins operator reconciles any changes in shared libraries specifications.
- It is possible to manage attributes for Service Account in Keycloak with KeycloakClient Custom Resource.
- It is possible to set a number of parallel threads for codebase branches reconciliation.
- Pod duplication on dockerbuild-verify stage is removed.
- Reconciler is refactored to not save an empty Jenkins agent to the database.
- GitHub pull-request builder is added to the Jenkins box.
- Artifact path in Go language is updated in Dockerfile for the build stage.
- All Gerrit repositories are presented as a Custom Resource in Kubernetes.
- Available branches are displayed in the GerritProject Custom Resource.
- Kubernetes labels are now used to get the list of namespaces owned by a specific edp-tenant.
- The Ingress API version is aligned with Kubernetes version.
- The image pull policy parameter can be redefined during the EDP installation (default: ifNotPresent).
- The environment variables are parametrized for admin-console deployment.
- Jenkins operator constantly tries to create a Jenkins job.
- The status field is added to the CD pipeline operator CRD.
- Fix Gerrit plugin enablement during Jenkins provisioning.
- Routes are removed from the database and reconciler.
- It is impossible to create an application with a custom default branch.
- It is impossible to deploy Go-operator-sdk applications.
- There is no authentication in the checkout stage when the existing branch is set as a default one (cloned from a private repository).
- Codebase operator does not work correctly with a non-master branch.
- The deprecated agents for GitLab CI are listed in the GitlabCI.yaml file.
- Code-Review pipeline checkouts from an incorrect commit for GitLab integration.
- Build pipeline fails on the compile stage for .NET-3.1 libraries.
- The reconciler logger takes the wrong number of arguments.
- The structure of EPAM Delivery Platform documentation framework is updated.
- The Prerequisites section is updated with the following pages:
- The Install EDP page is updated.
- New configuration and integration pages are added:
- New tutorials are added to the documentation:
- Helm chart fields are fixed: the correct indent is set for toleration/affinity/node selector fields.
- Nexus is updated to v.3.33.1. Please refer to the official documentation for details.
- Jenkins is updated to v.2.289.3. Please refer to the official documentation for details.
- In CD pipeline deployment, the sorting of the image tags for the Init stage is displayed in the wrong order.
- Missing field status is added to the cdpipeline.crd yaml file.
- IRSA is optional for EDP deployment process.
- The codebaseBranch field is removed from the cdpipeline.crd yaml file.
- A new field subresources status is added to the cdpipeline.crd yaml file.
- The inputDockerStreams field is aligned in the cd-pipeline structure with CRD.
- The site and path parameters are removed from database.
- User cannot create an application using the Create strategy in a custom default branch.
With the version 2.8.0, EDP offers a number of breaking changes making the work on the project smoother. For instance, Keycloak is set for work in multi-tenancy mode allowing to work on a set project without interrupting the work of others. Within the version 2.8.0, it is also possible to create an application with an empty repository and create namespaces using Kiosk API. The third-party service provision functionality and Exposing Info tab were removed from Admin Console. Besides, the initial structure for a new documentation framework is added to GitHub.
There are enhancements in the EDP CI/CD framework, such as CI pipeline availability for Open Policy Agent (OPA), CI pipelines defined for groovy-pipelines, and the possibility to apply a specific logic and customize the Init stage of a CD pipeline.
See the list of actions required to work with EDP v.2.8.0, new functionality and enhancements, as well as the list of fixed issues and updated documentation below.
-
Init prerequisite is removed from the Deploy pipeline and added as a standalone stage.
Reload jenkins-operator pod once EDP is updated to version 2.8.0.
-
New Autodeploy functionality requires updating CodebaseImageStream resources.
Update all CodebaseImageStream resources with spec.codebase: {application-name} field to which Codebase belongs this resource.
spec:
codebase: {application-name}
imageName: stub
tags:
- created: stub
name: stub
-
CDPipeline CRD:
-
New deploymentType field has been added to spec. Available values: Container/Custom
Container - default way to deploy applications from the registry.
Custom - an empty CD pipeline is created in Jenkins (with the Init stage only).
-
-
CDStageDeployments CRD:
- Spec has been changed. Resource stores only one tag to deploy it automatically on Jenkins. To fix the autodeploy for EDP v.2.8.0, remove all old CDStageDeployment resources from the cluster.
-
CDStageJenkinsDeployments CRD:
- Spec has been changed. Resource stores only one tag to deploy it automatically on Jenkins. To fix the autodeploy for EDP v.2.8.0, remove all old CDStageDeployment (as CDStageJenkinsDeployment resources have owner refs to CDStageDeployments resources, it is only necessary to remove CDStageDeployments) resources from the cluster.
-
Codebase CRD:
-
New emptyProject field has been added to spec. Available values: true/false.
True - codebase will be created without template code (Create strategy).
False - codebase will be created with template code (Create strategy).
-
- The operator-SDK library is updated to version 1.5.0.
- The Controller-runtime library is updated to version 0.8.3.
- Jenkins is upgraded to v.2.289.1. For details, please refer to the Jenkins official website.
- Keycloak is upgraded to v.13.0.1. For details, please refer to the Keycloak official website.
- The Jenkins-agents are upgraded with dependencies to version.
- Helm is upgraded to v.3.6.0 in Jenkins for deploy process. For details, please refer to the Helm page on GitHub.
- Helm tool is upgraded to v.3.5.3.
- The alpine base images are upgraded to version alpine:3.13.5. For details, please refer to the Alpine Linux official documentation.
- The jQuery is upgraded to version 3.6.0 to mitigate the vulnerabilities related to the previous version. For details, please refer to the jQuery official blog.
- Kaniko executor is upgraded to version 1.6.0. For details, plese refer to the Kaniko page on GitHub.
- ECR registry supports multi-tenancy per EDP installation.
- Baseline Kubernetes applications can be installed with Argo CD.
- A landscape is created for the current Kubernetes role model in EDP.
- Keycloak is set for work in multi-tenancy mode with minimal permissions so that a user can work in a set EDP project without interrupting the work of other projects.
- All dependencies are pointed to tags from master branches in go mod for all operators.
- Jenkins pipeline can be started via Custom Resources.
- CI pipeline is available for OPA policies. For details, please refer to the Open Policy Agent official documentation and the Use Open Policy Agent Library in EDP page.
- CI pipelines are defined for groovy-pipelines.
- The Init stage of the CD pipeline can be customized. For details, please refer to the Add CD Pipelines page.
- CD pipeline provisioner can be triggered periodically.
- There is an option to enable/disable auto deployment for a specific stage after the stage is created. For details, please refer to the Edit CD Pipeline section of the Admin Console Guide.
- Initial components are provisioned for the AQA framework.
- New branches can be added with a slash in the name with default versioning.
- Default branch value can be defined with dots.
- It is possible to change the image streams for the pipelines with the “auto” deployment type.
- All applications in the CD pipeline are deployed in case of changes in one of them (Autodeploy).
- Keycloak admin credentials are replaced with realm admin credentials.
- Keycloak Realm can be installed without default roles.
- Authentication flows for a realm can be managed with separate Custom Resource.
- Authentication browser flow in Keycloak Realm can be managed using Custom Resource.
- The roles are deleted when they are removed from KeycloakRealmRolesBatch.
- Deployment objects can be used in OpenShift instead of DeploymentConfigs.
- The third-party services provision functionality is removed.
- Exposing Service Info block and functionality is removed from Admin Console.
- An application can be created with an empty GitHub repository. For details, please refer to the Add Application page of the Admin Console user guide.
- Namespaces can be created with Kiosk API.
- The codeql scan is added for the GitHub repositories.
- Gerrit operator adds a user to a group in a reconcile manner if a user is missing in Gerrit itself.
- Gerrit Administrators are fully reconciled from Gerrit CR.
- Keycloak realm can be specified to be integrated with Gerrit in the CR specification
- Users can manage mappers for SSO Realm provider in KeycloakRealm CR.
- Users can manage Themes and Security Defences in Keycloak Realm using CR.
- Keycloak Operator does not reconcile Realm Role from CR if a Role is already presented in the application (Keycloak Server).
- The initial structure for a new documentation framework is added to the GitHub to improve the documentation processing and navigation. Please refer to the EPAM Delivery Platform documentation page for details.
- EDP Stages page is updated and moved to GitHub.
- The advanced mapping section is not available for autotests codebase when Jira integration is true.
- It is impossible to delete the Jenkins folder while any codebase branches exist.
- EDP helmfile, hadolint linters fail with UI components.
- The user is unable to delete the CD pipeline stage from Admin Console.
- The validation message is not informative if no application is selected.
- Codebases, CD pipeline, and CD stages name must be 2 letters length minimum.
- Empty branches dropdown menus are clickable and show nothing.
- The validation message is “Invalid URL, log in or password” even when the URL is correct.
- The validation message is not informative in the Import strategy for applications.
- The Create button has been removed at the end of the application codebase creation.
- The codebase data is displayed incorrectly when changing strategy during creation.
- Clicking the Back button from the update page leads to cd pipeline overview instead of the pipeline details page.
- Application code contains hardcoded client secrets.
- False-positive security findings in the Admin Console code are fixed.
- The name Admin appears in the Admin Console instead of the username after redeploying the environment.
- It is impossible to assign a Sonar administrator role.
- Fix adding codebase via Admin Console (OpenShift 4.X).
- Action log message contains % and the repository name is shifted.
- Build pipeline failed on Sonar stage for Python applications.
- Inability to create AWS credentials in Jenkins.
- Auto deploy works only for the first CD pipeline stage.
- Impossible to create a CD pipeline with a disabled ‘application to promote’ option.
- The default branch for GitHub/GitLab provisioners.
- Linters are not created in the Code Review pipeline for applications added with the Import strategy.
- The Create and Proceed buttons for the Perf Integration are fixed.
- A branch version overwrites the branch name during the new branch creation for a codebase with EDP versioning.
- It is impossible to add an autotest using the Import strategy.
- It is impossible to deploy Go-operator-sdk applications.
- The Code Review pipeline checkouts from incorrect commit for GitLab integration.
- The Build pipeline failed on the Compile stage for .NET-3.1 libraries.
- The framework for groovy libraries is wrong.
- The new EDP Stages documentation describing the stages of EDP CI/CD Framework.
- The new Use Open Policy Agent Library in EDP documentation describing the OPA policy engine.
- The new EDP Glossary documentation defining the most useful EDP terms.
- The new Inspect CD Pipeline documentation describing the editing of CD pipelines.
- The EDP Installation on Kubernetes page is updated.
- The Keycloak Installation on Kubernetes page is updated.
- The following pages are updated in the EDP Admin Console guide:
- Sonar KeycloakClient requires new configuration for correct assigning 'sonar-administrators' group to users from OIDC provider.
Update Sonar KeycloakClient resource with spec.protocolMappers field:
spec:
protocolMappers:
- config:
access.token.claim: 'false'
claim.name: roles
id.token.claim: 'true'
jsonType.label: String
multivalued: 'true'
userinfo.token.claim: 'true'
name: realm roles
protocol: openid-connect
protocolMapper: oidc-usermodel-realm-role-mapper
Then reload sonar-operator pod.
- The go module is renamed in keycloak-operator.
- Terraform library support is improved (get-version stage is fixed).
- Allure download repository is changed to github.com.
- The init stage runtime is decreased in Deploy pipeline.
- Versioning and Jira integration for Terraform library are fixed.
- Cyrillic characters support for Jira is implemented.
- The base alpine image for all operators is upgraded to version 3.11.10.
- The ecr-to-docker stage is aligned to the EDP versioning workflow.
- Support for slash characters in ImageStreams objects is fixed.
- The codebase operator with NPE failure under disabled Jira integration is fixed.
- The keycloak operator dependency is fixed in the values.yaml file.
- The keycloakOwner value is set for the KeycloakRealm CR (Custom Resource) in order to prevent an error when setting the owner reference with the absent keycloakOwner value.
- The ClusterRole/ClusterRoleBinding mapping is fixed for OpenShift deployment.
- The 'commit-validate' stage logic is fixed.
- The 'create-jira-issue-metadata' stage failure is fixed.
- The allure report paths are fixed.
- The local development environment configuration is aligned with the documentation.
- The deprecated variable normalizedName is removed.
With the version 2.7.0, EDP offers a bunch of upgrades for its components, provides new options and enhancements in CI/CD workflow and refines the Admin Console usage. Amongst the recent developments there are improvements for the Helm, Kubernetes, Keycloak, Docker, Terraform, and Jira. Besides, EDP migrated from OpenShift delivery to EKS-core cluster, optimized the resources consumption and honed the work of the libraries and repositories. See the list of upgrades, new functionality and enhancements, as well as the fixed issues, below.
- The Helm tool is upgraded to version 3.5.3. For details, please refer to the Helm 3.5.3 page on GitHub.
- Jenkins is upgraded to version 2.263.4. For details, please refer to the LTS Changelog page.
- Nexus is upgraded to version 3.30.0. For details, please refer to the Nexus Release Notes.
- Gerrit is upgraded to version 3.3.2. For details, please refer to the Gerrit Release Notes.
- Keycloak is upgraded to version 12.0.4. For details, please refer to the Keycloak Release Notes.
- EDP-delivery is upgraded to the master version.
- All go-alpine based images are updated to Alpine version 3.11.8. For details, please refer to the Alpine Linux official page.
- The Kaniko executor is upgraded to version v1.5.1. For details, please refer to the Kaniko Release Notes page on GitHub.
- The edp-admin-console Docker image is upgraded to Alpine 3.11.6. For details, please refer to the Alpine Linux Release Notes.
- The unused code from operators in a Helm chart, responsible for Kubernetes object provisioning, is removed.
- CI Helm chart is improved to provide quick feedback from CI for Helm and Dockerfile.
- EDP Helm charts are updated to follow the chart best practices defined by Helm.
- It is now possible to create deploy-templates according to Helm chart development best practices.
- The ‘buildTools’ parameter for Admin Console is added in the Helm chart.
- The migration from OpenShift delivery to EKS-Core cluster is performed.
- Orphaned Kubernetes resources are removed and aligned with mutated Kubernetes resources.
- The possibility to introduce applications in EDP using the Kubernetes native declarative approach is implemented.
- Resource requirements for EDP components in the Kubernetes cluster are aligned in order to ensure stability and proper scheduling of EDP.
- The Keycloak client is now deleted after the deletion of KeycloakClient custom resources in Kubernetes.
- The Keycloak realm is now deleted after the deletion of KeycloakRealm custom resources in Kubernetes.
- The functionality supporting the Realm installation without integration with external Identity Provider is implemented.
- The ability to manage Realm Roles in Keycloak using custom resources is implemented.
- It is now possible to enable a Service Account for Keycloak Client using a configuration in custom resources.
- It is now possible to specify the protocolMappers in KeycloakClient custom resources.
- The ability to manage Keycloak Groups using separate custom resources is implemented.
- An option to generate and create a secret for Keycloak Client is provided if the client is specified as confidential.
- It is now possible to manage a batch of Keycloak Realm Roles in a single custom resource.
- The possibility to switch off an automatic redirection in a certain realm is provided.
- The possibility to run Terraform plan/apply with EDP stages using AWS Credentials Approach is implemented.
- The documentation on the usage of Terraform in EDP is created. Please refer to the Use Terraform Library in EDP page.
- Dockerfile is removed from the edp-install repository.
- The possibility to add Terraform code via the Admin console using CI stages is implemented. Please refer to the Library Info block on the Add Libraries page.
- The Search, Sort, and Filter functionality is provided in Admin Console. Please refer to the Inspect Application, Inspect Autotests, Inspect Library, and Add CD Pipelines pages.
- The databases block is removed from the Add application page as well as from app templates.
- The text in the 'Advance Mapping' section is updated.
- The capability to run Jenkins job during the deletion of a codebase is developed.
- The init stage in the deployment pipeline is optimized to collect information only from the related codebases.
- The possibility to run AQA tests for sit environment of the EDP deploy pipeline is implemented.
- The ability is developed to prevent the automatic run of jobs for deleting the codebase branch if they have not finished previously.
- The handling is added of the ADDITIONAL_BUILDTOOL_ARGS variable in EDP pipelines for the Maven build tool.
- The codebasePath variable for the EDP4EDP release pipeline is added.
- The links are updated in the edp-library pipelines for the master branch.
- The pipeline init stage is modified to run auto-deploy correctly. Please refer to the Stages Menu block of the Admin Console user guide for the details on selecting the Auto Trigger Type.
- Unnecessary codebases used during deployment are mitigated.
- The possibility to run the Gradle autotests is added. Please refer to the Autotest Info block of the EDP Admin Console Guide.
- The backend validation process for codebases and cd pipelines is improved to not clear the form with already input data.
- The delay time between DeletionJob reconciliation is increased to 10 seconds in case an error occurs.
- The application provisioning process is improved.
- The functionality intended to define which metadata from EDP should be published to Jira in predefined format is implemented. Please refer to the Advanced Settings block of the EDP Admin Console guide for the updates on the Jira integration.
- A new Jira pattern EDP_SEM_VERSION is added for pushing component version value in the MAJOR.MINOR.PATCH format to Jira.
- The mirroring approach is implemented when cloning git metadata from source repositories.
- The section displaying commit author names in the history of repositories is removed.
- An option to use Shared Libraries from private repositories is now available.
- The template is added for the edp-library-pipelines repository.
- The links in every EDP repository on https://github.com/epam were updated.
- The links to the new EDP location (github.com/epam/edp-COMPONENT) are updated.
- The possibility to specify openid-connect in the Client Protocol for corresponding custom resources is implemented.
- The possibility to run multiple EDP instances without privilege escalation is implemented.
- CPU Request/Limits are adjusted to align with the latest resource consumption.
- The AUTH_KEYCLOAK_ENABLED flag is now configurable from Helm charts.
- The possibility to run multiple EDP deployments inside a single Kubernetes cluster is now provided.
- The visibility status in the projects created by Sonar is corrected to be ‘Private” by default.
- Customer resources for Sonar provide the correct dbImage.
- The Sonar operator now uses the correct Sonar token name for plugin configuration.
- Credentials for Shared Libraries are now saved in Jenkins after the installation.
- The saving of credentials for shared libraries in Jenkins is fixed.
- The Add button for editing the CD Pipeline is fixed.
- The issues occurring during the transition to the Delivery Dashboard diagram are fixed.
- The process of creating a Go application is improved.
- Jira integration functionality is now disabled when adding a codebase with the GitlabCI tool.
- The non-relevant provisioner code in the documentation was corrected.
- Missing parameters are added to the 'Add Job Provision' documentation.
- The validation message during the creation of an application/autotest is displayed as expected.
- Layout issues occurring during the process of adding quality gate autotests are corrected.
- Parallel autotests running in the deploy stage are set.
- The parallel execution of autotests is fixed.
- The newly created branch now takes the default branch as a basis of the Branch Version field.
- The default branch is now created when adding a codebase.
- EDP versioning is working as expected upon correcting an issue with the codebasebranch operator.
- The process of creating a branch using the specified hash commit is corrected.
- The Codebase branch behaviour is corrected to allow deletion of the entity even if its name contains only digits.
- The CRD schema for codebasebranch is corrected.
- The process of getting tags from codebase image streams during init deploy is fixed.
- The functionality allowing the user to deploy applications added using Gitlub CI as a CI tool is corrected.
- The Reconciler failure occurring during the JenkinsJob CR processing is fixed.
- The link in '.gitlab-ci.yml' file containing 'CLUSTER_URL' to the old cluster is updated.
- The database migration script is corrected to perform successful migration for all releases, starting from 2.5.x.
- The error ‘pq: invalid input value for enum "edp-delivery".action’ in the stack-trace logs is corrected.
- The Associate IAM Roles With Service Account page is added.
- The Promote Docker Images From ECR to Docker Hub page is added.
- The Use Terraform Library in EDP page is added.
- The Use Lint Stages for Code Review page is added.
- The Add Other Code Language instruction is updated.
- The EDP Component Operator instruction is updated.
- The following pages are updated in the EDP Admin Console user guide:
- Custom Resources Definition codebasebranches are improved.
- The 'buildTools' parameter for Admin Console is added in the Helm chart.
- The apiVersion type of Admin Console deployment is updated.
- The database image path for Sonar Custom Resource is fixed.
- The pipeline/stages version in Jenkins was changed from master to release-2.7.
- EDP Helm charts are updated to follow the chart best practices defined by Helm.
- The Perf-operator is deployed by default in EDP version 2.6.1.
- The resource requirements/limits are defined for EDP components.
- Resource requirements for EDP components in the Kubernetes cluster are aligned in order to ensure stability and proper scheduling of EDP.
- The CRD schema for codebasebranch is corrected.
- EDP versioning functionality was improved to work as expected upon correcting an issue with the codebasebranch operator.
With the version 2.6.0, EDP is now deployed on the AWS Core cluster. It becomes more stable due to the alignments of the resources requirements for EDP operators on the Kubernetes cluster. Besides, this EDP version allows to work with performance metrics and tracking, and applies a set of enhancements to the Admin Console. The release process is improved by upgrading the CD pipeline creation process. The versioning enables to define the default branch on your own, and enhancements of Sonar, Helm Chart, Codebase and common design contribute to the effective work with EDP. See the details and the list of components upgrades, as well as fixed issues, below.
- Gerrit is updated to the 3.2.5.1 version. For details, please refer to the Gerrit Release.
- The Nexus repository manager is now updated to the 3.29.0 version. For details, please refer to the Nexus Release Notes.
- The Sonar-Gerrit plugin is updated for the integration with Java 11.
- The Keycloak proxy is updated to v.10.0.0. For details, please refer to the Keycloak Release Notes.
- Keycloak is updated to the 11.0.2 version.
- The new Keycloak version 11.0.3 is deployed on the AWS EKS core cluster.
- The AWS EKS core cluster of v.1.18 is deployed.
- Jenkins is updated to the 2.263.1 For details, please refer to the LTS Changelog page.
- The Kaniko executor is updated to the 3.0 version. For details, please refer to Kaniko CHANGELOG page on GitHub.
- The Helm tool is updated to the 4.2 version.
- The edp-admin-console Docker image is upgraded from golang:1.10.3-alpine3.8 to alpine:3.11.6.
- Now EDP is integrated with the EPAM PERF Board statistics and monitoring platform allowing to track the overall team performance as well as to set up necessary metrics.
- The connection to EPAM Perf Board is established and the new EDP PERF operator is created. Please refer to the Perf Operator page for details.
- EDP Admin Console enables to select Jenkins, Sonar, and GitLab as a DataSource for Perf integration during the application creation. Please refer to the Advanced Settings block of the Admin Console user guide.
- Application data page provides details on which DataSource is integrated with Perf.
- Now EDP Admin Console allows direct modifying of the existing CD pipeline by adding new extra steps, thus providing the ability to improve the release process. Please refer to the Add CD Pipelines page of the Admin Console user guide.
- A unified approach is applied for the link generation in EDP Admin Console.
- EDP Admin Console can perform with context paths.
- The new link that leads to Perf Board is added on the Admin Console Overview page.
- Following the community`s feedback trends in development, the master branch is not hardcoded anymore and enables to define the default branch on your own. Please refer to the Application Info block of the Admin Console user guide for the details.
- The EDP versioning logic is applied to the non-master default branch.
- It is possible to select the provisioner for the CD pipeline during its creation.
- A new ability to run Gatling performance tests using EDP.
- EDP is now deployed on the AWS EKS core cluster. For the details, please refer to the AWS EKS page.
- The proper Ingress for the Helm chart is generated when using paths.
- Now Sonar has the installed C# plugin.
- Resource requirements for EDP operators on the Kubernetes cluster are aligned, thus making EDP more stable and with proper scheduling.
- The edp-install-wizard-db database is renamed to edp-db and aligned with the functionality provided by this pod.
- The working directory is cleaned up during the beginning of the codebase reconciliation.
- The unnecessary check for EDP versioning type in the codebase operator is removed.
- A new check for the JiraServer CR status allowing the Codebase operator to handle a case when the Jira server is not available.
- The CodebaseImageStream CR in OpenShift is the same as in Kubernetes.
- The improved common design of the buttons in the Application Code Language/Framework block is applied.
- There are broken links on the Admin Console Overview page.
- The Python library is not provisioned in Admin Console.
- The Confirmation window does not provide any data about the multi-module project.
- The Jenkins Slave element should not contain unnecessary values.
- The Jenkins DataSource is available for selection when adding a codebase with the Gitlab CI tool.
- Jenkins Operator creates a lot of rolebindings on the deployed environments.
- Jenkins Operator resets parameters of CD pipeline after the restarting.
- Jenkins does not delete the corresponding job of the CD pipeline after removing a stage.
- OpenShift admin group has the wrong role.
- OpenShift groups are removed after the version update.
- The CD Pipeline overview page does not display deployed version if a codebase is deployed by deployment.
- The Docker image name is missed on the pipeline overview page.
- The Build pipeline for the Python library does not contain stages.
- The wrong tooltip for the Branch filed in the Adding Stage dialog box is displayed.
- The codebase branches with the same name in different codebases are deleted after one of them is removed.
- The codebase overview page is blank when adding an application with the EDP versioning.
- The loading of static resources to the diagram page with enabled basePath functionality is fixed.
- There is a permission issue with access rights during the initialization of the PostgreSQL database.
- EDP install does not add the admin role to the EDP service account if a namespace has been created beforehand.
- The undescriptive tooltips are displayed for the Repository login and Repository password fields.
- The EDP Installation on Kubernetes page is updated.
- The EDP Installation on OpenShift page is updated.
- The EDP Overview page is updated.
- The EDP Pipeline Framework page is added.
- The Keycloak Installation on Kubernetes page is updated.