Continuous Delivery & GitOps release notes
These release notes describe recent changes to Harness Continuous Delivery & GitOps (NextGen SaaS). For release notes for Harness Self-Managed Enterprise Edition, go to Self-Managed Enterprise Edition release notes.
- Progressive deployment: Harness deploys changes to Harness SaaS clusters on a progressive basis. This means that the features described in these release notes may not be immediately available in your cluster. To identify the cluster that hosts your account, go to your Account Overview page in Harness. In the new UI, go to Account Settings, Account Details, General, Account Details, and then Platform Service Versions.
- Security advisories: Harness publishes security advisories for every release. Go to the Harness Trust Center to request access to the security advisories.
Upcoming RBAC enhancements for Harness customers using Policy as Code
Deprecation notices
Google Container Registry Deprecation Notice 📢
Google Container Registry (GCR) is deprecated and scheduled to shut down on March 18, 2025. It is recommended to migrate to Google Artifact Registry (GAR). For migration guidance, refer to Google's official transition documentation.
For more information on GCR, see the Harness GCR Documentation.
April 2025
GitOps Version 1.30, Agent Version 0.91
Fixed Issues
-
When creating a repository that may already exist in the agent namespace, the error message has changed from
repository with same url already exists, it may be created in different scope, or it may exist in project not mapped
to
repository with same url already exists in agent namespace "NAMESPACE", check repository project field and agent project mapping
(CDS-108351, ZD-80613)
-
We’ve addressed a longstanding issue in the GitOps Cluster Terraform resource where the
bearer_token
field would consistently report a diff, even when no changes were made. This update aligns the handling ofbearer_token
with how GitOps repository passwords are managed. The field will now only report a diff if it is explicitly changed in the Terraform configuration. (CDS-106112)noteReal-world changes to the token may not be reflected in the Terraform state due to API masking of this field. This behavior is consistent with the GitOps repository resource.
Version 1.85
New Features and Enhancements
-
Harness now supports capturing multiline output variables from Container steps in CD pipelines, ensuring correct population and visibility in the Output tab. Currently, this feature is behind the feature flag
CI_ENABLE_MULTILINE_OUTPUTS_SECRETS
. Contact Harness Support to enable the feature. (CDS-95235, ZD-44567,72745) -
Harness is introducing the ECS Blue Green Traffic Shift step to support weighted traffic shifting for ECS and Spot deployments, enabling gradual rollout strategies for ECS services with low task counts. Currently, this feature is behind the feature flag
CDS_ECS_TRAFFIC_SHIFT
. Contact Harness Support to enable the feature. (CDS-102609) -
Harness now enforces namespace consistency in Kubernetes and Helm deployments, preventing users from overriding the infrastructure-defined namespace using custom CLI flags like
--namespace
. Currently, this feature is behind the feature flagCDS_ENABLE_VALIDATION_FOR_NAMESPACE_OVERRIDES_TO_MATCH_WITH_INFRA_NAMESPACE
. Contact Harness Support to enable the feature. (CDS-99904, ZD-67987,71082) -
Harness now supports mounting ConfigMaps and Kubernetes Secrets as volumes in CD Container steps, enabling users to inject configuration and credentials without modifying container images. Currently, this feature is behind the feature flag
CDS_CONFIG_MAPS_AND_SECRETS_AS_VOLUME
. Contact Harness Support to enable the feature. (CDS-95429) -
Harness now supports Helm deployments with CRDs by enforcing
helm upgrade --install
behavior, enabling seamless deployment of resources that already exist outside the target namespace. Currently, this feature is behind the feature flagCDS_SKIP_HELM_INSTALL
. Contact Harness Support to enable the feature. (CDS-85790) -
Harness now supports re-running pipelines with the original pipeline definition and inputs, enabling teams to accurately reproduce and debug historical executions. Currently, this feature is behind the feature flag
PIPE_USE_ORIGINAL_YAML_FOR_EXECUTION
. Contact Harness Support to enable the feature. (PIPE-21837) -
Harness now automatically creates webhooks for GitX resources, improving pipeline performance by avoiding manual webhook setup and eliminating execution delays for resources like templates. This behavior is enabled by default for new accounts. If you do not want this feature enabled by default, you can turn on the feature flag
PIPE_DISABLE_AUTO_GITX_WEBHOOK_REGISTRATION
. Contact Harness Support to enable the feature. (PIPE-23197) -
Harness now ensures pipelines run with the latest Git-synced configurations by triggering Git sync before executing associated triggers. This prevents outdated configs from being used and eliminates the need for manual workarounds. Currently, this feature is behind the feature flag
PIE_PROCESS_TRIGGER_SEQUENTIALLY
. Contact Harness Support to enable the feature. (PIPE-21521, ZD-69595,70083)
Fixed Issues
- Previously, template reconciliation did not consistently load updated templates. This issue is resolved with improved validation and a reconciliation loader. (PIPE-26008, ZD-80358)
- Previously, using execution-time inputs in the Build & Push step caused the Input Set creation page to fail. This issue is resolved, and the tags field fully supports runtime inputs. (PIPE-26480, ZD-80504)
- Previously, deployment metrics in the Unified View and Deployment Dashboards were inconsistent; this issue is now resolved, and metrics now accurately reflect deployments across both deploy and custom stages. (CDS-108215)
- Previously, editing a newly created environment override using a Custom Remote Store caused an error. This issue is now resolved, and the UI now handles edits gracefully without breaking. (CDS-107112, ZD-78749)
- Previously, rollbacks were not triggered for user-initiated failures and approval rejections despite the configured rollback strategy. This issue is now resolved, and stage rollback now works as expected in these scenarios and the fix is behind feature flag
PIPE_ADD_ORIGINAL_FAILED_CHILDREN_TO_OUTPUT
. Contact Harness Support to enable the feature. (PIPE-26102, ZD-80129) - Previously, users were unable to create AWS S3 OIDC connectors using the GovCloud region due to invalid identity token errors. This issue is now resolved, and OIDC connectors now support region-specific audience values for GovCloud. (CDS-108206, ZD-80533)
- Previously, pipeline executions failed intermittently due to token generation errors caused by database connection issues during GitHub App authentication. This issue is now resolved, and token generation is stable across retries. (PIPE-26414, ZD-81230)
- Previously, the GitOps Sync step logs displayed the default Harness URL instead of the configured vanity URL. This issue is now resolved, and both the Sync and Fetch Linked Apps steps now respect the account-level vanity URL setting. (CDS-108906)
GitOps Version 1.29, GitOps Agent Version 0.90.0
New Features and Enhancements
- The Update GitOps Agent API now allows updating the agent Type. (CDS-108182)
- The agent type
CONNECTED_ARGO_PROVIDER
is now deprecated, as it was intended as a temporary solution and is no longer in use or supported. It will be removed in a future release. You can update existing agents via the API or Terraform. If you're managing an agent in Terraform, be sure to update its type toMANAGED_ARGO_PROVIDER
. Once the removal takes place, all agents usingCONNECTED_ARGO_PROVIDER
will be automatically migrated toMANAGED_ARGO_PROVIDER
on the backend. This may impact your Terraform state if not updated beforehand. (CDS-108182)
Fixed Issues
- GitOps utilization for licensing (instances being counted), will no longer count orphaned resources, only resources being actively managed. (CDS-108121)
- Resolved an issue that prevented the creation of GitOps repositories using GitOps App enterprise credentials from the UI. The problem was caused by an incorrect parameter in the UI request and missing backend handling for enterprise credentials. This has now been fixed. (CDS-108058, ZD-80415, ZD-81644)
- The Force option in GitOps sync was not working as expected. The
--force
flag was not being applied during the app sync command due to a conflict in protos. This issue has now been resolved. (CDS-107813, ZD-80067) - Added protection against mapping argo project to multiple harness projects that may have happened in rare cases. (CDS-106179)
Version 1.84.4
New Features and Enhancements
-
We've upgraded our protocol buffer implementation from protobuf-java
3.15.5
to4.28.3
. This significant version jump addresses known security vulnerabilities present in the older version while modernizing a critical component of our internal service communication infrastructure. This change operates entirely within Harness' internal architecture and requires no action from users. All functionality remains unchanged, with no modifications to user workflows or interfaces. (CDS-104707) -
Users can now define and manage rewrite rules to control traffic routing in Kubernetes traffic routing configuration. Currently, this feature is behind the feature flag
CDS_K8S_TRAFFIC_ROUTE_REWRITE_RULE_SUPPORT
. Contact Harness Support to enable the feature. (CDS-103501) -
Users can now trigger pipelines in GitLab upon the creation or pushing of tags. Currently, this feature is behind the feature flag
CDS_GITLAB_TRIGGER_TAG_EVENT
. Contact Harness Support to enable the feature. (CDS-99762) -
Users can now utilize an optional checkbox for Kubernetes and Helm deployment types, enabling enhanced customization during deployments. Supported Deployment Types:
- Kubernetes (K8s/Helm Chart): Optional field appears under the values.yaml section.
- Kubernetes/Native Helm (Values YAML): Optional checkbox appears under the File field.
- Native Helm (Helm Chart): Optional field is rendered under the values.yaml section.
Overrides: The file path field can also be marked as Optional.
Currently, this feature is behind the feature flag
CDS_OPTIONAL_VALUES_YAML
. Contact Harness Support to enable the feature. (CDS-85487,CDS-106960,CDS-106961,CDS-106962)
-
Users can now enforce Oauth for commits by enbaling the setting Enforce Oauth For Commits in the Account Setting under Git Experience. (PIPE-25432)
Fixed Issues
- Previously, in the Deploy stage, selecting a runtime input for filtered Environment and Infrastructure would disappear from the UI, requiring YAML edits. Also, when using All Match Type, it incorrectly required all tags to be present on both Environment and Infrastructure. This issue has been resolved, and deprecated characters for tags in runtime input have been removed.(CDS-108322,ZD-78208)
- Previously, during the first Helm deployment, if the deploy step failed, the rollback step would also fail because it attempted to roll back to version 0, which does not exist. This led to an error:
Error: release has no 0 version
. This issue has been resolved. The rollback step now correctly identifies the first deployment scenario and skips rollback when there is no previous release to revert to. (CDS-108229,ZD-80929) - Previously, in the Custom Health Source, switching between queries (e.g., from
Query1
toQuery2
) would incorrectly change the name of the selected query to match the other one. This happened because thecreatedMetrics
prop was being mutated when passed, which caused both queries to display the same name. This issue has been resolved. Now, a copy ofcreatedMetrics
is passed instead of the original, preventing unintended mutation. Query names now remain intact when switching between them. (CDS-108228,ZD-80365) - Previously, editing a Monitored Service from a malformed URL resulted in a blank screen, preventing users from accessing or editing service configurations. This happened because the UI did not correctly handle URLs accessed via the Project Settings path, particularly for the CV module. This issue has been resolved. The Monitored Services page now supports opening via the CV module, in addition to CD, and renders the service correctly. For all other modules, the service remains read-only. (CDS-108160,ZD-80779)
- Previously, GitOps pipeline steps did not support multiple steps of the same kind within a single stage. Steps like GitOps Sync would store their outputs at the stage scope, which caused Duplicate Key Exceptions—resulting in pipeline failures with the error:
Sweeping output with name gitopsSync is already saved.
This issue has been resolved. All GitOps steps (SyncStep
,MergePRStep
,UpdateReleaseRepoStep
,UpdateGitOpsAppStep
, andFetchLinkedAppsStep
) now store outputs at both stage and step scopes. For backward compatibility, stage-scoped output contains data from the first step only. Users should use step-scoped outputs for accurate data when using multiple GitOps steps in a stage. (CDS-108131)
Version 1.83.5
New Features and Enhancements
- Improved log messages in ServiceNow Approval to enhance clarity and debugging. Currently, this feature is behind the feature flag
CDS_SNOW_IMPROVE_CONSOLE_LOGS
. Contact Harness Support to enable the feature.(CDS-97247) - Users can now access Output Variables in the ServiceNow Approval step, including Ticket Type, Ticket Number, Approval Criteria, Rejection Criteria, hasApprovalCriteriaMet, and hasRejectionCriteriaMet. This enhances visibility and debugging.(CDS-103752)
- Users can now manage Deployment Freeze Windows with granularity based on Environment Types, allowing for more fine-tuned control over deployment windows. Currently, this feature is behind the feature flag
CDS_DEPLOYMENT_FREEZE_GRANULAR_RBAC
. Contact Harness Support to enable the feature. (CDS-98570)
Fixed Issues
- Previously, users creating health sources in monitored services using Datadog as the data source encountered an issue where the UI would crash upon selecting a dashboard, especially if the dashboard had an empty widget with no data. This issue has been resolved now. (CDS-108084, ZD-79423)
- Previously, CD Trends data was missing after a certain date when selecting "Last 12 months" on the Licensing Page with specific license types. This issue occurred after a change in license type and has been resolved now. (CDS-108153, ZD-80522)
- Previously, an NPE (Null Pointer Exception) occurred while retrieving the Helm Chart list when using the OCI Helm Connector with Anonymous Authentication. This issue has been resolved now. (CDS-108374)
- Previously, the Harness delegate incorrectly used local container credentials instead of the OIDC access token when listing GCP projects via an OIDC-authenticated connector. This issue has been resolved now, behind the feature flag
CDS_GCP_OIDC_CONNECTOR_CROSS_PROJECT_ACCESS
, ensuring the delegate lists projects correctly based on its IAM principal.Contact Harness Support to enable the fix.(CDS-108481) - Previously, after deploying with Google Cloud Run steps, instance counts were not displayed in the Service Deployments Summary dashboard. This issue has been resolved now, ensuring that instance counts are correctly shown for Google Cloud Run deployments. (CDS-108501)
- Previously, when a GitX pipeline was deleted from the Harness UI but still modified in the SCM (e.g., GitHub), webhook events failed without displaying an error message. The UI and webhook logs did not indicate that the pipeline no longer existed, making it difficult to diagnose the issue. This issue has been resolved now, and an appropriate error message is displayed in the UI and webhook logs when attempting to update a deleted GitX pipeline.(PIPE-25695)
- The Service Dashboard page had slow load times (~60s) due to inefficient queries. This isue is resolved now by optimizing the API calls, removing heavy queries, and relocating certain data to improve performance. The top-right graph is now in the Analytics tab. The fix is behind the feature flag
CDS_SERVICE_DASHBOARD_SIMPLIFICATION
, ensuring the delegate lists projects correctly based on its IAM principal.Contact Harness Support to enable the fix. (CDS-102299, ZD-72575) - Previously, the Pipeline dropdown filter on the Execution View Page retained data from the last viewed project, causing incorrect pipeline listings when switching projects. This issue was due to the filter component not re-rendering. This issue is resolved now. (PIPE-26180, ZD-80662)
- Previously, when selecting specific stages in a Docker trigger, the selection was not saved, and All Stages were shown instead. This issue is resolved now, ensuring that selective stages are correctly saved and applied when configuring triggers. (PIPE-26169, ZD-80796)
March 2025
GitOps Version 1.28
New Features and Enhancements
- Users can now audit the manual changes to applications and manual AppSyncs for GitOps. Currently, this feature is behind the feature flag
GITOPS_AUDIT_TRAIL_ENABLED
. Contact Harness Support to enable the feature. (CDS-106545)
Fixed Issues
- Previously, the GitOps app resources action menu failed to honor label-based RBAC due to a missing resource identifier in the access check. Now, label-based RBAC is enforced correctly. (CDS-107535, ZD-79513)
- Previously, the action buttons (Restart, Promote, Sync) for GitOps app resources were visible to users who lacked the required GitOps app sync permission. This was due to a missing permission check in the UI. While the actions failed as expected when executed, the buttons were still accessible, causing confusion. Now, the UI correctly enforces the permission check, and the action buttons are disabled for users without the GitOps app sync permission. (CDS-105624, ZD-75858, ZD-79513)
- Resolved an issue where the
bearer_token
field in the GitOps cluster resource always reported a diff. It now behaves like GitOps repository passwords and will only report a diff when explicitly changed in the resource file. (CDS-106112)noteReal-world changes to the token may not be reflected in the Terraform state, as the API returns a masked value for this field.
GitOps Agent Version 0.89.0
- Introduced leader election logic to reduce load and mitigate performance issues in HA agents where all pods were previously sending updates. With this change, only the elected leader pod performs reconciliation updates, while all agent pods continue to process tasks. This requires permission to create a lease resource for leader election. New agents have these permissions by default, while older agents without them will fall back to the previous behavior where all pods send updates. (CDS-99072)
Version 1.82.3
New Features and Enhancements
-
Users can now select the Project that includes the workspace you want to run inside Terraform Cloud Run Step. Currently, this feature is behind the feature flag
CDS_TF_PROJECTS_SUPPORT
. Contact Harness Support to enable the feature. (CDS-98549, ZD-63376) -
Users can now fetch Service Manifest source i.e Connector URL where manifest is stored using an expressions
<+manifests.MANIFEST_ID.store.connectorUrl>
. Currently, this feature is behind the feature flagCDS_MANIFEST_CONNECTOR_URL
. Contact Harness Support to enable the feature. (CDS-107797) -
Users can now configure Custom
maxConcurrency
in multideployment stage in Harness. Currently, this feature is behind the feature flagCDS_CUSTOM_MAX_CONCURRENCY
. Contact Harness Support to enable the feature. (CDS-72941, ZD-44794) -
Users can now leverage cross-project access with the GCP OIDC connector in both Kubernetes and native Helm environments. Currently, this feature is behind the feature flag
CDS_GCP_OIDC_CONNECTOR_CROSS_PROJECT_ACCESS
. Contact Harness Support to enable the feature. (CDS-104508, ZD-77202) -
Users can now select the Service entity for both On Run and On Save event while creating policy set. Currently, this feature is behind the feature flag
CDS_ENABLE_SERVICE_ON_RUN_OPA_EVAL
. Contact Harness Support to enable the feature. (PIPE-25407) -
Users can now easily review the headers set by Webhook triggers directly in the UI. (PIPE-24648, ZD-77202)
-
Harness now supports the latest Google Cloud APIs, ensuring your deployments stay up-to-date with GCP changes. (CDS-102860, ZD-72653)
-
Users can now add a native K8s diff step in CD pipelines, allowing them to preview changes before deployment. Currently, this feature is behind the feature flag
CDS_K8S_DIFF_STEP_SUPPORT
. Contact Harness Support to enable the feature. (CDS-91752)
Fixed Issues
- Previously, the version data shown in the service summary page for each environment did not match the actual version deployed to the cluster. This was caused by incorrect update logic for the deployment info list used during instance synchronization in native Helm deployments. As a result, stale versions were being picked up and displayed in the UI. This issue is now resolved. The deployment version displayed in the service summary page correctly reflects the actual version deployed to the cluster. (CDS-101458, ZD-78480)
Version 1.81.3
New Features and Enhancements
-
Users can now enable the
--ignore-not-found
andDry Run flags
in the Kubernetes Delete step, preventing errors for missing resources and allowing previews before execution. (CDS-68858, ZD-44130) -
Users can now enable anonymous authentication for OCI-based Helm repositories, allowing seamless access to public Helm charts without requiring credentials. (CDS-91557)
-
Users can now edit Git details for remote entities in the Terraform provider, aligning with existing support for templates and pipelines. (CDS-98693, ZD-71489)
-
Users will now receive a single approval email even if they belong to multiple user groups assigned to the same approval step. (CDS-100479)
-
Users can now enforce the Git experience for environments, infrastructure, and overrides V2, ensuring consistency across all components, similar to pipelines, inputs, and templates. Currently, this feature is behind the feature flag
CDS_ENFORCE_GIT_EXPERIENCE
. Contact Harness Support to enable the feature. (CDS-103096) -
Users can now view Rancher cluster display names instead of cluster project IDs in the Rancher connector, making it easier to identify and manage clusters using familiar names. (CDS-105394)
-
Users can now fetch artifacts directly via the Harness Platform when the connector is set to connect through it, eliminating unnecessary delegate tasks. (CDS-99989, ZD-68403)
-
Users now has the ability to Select Connectivity mode to Connect through Harness Platform or Connect through Harness Delegate while creating Pipeline Notification. (PIPE-25243)
Fixed Issues
- Previously, users with Project Admin access were unable to clone an environment, encountering the error:
core_environment_view undefined in project Harness
. This issue is resolved now. (CDS-107604, ZD-77786) - Previously, the instance count incorrectly displayed instances from different services when the release name was null, causing deployments from other services in the same namespace to be listed. This issue is resolved now. (CDS-107537, ZD-78575)
- Previously, editing global environment overrides caused the UI to crash, displaying an error screen instead of handling the issue gracefully. This issue is resolved now. (CDS-107112, ZD-78749)
- Previously, when adding a deploy stage with propagate service from a previous stage, the Deploy services in parallel setting always defaulted to true, even if it was disabled in the original stage. This issue is resolved now. (CDS-107116)
- Previously, step group variables in step group templates were unusable because their paths depended on the step group ID, which was determined by the pipeline editor, making them unpredictable for template maintainers. Additionally, variables did not fully resolve in the UI, preventing users from copying them. This issue is resolved now. (PIPE-25446)
- Previously, in Pipeline Studio, reconciling a pipeline after updating referenced entities caused an infinite loop, where saving changes would repeatedly trigger the reconcile prompt, undoing modifications without any error messages. This issue is resolved now. (CDS-106977, ZD-77991)
GitOps Version 1.27, GitOps Agent Version 0.88
New Features and Enhancements
- GitOps applications now support the
valuesObject
field. However, Harness recommends using thevalues
field since ArgoCD has some issues withvalueObject
when using AppSets. (CDS-106998)
Updating an application that contains a valuesObject
while using an agent older than version 0.88 may result in the complete removal of the valuesObject
. To prevent data loss, please upgrade the agent before proceeding. Additionally, attempting to access an application with a valuesObject
will cause the task to fail and return a raw version of the valuesObject
, which can not be modified in the UI.
Fixed Issues
- Previously, when there was an extreme load on the agent, a Get Application API call could take approximately 30 seconds to complete. This was fixed in two ways:
- A new parameter,
fetchFromHarness
, was introduced in the Get Application API. This setting, when set totrue
, will fetch an application directly from Harness. This is currently fallback if the task times out on the GitOps Agent. Use this with caution as it may not return the latest state of the application. - The GitOps Agent Helm Chart has new values to configure the number of task processors:
numFetchers
,numResponders
, andnumProcessors
. These control the number of task processing routines on the agent and are helpful if there is a high concurrent load on a specific agent. - (CDS-106863, ZD-78359)
- A new parameter,
Version 1.80.7
New Features and Enhancements
-
Users can dynamically execute Pipelines in Hanress, it allows you to execute pipelines by providing pipeline YAML configuration during runtime without requiring pre-saved configurations in Harness. Currently, this setting is behind the Feature Flag
PIPE_DYNAMIC_PIPELINES_EXECUTION
. Contact Harness Support to enable this Feature Flag. For more information, refer to Harness Documentation. (PIPE-11798) -
We have introduced a field
storeType
in YAML inside template that will help distinguish whether a template stored is Inline or Remote. Currently this feature is behind Feature FlagPIE_USE_OPTIMISED_TEMPLATE_RESOLUTION
. Contact Harness Support to enable this Feature Flag. (PIPE-16979) -
Users can now import OPA policies from Git. This feature behind the FF
OPA_IMPORT_FROM_GIT
. Please contact Harness Support to enable this feature. (PIPE-17046, ZD-52607, ZD-69875) -
Users can now Uninstall Helm charts using a native Helm Uninstall step in the Deploy stage. Currently, this setting is behind the Feature Flag
CDS_HELM_DELETE_STEP
. Contact Harness Support to enable this Feature Flag. (CDS-98454) -
Users can now trigger Harness pipelines natively when pushing a tag to GitHub, enabling seamless automation and enhanced integration for tag-based workflows. (CDS-70773)
-
Users can now rely on Harness to accurately detect failures in ECS Rolling Deployments. Currently, this setting is behind the Feature Flag
CDS_ECS_MONITOR_TASK_STATUS
. Contact Harness Support to enable this Feature Flag. (CDS-107046) -
Inline entities in Harness will be saved in Harness Code Repository by default. Currently this feature is behind a Feature Flag
PIPE_USE_HARNESS_CODE_FOR_INLINE_ENTITIES
. Contact Harness Support to enable this Feature Flag. (PIPE-18731) -
Users can now fetch the original execution ID during rollback, ensuring accurate execution context reference. (PIPE-24537, ZD-73306)
-
Users can now deploy Azure Web Apps with enhanced support for non-standard configurations and Azure CLI-based workflows, enabling greater flexibility and customization in deployments. This feature is available with Delegate version
85302
or later and is behind the feature flagCDS_AZURE_CLI_WEBAPP_DEPLOYMENT
. Contact Harness Support to enable the feature. (CDS-105696) -
Users can now include clickable HTTP URLs within Approval step messages in Harness pipelines. This enhancement improves usability by allowing approvers to directly access links from the approval step without needing to copy and paste URLs. (CDS-88977)
-
Harness now supports AWS deployments in the Mexico region. (CDS-107704)
Behavior changes
-
Users can now create, update, and delete tags in AWS Lambda and AWS ECS deployments, ensuring that all specified tags in the YAML manifest are correctly propagated during the deployment process and accurately reflected in the AWS Console. (CDS-107032)
-
Users can now leverage the Plugin Info section in Service for Serverless Deployments to define runtime environment details and dependencies. To automatically use the latest images, leave Container Configuration at the step level empty and configure Plugin Info at the service level. (CDS-99161)
Fixed Issues
- Previously, when users created a step group template and added a nested step group with containerization enabled, the CI steps were not available for selection. This issue is resolved. (PIPE-25227, ZD-78297)
- Previously, users who set Skip already deployed as a Runtime Input in a template were unable to configure it from the UI and had to manually edit the Pipeline YAML to set it as a Runtime Input. This issue is resolved. Users can now set Skip Instances directly from the UI when using a template. (CDS-107087, ZD-78344)
- Previously, on Windows, the File Upload step allowed users to upload any file type, whereas on MacOS, unsupported file extensions were blocked from being uploaded. This issue is resolved. The system now enforces file type restrictions consistently across both Windows and MacOS. (PIPE-25323, ZD-78151)
- Previously, in ECS Blue/Green Deployments, the Target Group and Listener Rule "stickiness" setting was lost after the Swap Routes step, resetting it to off even when initially enabled via Terraform. This issue is resolved. (CDS-99881, ZD-67426)
- Previously, the GitHub App Connector allowed a successful connection even when the specified repository did not exist in GitHub. In contrast, the GitHub Connector correctly validated the repository's existence. This issue is resolved. (PIPE-24905, ZD-76882)
- Previously, when using Artifact Bundle for a NodeJS app, file permissions inside the
tar.gz
archive were not retained when deployed to PCF (Pivotal Cloud Foundry). This led to permission issues when trying to start the application. This issue is resolved. This change is behind the Feature FlagCDS_TAS_ARTIFACT_BUNDLE_PRESERVE_PERMISSION_ON_EXTRACTION
. Contact Harness Support to enable the feature (CDS-106309, ZD-77258) - Previously, Splunk verification in Continuous Verification (CV) failed with a
ClassCastException error
. This issue is resolved. (CDS-106422, ZD-77698) - Previously, Instance Refresh in ASG deployments would stall while waiting for the ASG to reach a steady state, preventing recovery if the ASG was already unstable. This issue is resolved. (CDS-106506)
- Previously, overrides failed to be created after a Git file deletion, despite a successful webhook event or manual creation from the UI. This issue is resolved. (CDS-107079, ZD-78709)
- Previously, the Terraform Plan step failed with an IO error while fetching secrets from GCP Secret Manager, despite a successful connection test. This issue is resolved. (CDS-107114, ZD-78697)
- Previously, deployments failed in the Fetch File step due to an incorrect file path, where the system attempted to fetch a file with duplicate YAML extensions. This issue is resolved. (CDS-107122, ZD-78816, ZD-79026)
- Previously, fetching Execution History with 100 results per page caused an error, while 50 results per page worked correctly. This issue is resolved. (PIPE-25471, ZD-78142)
- Previously, in deployment pipelines, duplicate override identifiers appeared in the Rollout section (Fetch Files step) even after removing and re-adding the override configuration with a new identifier. This issue is resolved. (CDS-107453, ZD-79252)
- Previously, in GitOps parallel deployments, if multiple services were deployed with Parallel set to true, one service would complete successfully while the other would exit prematurely without waiting for the configured timeout (10m) or the GitOps sync max duration. This issue is resolved. (CDS-107462, ZD-79284)
- Previously, Serverless Deployments failed in the Prepare Rollback step with the error:
Invalid request: IllegalArgumentException: BucketName cannot be empty.
This issue is resolved. (CDS-107585, ZD-79524, ZD-79626) - Previously, runtime input validation was not working for ECR artifacts, preventing users from filtering artifact tags using regex patterns. This issue is resolved. (CDS-106566, ZD-77818)
- Previously, when the deployment template version was updated in Git, the corresponding service did not appear in the runtime inputs dropdown for selection. This issue is resolved. (CDS-106274, ZD-77132)
- Previously, users encountered an access permissions issue when selecting Org-level environments during pipeline runtime, despite having the correct view permissions. This issue is resolved. (CDS-106527, ZD-74454)
- Previously, when using the Deploy to multiple Environments or Infrastructure option with a filtered list, unwanted characters appeared in the compiled YAML for the stage when matchType was set to all. This issue prevented the pipeline from executing successfully. This issue is resolved. (CDS-106884, ZD-78208)
- Previously, selecting primaryManifestRef caused
serviceDefinition.spec.manifest.identifier
to be null, even when the configuration was correct. This resulted in errors when fetching manifest versions. This issue is resolved. (CDS-106704, ZD-77493) - Previously, after moving an existing service to Git (Bitbucket), pipelines using that service failed to execute. The issue occurred because the pipeline defaulted to the MASTER branch, even when the service was stored in a different branch. This issue is resolved. (CDS-105180, ZD-74852)
February 2025
GitOps Version 1.26.1, GitOps Agent Version 0.87.0
New Features and Enhancements
- Harness GitOps now supports the Harness GitOps Agent in the OpenShift Certified Vendor Catalog, enabling integration with OpenShift OperatorHub and Red Hat Marketplace. Currently, this feature is behind the feature flag
CDS_GITOPS_OPERATOR
. Contact Harness Support to enable the feature. For more information, refer to Harness Documentation. (CDS-97876)
Fixed Issues
- Previously, the Harness GitOps Terraform Provider did not properly handle cluster shard definitions, causing unexpected behavior when managing GitOps Clusters. This issue is resolved. Users should update to the latest harness-terraform-provider to ensure proper functionality. (CDS-106122, ZD-76843)
- Previously, the GitOps App Diff tab returned a 500 error when retrieving differences for certain applications, particularly those using inline
values.yaml
. This issue is resolved. (CDS-106028, ZD-76378)
Version 1.78.8
Fixed Issues
- Previously, the system fetched the service YAML from the Master branch during Helm Chart Deployment, preventing the selection of the Primary Manifest due to a branch mismatch. This issue is resolved. (CDS-106242, ZD-77092)
- Previously, users experienced an issue where selecting Org-level environments during pipeline runtime resulted in an access error despite having the correct permissions. This issue is resolved. (CDS-106527, ZD-74454)
- Previously, pipeline executions were not appearing in the Execution History tab after moving a pipeline to Git. The issue is resolved. Note: When switching from Pipeline Studio to Execution History, the system automatically applies a branch filter based on the selected branch in Pipeline Studio. To view executions performed before moving the pipeline to Git, users need to remove the branch filter. (PIPE-25154, ZD-78153)
- Previously, the Approval Step input variables dialog box in the Harness UI displayed unnecessary line wrapping, causing UI distortion. The issue is resolved. (CDS-106804, ZD-78238)
- Previously, the Primary Manifest API did not support passing Git details for remote services. The issue is resolved by updating the API to support remote services. (CDS-106625, ZD-77092)
- Previously, in Pipeline Studio UI, selecting a Deploy stage followed by an Approval stage caused an unnecessary environment section to be added to the Approval stage YAML. This modification occurred even without making actual edits. The issue is resolved. (PIPE-24398)
- Previously, in Containerized Step Groups, adding a third parallel step resulted in an incorrect step palette being displayed, not respecting the containerized setting of the step group. The issue is resolved. (PIPE-24399)
GitOps Version 1.25.3, GitOps Agent Version 0.86.2
New Features and Enhancements
- Added two new options to the sync application page: Server Side Apply and Respect Ignore Differences.
- Select Server Side Apply to use the
--server-side
flag when syncing resources. This can be used for very large resources, or when patching existing resources on the cluster. Note that thereplace
flag takes precedence over this one. - Select Respect Ignore Differences in order to skip syncing of the resources listed in the Ignore Differences section. Normally, the Ignore Differences section in the manifest is only to check whether a sync is required; when we sync, the entire set of resources are still synced. Note that this option has no effect when creating a new application, only when syncing existing ones.
- Select Server Side Apply to use the
- The packaged Argo version has been upgraded from 2.13.2 to 2.13.5.
Fixed Issues
- Previously, the Argo 2.13.2 binary upgrade made the project ID a mandatory field for using the repo APIs, causing agent creation to fail when the
skipCertificateValidation
flag was used. This issue is now fixed. (CDS-106137) - Previously, when an application was created with a cross project repository, the repo identifier was assigned from the wrong Harness project, causing an error. This is fixed now. (CDS-104760)
Version 1.77.5
New features and enhancements
- Users can now retry failed deployments on a subset of hosts when using traditional infrastructure (SSH/WinRM/PDC) in a single CD stage. Currently, this feature is behind the feature flag
CDS_SKIP_INSTANCES_V2
. Contact Harness Support to enable the feature. (CDS-99674)
Fixed Issues
- Previously, policy evaluation was timing out while evaluating OPA rules, preventing pipeline execution from proceeding. The issue is resolved. (PIPE-25055, ZD-77756)
- Previously, when viewing logs for a Harness GitOps resource, the log window would continuously refresh, creating a looping effect that disrupted usability. The issue is resolved by reopening the event source each time for init containers. (CDS-105810, ZD-76246)
- Previously, when accessing a pipeline stored in GitHub, users would encounter an "entity not found" error upon clicking the pipeline name. However, refreshing the page would load the pipeline correctly. The issue is resolved. (PIPE-25012, ZD-76525)
- Previously, selecting a Deploy stage followed by an Approval stage in a pipeline template incorrectly added an environment section to the Approval stage YAML, causing unnecessary reconciliation and user prompts. The issue is resolved. (PIPE-24398)
Version 1.76.6
New features and enhancements
-
Slack Step Enhancements: Users can now send event notifications directly to Slack channels. Supported formats include plain text and JSON Blocks. (CDS-105984)
-
Users can utilize the ASG Steady State step in a Harness pipeline to track the progress of launching and terminating instances in AWS during an ASG rolling deployment. Currently, this feature is behind the feature flag
CDS_ASG_SKIP_INSTANCE_TERMINATION
. Contact Harness Support to enable the feature. (CDS-101393) -
You can view YAML difference when updates are made to policy and policy set within Audit Trail. (PIPE-20618)
Fixed Issues
- Previously, users could not run the pipeline after moving the service to a Git branch. This issue is resolved. (**CDS-105180, ZD-74852)
- Previously, the ECS Blue-Green deployment pipeline validation failed for users with dynamically generated load balancer configurations. This issue is resolved and is behind the feature flag
CDS_ECS_BG_VALIDATION_WITH_SAME_TARGET_GROUPS
. Contact Harness Support to enable the feature. (CDS-105573, ZD-72261) - Previously, regex filtering did not apply for the Artifactory artifact type in Service configuration, causing all tags to be displayed. This issue is resolved. (CDS-105959, ZD-76412)
- Previously, broken templates pushed via webhooks with missing required types could not be fixed and had to be deleted. This issue is resolved by adding a check to ensure the template type is not empty. (PIPE-24533)
January 2025
Version 1.74.8
Fixed Issues
- Previously, the AWS load balancer dropdown was not populated when using a blue-green deployment step during multi env deployment. This issue is fixed, and the dropdown now populates correctly. (CDS-106002, ZD-73560)
- Previously users were not able to re-run pipeline that had gitops deploy stage. The issue is fixed now. (CDS-105968, ZD-76321)
- Previously, the timeout for refresh GitOps app call was timing out sporadically for some customers, and there was no way to adjust the timeout. The refresh API can take a long time in some cases. We have made the timeout configurable. SMP customers can set
GITOPS_RESOURCE_CLIENT_CONNECT_TIMEOUT_SECONDS
andGITOPS_RESOURCE_CLIENT_READ_TIMEOUT_SECONDS
in ng manager's override to set the timeout. (CDS-105967, ZD-76481) - Previously, pipelines using docker delegates were failing due to too many open connection errors. The issue is fixed now. (PIPE-24724, ZD-73732)
- Before executing any step, the system evaluates whether the step needs to run based on its
when
conditions. If nowhen
conditions are specified, the system automatically evaluates<+stage.CurrentStatus>
. This behavior led to unintended step skipping due to a race condition when failure strategies were triggered with a slight delay. The issue is fixed now. This fix is behind the feature flagFF_PIE_SET_ADVISORS_PROCESSED
. Please contact Harness Support to enable the feature.(PIPE-24525, ZD-76102,76909,76959) - Previously, when selecting the lowest scope webhook to process file changes in the autocreation flow, the system did not validate whether the chosen webhook's scope matched the project associated with the new autocreation entity. As a result a project-level webhook from a different project could be mistakenly selected leading to scope mismatches in downstream processes, causing failures in entity creation. The issue is fixed now. (PIPE-24303, ZD-76145)
- Previously, when navigating to the execution history of a remote pipeline from Pipeline Studio, the default behavior is to display the execution history of the pipeline corresponding to the branch selected in the Pipeline Studio. However, the filter for this was not visible due to a mismatch in the filter names. The issue is fixed now. (PIPE-24603, ZD-76312)
- Previously, input field was not getting displayed for Service Override when configured with multiple manifests. The issue is fixed now. (CDS-105935, ZD-76332)
- Improved the console output for the GitOps Sync step. (CDS-101630)
GitOps Version 1.24.0, GitOps Agent Version 0.85.0
Fixed Issues
- After the Argo update, the default image tag was outdated. This has been fixed. (CDS-105945, ZD-75761)
- Previously, Organisation scoped clusters attached to applications could be deleted. Now, this is disallowed; you cannot delete a cluster attached to applications. If you want to get around this requirement in order recreate the cluster or update it, use the
forceDelete
option. (CDS-105804, ZD-76147) - Previously, buttons for actions (restart, promote, sync) were visible to users who lacked the
GitOps app sync
permission which is required for those actions. This resulted in failures due to the actions being run by users without permission. Now, the buttons are disabled in the UI for users without the proper permissions. (CDS-105624, ZD-75858) - Previously, repository creation was failing when using repository credentials template that contained uppercase letters. Due to a normalization error, there was a credential url mismatch. This issue has been resolved. Repository creation now works with repo credential templates with uppercase letters. (CDS-105622, ZD-75760)
- Previously, the metrics server in the GitOps agent did not initialize correctly when the metrics service is enabled. The issue has been resolved. Now, the correct value for
GITOPS_AGENT_METRICS_PORT
will be set when metrics are enabled. Users should update gitops-helm chart to1.1.16
(or1.3.5
forgitops-helm-byoa
) to ensure that the metrics server works correctly. (CDS-105241)
Version 1.73.6
New features and enhancements
-
Users can now enforce OPA policy on Service, Environment, Infrastructure Definitions and Overrides. Currently, this feature is behind the feature flag
CDS_OPA_CD_ENTITIES_GOVERNANCE
. Contact Harness Support to enable the feature. (CDS-101677, ZD-57706) -
Users can now add input variables in the Email step. (CDS-101651, ZD-66735,67864)
-
Users can now fetch attributes from JSON files marked as secrets and have them masked in the pipeline execution page outputs and execution logs by setting the output variable type to
secret
. (CDS-103225, ZD-103225)
Breaking Changes
- Admin users can now hide unsubscribed modules from the sidebar, ensuring only subscribed modules are visible to team members. This helps streamline the user experience and prevents access to steps or features from unsubscribed modules. Visit Account Settings to manage module visibility for your Org. Currently, this feature is behind the feature flag
CDS_NAV_MODULE_VISIBILITY
. Contact Harness Support to enable the feature. (PIPE-20641, ZD-53621,66260)
Fixed Issues
- Previously, When the
CDS_SPECIFY_INFRASTRUCTURES
feature flag was enabled, customers using environment groups faced an issue where infrastructure options were scoped incorrectly to the project level instead of the account level. This prevented users from selecting the correct infrastructures for deployment. The issue is fixed now. (CDS-105822,ZD-76254) - Previously, DeployToAll option for cluster was showing empty string instead of true which is a default value. The issue is fixed now. (CDS-103296)
- Previously, deployment was timing out and was failing without any logs getting showed. The issue is fixed now. (PIPE-24324, ZD-74851,75772,75937)
- Previously, CV phase failed intermittently due to an issue with handling incomplete responses from external API calls (e.g., New Relic). This issue was particularly observed when certain metric values (e.g., average values) were missing in the response from New Relic APIs, causing the entire verification phase to fail. The issue is fixed now. (CDS-105226, ZD-74901,74902,75694)
- Previously, the artifact download step in pipelines was failing during the initialization stage due to improper sanitization of environment variables containing special characters like backslashes (
\
) and dollar signs ($
). This caused XML parsing errors in the pywinrm library used for command execution over WinRM. The issue is fixed now. This fix is behind feature flagCDS_ESCAPE_ENV_VARS_FOR_WINRM_KERBEROS_NG
. Please contact Harness Support to enable the feature. This feature flag disables ANSI C quoting for environment variables.(CDS-105139, ZD-74886) - Previously, the Helm Blue-Green deployment process encountered a failure during the second release due to incorrect resource formatting. The first deployment worked as expected, creating the service with the correct annotations and labels. The second deployment failed during the Swap stage with the error:
Found conflicting service in the cluster. Blue/Green strategy doesn't support migration of existing non blue/green release. Either helm manifest doesn't have service or service is not in blue/green format. Please check the manifest in the release and cluster.
Instead of deploying resources in<resource>-green
format, the second deployment reverted to<resource>
format, causing the Swap stage to fail due to missing annotations and labels. The issue is fixed now. This fix is behind FFCDS_BLUE_GREEN_RESOURCE_FORMAT_FIX
. Please contact Harness Support to enable the feature. (CDS-105807, ZD-75909)
Version 1.72.3
Fixed Issues
- Previously, webhook trigger events using the CRON trigger experienced delays, and the trigger activity page did not correctly report the last execution. This issue is now resolved. (PIPE-24256, ZD-75384, ZD-75391)
- Previously, an Approval stage that timed out did not fail the pipeline as expected, even when the next stage was set to execute conditionally based on the pipeline's success. This resulted in subsequent stages running and deployments being executed, which was not intended. The issue is resolved, ensuring that if an approval stage times out and no failure strategy is applied, the pipeline will fail by default. (PIPE-24150, ZD-75080)
- Previously, in Helm Blue/Green deployment strategies, delegate selection failed with the error:
no eligible delegates available in the account to execute the task
even when appropriate delegate selectors were defined. The issue is fixed. When the feature flagCDS_ASYNC_EXECUTABLE_USE_SELECTORS
is enabled, the delegate selector priorities are correctly handled in Helm Blue/Green and Canary Deployment steps. (CDS-105570, ZD-75740) - Previously, when there was no time series data during a fetch sample data call in the Datadog health source, the existing DSL attempted to access the first element of the timeSeriesValues array. This resulted in an exception:
Invalid array index access. Array size is 0 and index is 0
The issue is fixed. The data collection logic now appropriately handles scenarios where no time series data is available. (CDS-105330, ZD-73506) - Previously, when propagating a service from one stage to another in a pipeline, execution-time input expressions (For example,
chartVersion: <+input>.executionInput()
) were not resolved correctly. This issue is now resolved. (CDS-105282, ZD-74642) - Previously, the Continuous Verification (CV) phase experienced intermittent failures with the error: Verification could not complete due to an unknown error when running pipelines with CV phases across multiple executions. This issue is now resolved. (CDS-105146, ZD-74901, ZD-74902, ZD-75694)
- Previously, during a rollback of Google Cloud Run Service, the traffic was routed to the previous version instead of deploying the previous version as a new revision. This issue is now resolved. The rollback process now correctly creates a temporary revision to manage traffic shifting. (CDS-103029, ZD-71937)
GitOps Version 1.23.0, GitOps Agent Version 0.84.0
New features and enhancements
-
The GitOps Agent Argo version has been upgraded from 2.10 to 2.13. (CDS-104976)
-
With GitOps agent version 0.83.x if the agent is at project scope in Harness it will reconcile argo clusters and repos that don't have the "project" field as well ("project" refers to the argoproject). (CDS-105211)
-
The version of SOPS used by Argo has been upgraded from 3.9.0 to 3.9.2. (CDS-105323)
-
Filtering has been greatly improved for GitOps Applications. Here is what you can expect:
- You can now create and save your own custom filters for repeated use.
- Navigate a new filters UI/UX to create and manage your filters easily.
- Added a search box to filter parameter dropdowns. (CDS-101484)
Fixed issues
- Previously a
duplicate argo project mapping found
error was being thrown incorrectly when using the API endpoint/api/v1/appprojectsmapping
. This is now fixed. (CDS-105291) - Improved logging for the service and agent to include versions. (CDS-97354)
- Improved agent deployment via terraform. This includes fixing a health check, fetching an agent token, and adding a hash value in manifests to enforce reloading. (CDS-102304)
Version 1.71.2
New Features and enhancements
-
You can bypass artifact consumption checks for a service in a Deploy stage by checking the Disable artifact in this stage checkbox. This feature applies to primary and sidecar artifacts. For more information, go to Harness Skip Artifact Consumption for the Stage. This feature is behind the feature flag
CDS_ARTIFACT_DISABLE_VALIDATION
. Contact Harness support to enable it. (CDS-96644, ZD-68382) -
You can now add environments created at the Project and Organization levels to the environment groups. For more information, go to Harness Cross Scope Environment Groups. Currently, the Cross Scope Environment Groups feature is behind the feature flag
CDS_CROSS_SCOPED_ENV_GROUPS
. Contact Harness support to enable it. (CDS-93146) -
You can now reference secret in expression for input variables in TAS command step. For more information, go to Harness Tanzu Command step. (CDS-100322, ZD-69107, ZD-69226)
-
The Post-Prod Rollback API has been enhanced to simplify the rollback process by reducing the number of required parameters. The new version of the API allows you to trigger a rollback using just Environment Id, Infrastructure Id, Service Id, and Artifact, making it easier for users to invoke the rollback without dealing with complex identifiers like
instanceKey
andinfraMappingId
. (CDS-97775) -
Harness now provides detailed log information for pods and container during the Wait For Steady State step in Kubernetes deployments, helping you troubleshoot deployment issues by providing real-time insights into pod statuses. For more information, go to Harness Detailed diagnostics for K8s Deployment. Currently, this feature is behind the feature flag
CDS_K8S_DETAILED_LOGS
. Contact Harness Support to enable the feature. (CDS-99009) -
shouldSendTriggerPayload
flag is added in theeventHistory
API to allow users to exclude the payload from the response, improving performance and preventing issues with large payloads. (PIPE-24223, ZD-75049)
Fixed Issues
- Previously, pipelines could start execution without valid stages, resulting in unexpected behavior and execution graph failures. This issue is fixed, and execution is now blocked if no valid stage is present in the pipeline. (PIPE-24086, ZD-74528)
- Previously, the console log search would not function correctly after switching steps in a pipeline execution. The issue is fixed, and the search functionality now continues seamlessly across steps, ensuring a smooth user experience. (PIPE-23990, ZD-74681)
- Previously, changes in GitHub, such as subsequent commits to newly created branches, were not propagating into Harness. This issue is fixed, and changes now propagate correctly. (PIPE-23576, ZD-73720, ZD-74770)
- Previously, user pipeline execution would stall. This issue is fixed. (PIPE-22375, ZD-71138)
- Previously, the tooltip in the UI did not display that CD consumes 1 Service License for every 2000 pipeline executions of custom stages. The issue is fixed, and the tooltip now displays the correct information. (CDS-105411, ZD-75543)
- Previously, Nexus3 triggers only fetched 50 tags. This issue is fixed, and now all tags will be fetched. (CDS-105392, ZD-75467)
- Previously, fetching clusters on a change of GCP Connector in infrastructure failed. This issue is fixed, and clusters now fetch correctly. (CDS-105365, ZD-74674)
- Previously, the pipeline stage name resolution issue caused artifact identifier expressions to fail, resulting in intermittent pipeline failures with the error: "Invalid request: No artifact source exists with the identifier null inside service." This issue is fixed. (CDS-105306, ZD-75216)
- Previously, secrets were exposed in logs during the execution of TAS Rolling Deploy Step in case of step failure. This issue is fixed, and secrets are no longer exposed. (CDS-105184, ZD-75003)
- Previously, the AWS load balancer dropdown was not populated when using a blue-green deployment step in a template. This issue is fixed, and the dropdown now populates correctly. (CDS-105168, ZD-73560)
- Previously, the Fetch Helm Chart Metadata process for Helm charts failed during parallel stage deployments with the error: Unable to fetch files for filePath
[charts/spark-support/Chart.yaml]
for Branch: stable. This issue is fixed, and proper delegate selection during the manifest step is ensured. (CDS-105137, ZD-74836) - Previously, users were unable to perform rollbacks in certain cases due to the swapping of OrgID and ProjectID in the API call. This issue is fixed, and rollbacks now work as expected. (CDS-105087, ZD-74833)
- Previously, users encountered a "signal is aborted without a reason" notification while selecting a service in the deployment pipeline due to overlapping API calls made in quick succession. This issue is fixed, and the error no longer occurs. (CDS-105011, ZD-74651)
- Previously, additional strings were incorrectly appended to the values file path during runtime when entered as allowed values, causing parsing errors and deployment failures. This issue is fixed, and values are now parsed correctly. (CDS-104787, ZD-74331)
- Previously, connector references for Bitbucket were still appearing in the "referenced by" list after updating pipelines or resources to GitHub. This issue is fixed, and references are now removed correctly. (CDS-104715, ZD-74243)
- Previously, GCP OIDC connections failed when isolated to a specific project/org in Harness. This issue is fixed, and the connection now establishes successfully with the correct configuration during the test connection flow. Additionally, the connection test is supported for Platform as well (CDS-104975, ZD-74230)
- Previously, pipelines using triggers with input sets did not correctly apply the values provided. This issue is fixed, and the pipeline execution now uses the correct value from the specified input set. (PIPE-24088, ZD-74889)
- Previously, GitX auto-creation did not function as expected when YAML files were added to GitHub repositories. This issue is fixed, and entities are now created as expected. (PIPE-22712, ZD-71904)
- Previously, trigger event history was not being saved for scheduled triggers. This issue is fixed, and event history is now saved correctly. (PIPE-24190, ZD-75384)
- Previously, the "References/Referenced By" list did not show the complete list of connectors and secrets being used. This issue is fixed, and the list now shows the full set of references. (PIPE-23709, ZD-74015)
- Previously, when creating a new ASG from the base ASG, the Dimensions were not updated while inheriting the Scaling Policy properties. This issue is fixed, and the new ASG name is properly passed and scaling policies are updated. (CDS-105225, ZD-74995)
- Previously, GitOps steps ignored step, stage, and pipeline delegate selectors, failing to follow the delegate precedence outlined in the documentation. This issue is fixed, and GitOps steps now respect the correct delegate precedence. (See more on delegate precedence here). (CDS-105143, ZD-74401)
- Previously, editing a connector with the
CDS_DISABLE_CONNECTOR_PT_CREATION
feature flag enabled would reset the Perpetual Task unexpectedly. This issue is fixed, and the Heartbeat Perpetual Task is properly deleted during connector edits. (CDS-104552, ZD-73947) - Previously, the default pull policy for add-on images under Account > Pipeline Settings was incorrectly set to Always. This issue is fixed, and the default is now null, allowing Kubernetes to determine the pull mechanism. (CDS-101797, ZD-70029)
- Previously, a race condition during pipeline rollback with parallel steps could cause a duplicate key exception. This issue is fixed, and race conditions are now properly handled, resolving class cast exceptions. (PIPE-23275, ZD-73233)
- Previously, execution inputs in chained pipelines would intermittently fail to display, leaving the pipeline in a "Waiting State." This issue is fixed, and inputs now display correctly. (PIPE-22998, ZD-72739)
- Previously, users were unable to extract the logs.zip file after downloading from pipeline execution on Windows machines. This issue is fixed, and users can now extract the logs.zip file. (PIPE-20446, ZD-66561)
- Previously, Azure slot deployments failed with a conflict error: "The 'Preparing zip package' operation conflicts with the pending 'Performing continuous deployment' operation." This issue is fixed, and deployments now proceed without conflict. (CDS-104813, ZD-74163)
- Previously, connectivity errors (e.g., delegate failing to connect due to invalid host configuration or firewall issues) were misclassified as "Unknown Errors." This issue is fixed, and connectivity errors are now properly categorized, ensuring that failure strategies execute as intended. (CDS-104747, ZD-74235)
- Previously, pipelines were intermittently failing with the error message in the helm deployment step: "Error occurred while performing this operation." This issue is fixed, and deployments now proceed without errors. (CDS-104710, ZD-74154)
- Previously, pipelines were failing during deployment to multiple environments due to missing infrastructure definitions, with no proper validation or error message. This issue is fixed, and missing infrastructure definitions are properly validated. (CDS-CDS-104586, ZD-73964)
- Previously, Helm deployments failed during rollback due to missing or invalid revision numbers in Helm history, resulting in errors like NumberFormatException: For input string: "". This issue is fixed, and rollbacks now proceed without errors. (CDS-103746, ZD-72898)
- Previously, original Auto Scaling Group (ASG) tags were removed when selecting the "Base ASG" option in Infrastructure setup, causing permission errors during the creation of new launch templates. This issue is fixed, and ASG tags are preserved correctly. (CDS-103081)
- Previously, using a containerized step group nested within a normal step group caused pipeline execution to fail with a
NullPointerException: Cannot invoke "java.util.List.size()" because "ports" is null.
This issue is fixed, and pipelines with nested containerized step groups now execute successfully without errors. (CDS-105395, ZD-74949) - Previously, during load testing, customers faced issues with the delegate thread pool size being too small, leading to failures when executing pipelines concurrently. Additionally, some delegates reported errors due to missing CF CLI versions, and 503 errors occurred due to proxy configuration issues. This issue is fixed by increasing the delegate thread pool size and improving the detection mechanism for CF CLI installations. Customers should now experience more stable pipeline executions, even with larger concurrent loads. (CDS-103868)
- Previously, some pipelines faced issues with black-screening after approximately 6 hours, despite an increase in the log-service duration from 5 hours to 10 hours. This was due to large log files (over 20k lines) causing disruptions. The issue also involved a discrepancy between the log-service's stream duration and the expected limits, affecting log processing during longer executions. This issue is now fixed by extending the log-service duration to 10 hours and improving the handling of log limits at the account level.(PIPE-24058, ZD-73735)
December 2024
Gitops Version 1.22.0, Gitops Agent Version 0.83.0
New Features and enhancements
- Harness now supports the
prefixed_identifier
field in the GitOps Agent Terraform resource. This field provides a scope-prefixed agent identifier, where the scope (account, org, or project) is constant, and the agentId varies based on the specific agent. For example,account.agentId
for Account-level agents,org.agentId
for Organisation-level agents,agentId
(without a prefix) for Project-level agents. (CDS-101503) - The GitOps Applications landing page is now automatically refreshed, allowing newly created applications to appear in real-time without requiring manual refresh. (CDS-68662)
- We have introduced the
allowEmptyCommit
field in the GitOps Update Release Repo step, enabling users to push an empty commit if desired. Previously, the step failed if there were no changes in the commit. This enhancement is useful for setting up automated periodic PR pipelines. For more information, go to Harness Update Release Repo step. (CDS-103191) - Addressed and resolved all known critical vulnerabilities related to the GitOps Agent and GitOps Service. (CDS-102606)
- If the GitOps agent is at project scope in Harness it will now reconcile argo clusters and repos that don't have the "project" field as well ("project" in this context refers to the argoproject). (CDS-105211)
- Timeouts have increased for the Stream APIs: Watch, Logs, and ResourceTree. (CDS-102770, ZDS-72211, ZDS-73868)
Fixed Issues
- Previously, in the Harness Terraform Provider, the
agent_token
field in theharness_platform_gitops_agent
data source returned null, making it unusable for authentication validation. The issue is fixed. Theagent_token
field now correctly returns its value, and a newisAuthenticated
field has been added to indicate the authentication status. (CDS-104468) - The User Interface for buttons in the Repository settings of GitOps, such as New Repository and Create Credential Template lacked proper formatting. This issue is resolved, and the buttons are display properly. (CDS-103032)
- Previously, GitOps agents were taking an excessive amount of time to reconnect after regenerating and reapplying YAMLs, causing inconsistencies in reconnection timelines. This issue is resolved. (CDS-103262)
- The Resource Tree API calls were failing because the application name was missing from the query parameters. This issue is resolved. (CDS-104792)
- Fixed security vulnerabilities found in the GitOps Agent. (CDS-104150, ZD-73983)
- Previously, updating the GitOps Agent secret and re-applying or upgrading the deployment/Helm chart did not trigger new pod creation, causing the old token to be reused. This issue has been resolved—GitOps Agent pods now track the secret checksum, and any changes will initiate a new deployment revision. (CDS-103262)
- When viewing the helm source for a multisource app, you could see sometimes see data such as a values file set that would not appear in the UI. This was due to the utilization of ArgoCD outside of control of GitOps. This issue has been fixed. (CDS-104910)
- Previously, Resource Tree API calls were failing due to a missing application name in the query. This issue has now been fixed. (CDS-104792)
Version 1.69.7
Fixed Issues
- A null pointer exception was thrown when a pipeline was provided a primary artifact, but no artifact was selected in the service. This issue is fixed now. (CDS-104756)
- During Autocreation of entities the name and identifier were incorrectly retrieved from the Infrastructure Definition YAML file pulled from Git. The logic was using the wrong key in the YAML, causing it to always fall back on the file name instead. This issue is fixed now. (CDS-104751)
- Previously, when Override V2 was enabled and no
ENV_GLOBAL_OVERRIDES
orENV_SERVICE_OVERRIDES
were present, the system would fall back to reading overrides from the environment configuration YAML. However, the UI did not display information about these YAML-based overrides, causing confusion for users as they were unable to identify or control this behavior. This issue is fixed now and when Override V2 is enabled, overrides from the environment configuration YAML will no longer be considered. This change ensures clarity and aligns the system behavior with customer expectations. This fix is behind the FFCDS_SERVICE_OVERRIDES_2_0_YAML_V2_SUPPORT
. (CDS-104570, ZD-74034) - Previously, when a user selected "Deploy to Multiple Environments" inside a stage template and set it as a runtime input, the value was incorrectly treated as a fixed value during pipeline execution. This issue is fixed now. (CDS-104471, ZD-73843)
- Previously, GitOps entries did not appear in custom dashboards when the
cd_stage_execution
view was used in Looker. This issue is fixed now. (CDS-103135)
Version 1.68.4
Fixed Issues
- User was not able to provide timeout for Service Now approval step as Input. This issue is fixed now. (PIPE-23742, ZD-73247)
- When using blue green deployment step in a template, AWS load balancer dropdown was not getting populated. This issue is fixed now. (CDS-104478, ZD-73560)
- Previously, the Shell Script Provisioner step for PDC infrastructure failed when using runtime inputs for
hostAttributes
. This issue is fixed now. (CDS-104659) - Previously, users faced an issue with ASG deployment when using dynamic target infrastructure provisioning. This issue is fixed now. (CDS-103872)
November 2024
Version 1.67.2
New Features and enhancements
-
You can now deploy your artifacts to Google Cloud Run. For more information, go to Harness Google Cloud Run Deployments. This feature is behind a feature flag
CDS_GOOGLE_CLOUD_RUN
. Please contact Harness support to enable this feature. (CDS-36357) -
You can now deploy using Azure Functions enabling you to automate and manage serverless function deployments to Azure with ease. For more information, go to Harness Azure Functions deployments. This feature is behind a feature flag
CDS_AZURE_FUNCTION
. Please contact Harness support to enable this feature. (CDS-51900) -
Previously, GitOps steps like UpdateReleaseRepo, MergePR, and RevertPR were delayed due to locking on the tokenRef to prevent GitHub rate limits. A new Disable
Git Restraint
option now allows users to bypass this locking for faster execution. (CDS-101882, ZD-71430,72936) -
Harness now supports Post-Deployment Rollback for services at both the Account and Organisation levels. This feature is behind a feature flag
CDS_SVC_ENV_DASHBOARD_FOR_ACCOUNT_AND_ORG_LEVEL
. Please contact Harness support to enable this feature. (CDS-94527) -
Harness now supports fetching and using the latest successfully deployed tag for a service in the Harness pipeline using the expression
<+lastSuccessfulDeployed.tag>
. For more information, go to Harness Runtime Input for the Latest Artifact Tag. (CDS-101173)
Fixed Issues
- Previously, when configuring Approver Inputs with allowed values using a regex in the Manual Approval step, the regex setting did not appear in the UI after saving and reloading a template. This issue is fixed now. (CDS-99459, ZD-73396)
- Previously, selecting certain templates in My Organization Templates, UI was not rendering properly . This issue is fixed now, and templates now load and display correctly. (CDS-103675, ZD-73250)
- During Azure web deployments for windows complete logs were not getting shown. It happened due to a library upgrade for Azure which caused issue with some parts of Azure integration. The issue is fixed now. (CDS-103358, ZD-73664)
- In Azure function deployment instance sync was not reporting instance count. This issue is fixed now. (CDS-103224)
- Previously, GitOps entries did not appear in custom dashboards when the
cd_stage_execution
view was used in Looker. This issue is fixed now. (CDS-103135) - Previously, the Terraform Cloud Run step would get stuck during the Apply phase when there were no changes in the Terraform plan. This issue is fixed now. (CDS-103088, ZD-72114)
- Previously, attempting to delete folders in the file store with names similar to other folders caused errors, even when the folder appeared to have no references. For example, deleting a folder would fail if another folder with a similar prefix contained referenced entities. This issue is fixed now. (CDS-103076, ZD-72658)
- Previously, the runtime input regex for the version field in the Google Artifact Registry (GAR) artifact source was not working as expected, causing all tags to display instead of filtering based on the regex. This issue is fixed now, and the version field now correctly supports regex patterns, allowing users to filter tags as intended. (CDS-102800, ZD-72658)
- Previously, when a pipeline had two stages with a runtime environment
(<+input>)
propagated to the next stage, selecting Deploy to Different Infrastructure caused the payload to contain a null environment. This prevented users from selecting infrastructure options. This issue is fixed now. (CDS-100718) - Secrets used in container step executions were being checked against the user's permissions at the PROJECT scope, even if the secret was at the ACCOUNT scope, causing the pipeline to fail. This issue is fixed now. (CDS-103047, ZD-71475)
Version 1.65.3
New features and enhancements
- Emit Audit Event for Stable Template Version Changes
Harness now emits an Audit Event whenever the stable version of a template is updated. The Audit Event includes a YAML Diff section, allowing users to easily view the differences between the old and new stable versions of the template. (PIPE-19754)
- Support for OAuth Configuration with Self-Hosted GitLab Provider
Harness now supports configuring OAuth for self-hosted GitLab providers. This feature simplifies authentication and authorization by enabling seamless integration with GitLab's OAuth mechanism. This change is behind FF CDS_PROVIDERS
and PIPE_ENABLE_GITLAB_ON_PREM_FLOW
. Please contact Harness support to enable this feature. This item requires Harness Delegate version 843xx or later. For information about features that require a specific delegate version, go to the Delegate release notes.
Fixed Issues
- Previously, approver inputs in multi-approval scenarios displayed only the last approval activity's response, leading to incorrect default values and missing input constraints. The issue is fixed. (CDS-103109)
- Previously, URLs used to fetch artifacts from Artifactory with artifact filters did not support special characters, such as spaces, in artifact names. This issue is now fixed to automatically encode URLs, allowing support for special characters. This change is behind FF
CDS_ENCODE_API_REQUESTS
. Please contact Harness support to enable this feature. (CDS-103041, ZD-69919) - Previously, when a canary pod had no data while the primary pod did, the risk should have been marked as "No Data" per documentation. Instead, it was incorrectly marked as "No Analysis," causing issues when using the "Fail on No Analysis" feature. This issue is now fixed to align with the documentation, distinguishing "No Data" from "No Analysis" in risk assessments.(CDS-102865, ZD-72242)
Gitops Version 1.20.2, Gitops Agent Version 0.81.0
New Features and Enhancement
- For Harness GitOps Applications that use multiple sources, users can now select which of the source to sync with their Applications during the sync operation. Previously, all sources were always synced. (CDS-103055)
- With agent version v0.81.0, the base image for the GitOps agent has been upgraded from
redhat/ubi8-minimal:8.9-1029
toredhat/ubi8-minimal:8.10-1086
.
Fixed issues
- GitOps hosted agent scale-up was failing with the unclear error message "Failed to Scale the GitOps agent." This issue is resolved, and the error message now provides a detailed reason for the scale-up failure. (CDS-103429)
- Users experience continuous log window refresh when viewing logs for a Harness GitOps resource. This issue is resolved. (CDS-103016, ZD-72211)
Version 1.64.6
New features and enhancements
-
Approval APIs now support Service Account tokens for approving or rejecting Harness Manual Approval steps. For more information, go to Harness Using Approval API. This feature is behind a feature flag
CDS_SERVICE_ACCOUNT_SUPPORT_IN_HARNESS_APPROVAL
. Please contact Harness support to enable this feature. (CDS-97580, ZD-64388) -
Harness now supports webhooks configured with GitLab System Hooks to trigger pipelines. For more information, go to Harness GitLab System Hooks. (CDS-95423)
-
Harness now supports self-hosted Bitbucket OAuth tokens for the Git Experience. For more information, go to Harness Bitbucket Configuration. This feature is behind a feature flag
CDS_PROVIDERS
. Please contact Harness support to enable this feature. (CDS-95417) -
The Harness platform has been updated with the Kubernetes SDK (v18.0 to v21.0) and Helm SDK. (v3.12 to v3.13).
-
Harness has introduced native supports for Canary and Blue-Green Deployment strategies with Helm Chart deployments. For more information, go to Harness Helm Chart deployments. This feature is behind a feature flag
CDS_HELM_BG_STRATEGY
. Please contact Harness support to enable this feature. (CDS-35715) -
Harness now supports for enabling metrics in ASG deployments. For more information, go to Harness ASG Additional Configuration. This feature is behind a feature flag
CDS_ASG_ENABLE_METRICS
. Please contact Harness support to enable this feature. (CDS-99276) -
Harness now detects the failure state of CRDs in the Kubernetes Apply step when CRDs behave like jobs. (CDS-98761)
-
You can now specify the environment using Expressions in the GitOps pipeline. For more information, go to Harness GitOps documentation. (CDS-97523)
-
Template name suggestions are now available as part of the ServiceNow Creation step. For more information, go to Harness documentation (CDS-97672, ZD-64772)
-
Harness now allows bulk reconciliation of templates, enabling users to update runtime input changes across multiple entities (like stages or pipelines) in a single action. Currently, this feature is behind the feature flag
PIPE_BULK_RECONCILIATION
. Please contact Harness support to enable this feature. (PIPE-2018,ZD-39998,42766,43260,45380,47467,47517,63038,71628)
Fixed issues
- Previously, an error occurred related to the column "actualRunDuration" in the "verify_step_execution_cvng" relation due to missing migrations. This issue is resolved by running the necessary migrations to create the required columns. (CDS-102602)
- During the native Terraform apply stage within a CD pipeline, users encountered an unclear error due to the default image missing the Terraform binary. This issue is resolved now. The updated message now reads: Please verify if Terraform is properly installed. (CDS-101932)
- Previously, the rollback process failed due to an incorrect branch reference for the YAML file. This issue is resolved by adding logic to include the Git details when performing post-deployment rollbacks.
Currently, this feature is behind the feature flag
CDS_ADD_GIT_INFO_IN_POST_DEPLOYMENT_ROLLBACK
. Please contact Harness support to enable this feature. (CDS-101504)
Gitops Version 1.19.0, Gitops Agent Version 0.80
New features and enhancements
- Repository status was incorrectly set to 'Error' upon creation; now we refresh credentials on the agent right after creation or update to ensure accurate status. (CDS-101944)
- Harness GitOps now supports application filtering by cluster, labels, and application/application set. For more information, go to GitOps documentation. (CDS-97564)
Fixed issues
- Previously, the terminate sync operation in the GitOps application required application edit permissions due to a misconfiguration. This issue is resolved, and the operation now correctly checks for application sync permissions. (CDS-101930)
- Previously, the application regex selector in the GitOps sync step would sync all applications instead of just those in the selected clusters. This issue is resolved. When matched applications no longer correspond to the clusters or environments in the pipeline, the skipped applications will be logged, and the sync operation will only be triggered for the applications matching the regex.(CDS-100130)
- Previously, uninstalling a Helm release would remove CRDs, causing applications to lose their references to projects. This issue is resolved. When installing the agent using Helm, the option to keep ArgoCD CRDs on uninstall is now set to true by default. (CDS-97016)
October 2024
Version 1.62.5
New features and enhancements
-
Harness now supports custom attributes for OIDC with the GCP connector. Currently, this feature is behind the feature flag
PL_GCP_OIDC_AUTHENTICATION
. Please contact Harness support to enable this feature. (CDS-96753, ZD-63581,63632) -
Harness has introduced EventBridge webhooks that can be configured with Git, Slack, and generic options (for Nexus artifacts) to trigger pipelines in real time. Currently, this feature is behind the feature flag
CDS_EVENT_BRIDGE_WEBHOOK
. Please contact Harness support to enable this feature. (CDS-98869, ZD-66421) -
Harness has introduced a new step
File Upload
for uploading files as a runtime input during execution of a pipeline. The combined file size should not be greater than 100 MB and each individual file must not be greater than 50 MB. Currently, this feature is behind the feature flagPIPE_ENABLE_FILE_UPLOAD_AS_RUNTIME_INPUT
. Please contact Harness support to enable this feature. (PIPE-20287,ZD-65927) -
Harness now supports automatic upgrades for the GitOps agent from Private/Custom Repositories. (CDS-98332)
-
Harness now improves audit tracking by emitting an audit event when the stable version of a template is changed. (PIPE-19754)
-
Harness has enhanced the DataDog import dashboard experience by displaying metrics in the CV health source configuration. (CDS-95597)
Fixed issues
- Previously, the custom icon for the Step Group Template was not displayed when the template was used in the pipeline. This issue is resolved. (PIPE-22587)
- Previously, the Update Release Repo step did not allow users to provide empty values. This issue is resolved. (CDS-101936, ZD-71421)
- The Update Release Repo step was incorrectly adding variables from Environment and Service Overrides to the JSON file for GitOps PR pipelines when the step variable was empty. This issue is resolved. Empty step variables will now be removed from the variables added to the PR. (CDS-101778, ZD-71421)
- Previously, the Terraform Backend Config with Harness Code was not configuring the Remote Setup as expected. This issue is resolved. (CDS-101620)
- Previously, a few dropdowns in step forms, action popups in lists, and text in the Collaborators column had visibility issues in dark mode. This issue is resolved. (CDS-101494)
- Previously, users were unable to fetch an artifact version from Nexus during deployment. This issue has been resolved, and API requests made to the Nexus server to download artifacts are now URL-encoded. Currently, this feature is behind the feature flag
CDS_ENCODE_API_REQUESTS
. Please contact Harness support to enable this feature.(CDS-101407, ZD-70660) - Previously, the tooltip describing the purpose of the Clean checkbox in the Azure Slot Deployment step was missing. This issue is resolved. A tooltip has now been added to clarify the Clean checkbox. (CDS-101302)
- Previously, ECR tokens were exposed via artifact expressions and visible in logs. This issue is resolved. (CDS-101258, ZD-70269)
Version 1.60.5
New features and enhancements
-
Users can now send HTML content in the email body, which is rendered correctly in email clients in the Email Step. Currently, this feature is behind the feature flag
CDS_EMAIL_USE_DEFAULT_FORMATTING
. Please contact Harness support to enable this feature. (CDS-99225, ZD-64024) -
In the Harness Manual Approval step, we now support allowed values for Approver Inputs. (CDS-99459)
-
We now support authentication with JET Identity for the AWS Connector for the following services: EKS, ASG, WinRM, SSH, ECS, CloudFormation, and SAM. (CDS-99538)
Fixed issues
-
Previously, some users couldn't access Kubernetes service and job names in the exported manifest because of data masking. This issue is resolved. Now, the entire Kubernetes dry run manifest output YAML will not be sanitized, except for config maps and secrets. If the
CDS_K8S_SANITIZE_COMPLETE_DRY_RUN_STEP_OUTPUT
feature flag is enabled, then the entire output will be sanitized. (CDS-101472, ZD-70697) -
The default configuration for the GitOps Get App Details step through the UI was not functioning properly. This issue is resolved. (CDS-101260)
-
Some users were unable to use GitEx bidirectional sync with Harness repositories due to the presence of special characters in the repository. This issue is resolved. Users can now create webhooks even if their repository contain special characters. (PIPE-22238, ZD-70182)
-
The Git experience repository search was not yielding the expected results. This issue has been resolved. The search functionality works only with repository names, not with full paths or subdirectories. (PIPE-22173, ZD-70809)
- The ECR token was revealed through artifact expressions in the shell script step. This issue is resolved. (CDS-101258, ZD-70269)
Gitops Version 1.18.0
New features and enhancements
-
The Harness GitOps agent uses the Horizontal Pod Autoscaler for CPU and memory management, with a minimum of 1 replica and a maximum of 5 replicas in High Availability (HA) mode. For more information, go to GitOps documentation. (CDS-100830)
-
Harness GitOps now supports Multi-Source applications with ArgoCD. This feature is available for the GitOps agent version 0.79. Currently, this feature is behind the feature flag
GITOPS_MULTI_SOURCE_ENABLED
. Please contact Harness support to enable this feature. (CDS-85518) -
We now suport force deleting of GitOps Applications, which can be used when a delete operation is stalled. Note that this option may leave some resources orphaned, so it is advised to use it only in critical scenarios. (CDS-97813)
-
While retrieving an application from ArgoCD, if the application is not found in the specified agent namespace, it will be removed from the database. (CDS-101006)
-
We have released a new image for gitops-agent-installer-helper (v0.0.2) that addresses several critical and high vulnerabilities through binary upgrades. (CDS-100665)
-
While updating Gitops repository fields, it is now required to include an Update Mask parameter in the update request to GitOps ArgoCD. The update mask specifies which fields have been changed, enhancing the clarity of the updates. (CDS-101077)
Fixed issues
-
Previously, in the Gitops Overview page, the Recent Deployment Activities dashboard did not filter deployments by agent identifier. As a result, deployments from other applications with the same name but different agents were displayed if they were in the same project hierarchy. This issue is resolved. The recent activities dashboard now scopes the results to the appropriate agent. (CDS-100336)
-
Previously, GitOps Applications Syncs older than 6 months were displayed on the Applications Sync dashboard caused inconsistencies on the dashboard, leading to duplicate entries during reconciliation after MongoDB TTL cleanup. This issue is resolved. (CDS-101259)
-
Previously, users could create a GitOps application with an invalid namespace, which would later cause synchronization failures. This issue has is resolved, and now applications can only be created using a valid namespace. (CDS-100149)
-
Previously, users were unable to edit the manifest within a GitOps application and apply changes directly from the GitOps page. This issue is resolved. (CDS-99792, ZD-68127)
-
Previously, the project mappings did not consistently appear in the project when the Gitops agent was running in High Availability (HA) mode. This issue is resolved. The agent will now automatically reconnect to Redis once it is back online, ensuring that mappings are updated. (CDS-100784, ZD-69678)
Version 1.59.4
Hotfix
- Previously, pipelines were failing for Helm deployments when neither the password nor the password reference was provided in cases where the inheritFromDelegate option was used. This issue is resolved. (CDS-102243)
New features and enhancements
- We have introduced GitOps Get App Details step to fetch application details and status. Currently, this feature is behind the feature flag
GITOPS_GET_APP_DETAILS_STEP
. Please contact Harness support to enable this feature. (CDS-100548)
Fixed issues
-
Previously, artifact paths containing spaces caused errors during downloads. This issue has been resolved. With the introduction of the
CDS_ENCODE_API_REQUESTS
feature flag, URLs used to download artifacts from Artifactory are now automatically encoded. This enhancement supports artifact names with special characters, such as spaces. If this feature flag is enabled, manually encoded URLs will double encode and may cause download failures. Ensure the URLs are not pre-encoded before sending requests when this flag is active. (CDS-100947, ZD-69919) -
Previously, the remote environments were not fetched accurately when used in a GitOps pipeline. This issue is resolved. We set the valid source principal before fetching the remote environment for GitOps. (CDS-101087, ZD-70156)
-
Previously, the error message for GCF deployment was unclear while using a wrong manifest function file. This issue is resolved. (CDS-100391)
-
Previously, the dark theme pop-ups had a list of items that were indistinguishable from each other in the Create or Select an Existing Connector page. This issue is resolved now. (CDS-99275)
-
Previously, log details were not displayed in the UI when a pipeline with K8s async steps timed out while the
CDS_K8S_ASYNC_STEP_STRATEGY
feature flag was enabled. This issue has now been resolved. (CDS-95705)
September 2024
Version 1.57.6
New features and enhancements
-
The Auto Scaling Group (ASG) that previously experienced downtime during rollback instance refresh is now enhanced to achieve zero downtime, ensuring continuous availability. Currently, this feature is behind the feature flag
CDS_ASG_ROLLOUT_ROLLBACK_INSTANCE_REFRESH
. Please contact Harness support to enable this feature. (CDS-97964) -
Harness now supports configuring CLI environment variables for Tanzu Application Service deployment in the Service and overrides. Currently, this feature is behind the feature flag
CDS_CF_CLI_ENVIRONMENT_VARIABLE_SUPPORT
. Please contact Harness support to enable this feature. (CDS-93637, ZD-59417, ZD-61241, ZD-65736) -
Users can now define allowed values in the Select Hosts settings under infrastructure. In the runtime view, a multi-select dropdown will be displayed, allowing users to choose from the predefined allowed values. Currently, this feature is behind the feature flag
CDS_ALLOWED_VALUES_DROPDOWN_PDC_HOSTS
. Please contact Harness support to enable this feature. (CDS-99810) -
Users can now successfully configure OAuth tokens for Git providers, including when using Vanity URLs. (PIPE-20617, ZD-64159)
-
Matrix Failure Strategy Support
Harness now supports the matrix strategy at the state level, allowing execution across all stages despite failures, with an added option to retry failed stages. (CDS-100369)
Fixed issues
-
Previously, users could not copy the task ID directly from the execution logs in the continuous verification process. This issue is resolved. Copy Task ID button is added in the execution logs modal for the verification step to copy the task ID. (CDS-100337)
-
Previously, users experienced delays when loading the service and execution dashboards. This issue has been resolved by introducing widget-level loaders for projects with many services, significantly improving loading performance. (CDS-100916, ZD-69971)
-
Previously, the dropdowns in the pipeline studio had low contrast in dark mode. This issue has now been fixed. (CDS-99271)
Version 1.56.1
New features and enhancements
- Custom Logic for Traffic Routing
We have introduced custom logic for traffic routing, enabling users to rewrite custom logic for traffic routing to suit their deployment strategies. Previously, the host field in a virtual service's YAML was mandatory. With this update, users can leave the host field empty, allowing for more dynamic configurations. Additionally, we added a new Delegate Service checkbox, which simplifies setup by eliminating the need to manually specify the host, enhancing flexibility for dynamic traffic routing. (CDS-97968)
- Re-Run Pipeline with no Input changes
You can configure your pipelines to have no Input change during re-run. This allows you to have consistency in re-run behavior, especially in pipelines where input changes should be restricted after the initial execution. (PIPE-11757, ZD-47593,58532,68829)
- Display of Correct Execution Times for Re-run Steps
When a pipeline is re-run, only the steps that are actively re-run will now display updated start and end times. Steps that were not required during the re-run and were copied over from the previous execution will retain their original execution times, ensuring an accurate representation of the pipeline’s execution history. (PIPE-18593, ZD-62115,65602)
- Multiple and Single Selection for Runtime Inputs
Harness now supports both Multiple and Single selection modes for runtime inputs, enabling users to choose between selecting one or more allowed values. Please contact Harness support to enable the feature flag PIE_MULTISELECT_AND_COMMA_IN_ALLOWED_VALUES
. (PIPE-11757, ZD-47593,58532,68829)
- While creating a new Gitops application, we have introduced a dropdown in the destination page that enables users to choose how they want to define the cluster. The user can select Server to use cluster URL or select Name to use cluster name to define the entity. (CDS-99650)
Fixed issues
- Earlier, all the pipeline stages were not visible when using the Zoom to Fit button in Pipeline Studio. This issue is fixed. (PIPE-21475, ZD-68662)
- In a few cases, the artifact trigger failed to pick up the artifact and trigger the pipeline. The trigger also had a Pending status and did not change Success This issue is fixed. A new perpetual task will be created after the maxFailed attempts are reached even if the pending trigger is deleted. (PIPE-20803, ZD-67390)
- In NewRelic applications, all application IDs were not being shown and the list was limited to 10 application IDs and had a delayed response time during search. This issue is resolved. (CDS-100390, ZD-69177)
- Users were unable to save the pipeline changes in the custom deployment template with an empty version label. This issue is fixed now. (CDS-100324, ZD-68869)
- The instance details for the deployed service were not displayed after execution. This issue is resolved now. Instance sync for Custom Deployment will work if secrets are being referred and being used to fetch instances. (CDS-100179, ZD-68207)
- Previously, a default value was passed to the timestamp in custom query for big query health source which restricted users to add timestamp according to their requirements. This issue is resolved. The default value for the timestamp input is removed. (CDS-99523)
- Users were unable to import override from Git when
CDS_OVERRIDES_GITX
feature flag was disabled, and the error message was unclear. This issue is resolved. The Import to git option will no longer be visible ifCDS_OVERRIDES_GITX
is disabled. Please contact Harness support to enable this feature. (CDS-98357)
Version 1.55.1
New features and enhancements
- Multiple runtime support for Serverless.com and AWS SAM
Released new images for AWS SAM to support multiple runtime for python3.11
, python3.12
, ruby3.2
, java8
, go1.24
. For more information, go to Harness AWS SAM - Containerized step images. (CDS-80560)
Released new images for Serverless to support multiple runtime for python3.11
, python3.12
, ruby3.2
, java8
. For more information, go Harness Serverless.com - Containerized step images. (CDS-80560)
- Multi-Deployment and Matrix Failure Strategy Support
Harness now supports applying failure strategies during multi-service, multi-infrastructure, and matrix deployments. Currently this feature is behind the feature flag CDS_MULTI_DEPLOYMENT_ON_FAILURE
. Please contact Harness support to enable this feature. (CDS-96876, ZD-63199, ZD-64391, ZD-64465, ZD-66720)
- ServiceNow access is enabled through a Mulesoft endpoint by adding a
/now
URI in the ServiceNow requests. (CDS-99537, ZD-64547)
Fixed issues
- Users were unable to move or delete a service-specific override. This issue is resolved. The permissions required to move or delete a service-specific override for global environment and infrastructure is
core_environment_edit
. The permissions required for service-specific override or service and infrastructure iscore_service_edit
. Separate permissions to delete are not required. (CDS-100204, ZD-68468, ZD-68759) - The service variable that referenced secret text was exposed in plaintext delegate logs when executing CD WinRM deployment. This issue is resolved. The warning logs are updated with debug logs. (CDS-100046, ZD-68713)
- When using a WinRM credential of "type = Kerberos" in a PowerShell script, the output variables were not displayed properly due to a missing identifier. This issue is resolved. (CDS-100036, ZD-68283)
- Service was not loading when the service and environment used a custom template configured as Always use the stable version. This issue is resolved. (CDS-100021, ZD-68666)
- Custom stage pipelines did not show the environment in the pipeline execution history. This issue is resolved now.(CDS-99938)
- The tooltip for the Output Alias (optional) field under Optional Configuration was not being displayed. This issue is resolved. (CDS-90919)
Version 1.54.2
Fixed issues
- The Helm chart deployments failed when the
values
YAML file contained double quotes. This issue is resolved. (CDS-100174, ZD-68747, ZD-68940) - The placeholder in the health source connector component, which previously displayed
GCP
, has now been updated toBigQuery
. There is no functionality change with the issue resolution. (CDS-99519) - Earlier, deleting the entire expressions from the delegate selector field at the step level was not possible. This issue is resolved. (CDS-96694)
- The Service and environment values saved as input sets of monitored service template in the verify step were not available while running the pipeline. This issue is resolved. (CDS-96581)
August 2024
Version 1.53.5
New features and enhancements
- Service Failure Strategy
We have introduced a failure strategy for the service, where the service step will, by default, inherit the failure strategy from the stage. Currently this feature is behing the Feature Flag CDS_SERVICE_INFRA_FAILURE_STRATEGY
. Please contact Harness support to enable this feature.(CDS-96876, ZD-63199, ZD-64391, ZD-64465, ZD-66720)
- Infrastructure Scope Selector
We have introduced a UI component to make the list of infrastructure searchable and sorted based on creation time. You can also select all the infrastructures in the environment by choosing the All Infrastructures
checkbox. Currently this feature is behing the Feature Flag CDS_SPECIFY_INFRASTRUCTURES
. Please contact Harness support to enable this feature. (CDS-94529)
- The My Executions filter on the listing page displays both manual executions and those triggered automatically by Git pull requests (PRs) i.e execution executed by their Githib PRs as well as manually execution pipeline execution will appear in the My Execution list. Currently this feature is behing the Feature Flag
PIPE_FILTER_EXECUTIONS_BY_GIT_EVENTS
. Please contact Harness support to enable this feature. (PIPE-13755)
Fixed issues
- Earlier, Git Experience intermittently encountered errors when pushing changes to a new branch. The issue is resolved. The
/
in the gitx webhook identifier was replaced with_
in the identifier field. Henceforth, you can't create webhook identifiers with a/
. (PIPE-20973, ZD-681420)
Version 1.52.4
New features and enhancements
- You can clone Services across scopes i.e from one project to another, project to organization, account to project etc. and Environment scopes (i.e from one project to another, project to organization, account to project etc.). Currently this feature is behind the Feature Flag
CDS_SERVICE_ENV_CLONING
. Contact Harness support to enable it. (CDS-97315, CDS-98426)
Fixed issues
- The error title Intervention was displayed when the verification step failed. The title is now updated to Verification Failure. (CDS-99671,ZD-65113)
- The runtime input symbol was getting displayed even when fixed values was selected from the templates in the monitored services. This issue has been resolved. (CDS-99518)
- On the services page, the deployment type icon did not consistently appear. This issue has been resolved. (CDS-99331, ZD-66892)
- GitOps deployments were not tracked for multiple projects because the Harness Gitops instances service was out of sync with applications without project mappings. This issue has been resolved. (CDS-98989, ZD-63203)
- An error message associated with missing parameters in the GitHub Connector was ambiguous. This issue was resolved. (CDS-97760)
- Previously, when a Pipeline Execution was aborted due to a Deployment Freeze, the details of the Freeze were not accessible from the Execution Console view. This issue was resolved by adding the details to the Console View. (PIPE-20658)
Version 1.51.5
Behavior changes
- Previously, in pipeline chaining, if the child pipeline was in a wait step, the child pipeline status would show as Waiting state whereas the parent pipeline status would show as Running state. This behavior is changed to show both parent and child pipeline status to show as Waiting state. Currently this feature is behind the Feature Flag
PIPE_MARK_PARENT_PIPELINE_STATUS_WAITING_AS_CHILD
. Contact Harness support to enable it. (PIPE-20448, ZD-66154,66618,67697)
Fixed issues
- The output tab in the pipeline console previously displayed incorrect details for retries when viewed in console mode. This issue has been resolved by ensuring that the correct step ID is passed for retry steps, allowing accurate details to be shown in the output tab.(PIPE-20648, ZD-67024)
- While connecting to the Git sync service, a connection error was being thrown. This issue is fixed by increasing the retry policy from 1 to 3. (PIPE-20589, ZD-67247,67488)
- The pipeline deployed using the rolling deployment were encountering a
NotificationTargetARN
error. This issue is resolved now with support for adding lifecycle hooks with different notificationARNs and roles during the time of creation of ASG. (CDS-99460, ZD-67371) - Users were unable to delete services that had been soft deleted from the service dashboard page. This issue has been resolved by adding functionality to support the deletion of these services. (CDS-99344, ZD-67225)
- When renaming a file by adding an extension to the file name in the Harness File Store, the file's content was previously deleted. This issue has been fixed to ensure that file content is maintained when updating file metadata in the File Store. (CDS-99202, ZD-66962)
- The K8s manifest connector runtime field was not visible in the run pipeline form. This issue has been resolved, and the runtime field is now visible in both the run pipeline form and the input set form. (CDS-99171, ZD-66902)
Version 1.49.7
Fixed issues
- The deployment status API returns outdated or invalid information. This issue is fixed and we've added a new Deployment Status API, which honours permissions, and returns a correct 200 response with a QUEUED status, for Triggers which are in queued state. This will replace the existing API which behaved incorrectly in some situations, and will be deprecated. (PIPE-19306, ZD-62849)
- Creating a NewRelic health source for a monitored service does not provide a method to select the correct application ID. This issue is fixed now and system collects and shows all the Application Ids from NewRelic.(CDS-98867, ZD-66434)
- Using an expression in the auto-approval for the approval step threw an error. This issue is fixed.(CDS-98842, ZD-66329)
- When a user tried to fetch a payload file from Bitbucket, it threw an invalid payload format and the HTTP capability check returned a 501 status code, indicating Bitbucket connectivity problems. This issue is fixed now.(CDS-98500, ZD-65594)
July 2024
GitOps Version 1.15.0, GitOps Agent Version 0.78.0
New features and enhancements
-
Improved event handling for
OnEventAppsCrud
by removing unnecessary fields to increase efficiency and minimize event noise. (CDS-99431) -
Optimized sync operations by filtering out excessive tasks, enhancing performance, and reducing unnecessary system processing. (CDS-99069)
-
Enhanced High Availability (HA) pod synchronization on project mappings and integrated Redis to better manage synchronization. Added time-to-live (TTL) logic to improve session lifecycle handling. (CDS-96409)
-
ArgoCD has been upgraded to version 2.10.14, addressing a security vulnerability related to OpenSSH (CVE-2024-6387), which enhances system security. (CDS-98694)
Fixed issues
- Previously, an unmarshalling issue caused invalid duplicate updates to the task collection, resulting in unnecessary retries and increased load on MongoDB. The issue is resolved.
Version 1.48.11
New features and enhancements
-
The Verify step was not appearing in Continuous Deployment (CD) for SMP version 1.19.10. This was because the Verify step was initially part of the Service Reliability Management (SRM) module. Users who did not have the SRM module enabled could not see the Verify step. Now, as Continuous Verification (CV) has been moved to CD, this step will be available for all users who have CD enabled. (CDS-98542, ZD-65452)
-
In the GitOps Application page, a new button to terminate an ongoing Application Sync has been introduced. This feature is helpful for long-running or stuck sync situations. The button is visible on the top right of the screen, replacing the Sync button when a sync is ongoing. (CDS-97563)
Early access
- When deploying to Amazon's EKS, a new option to manually configure the connection to the cluster is available. Previously, you could only connect through an AWS Connector. Now, you can provide the cluster endpoint and optionally provide a CA cert. This feature is behind the feature flag
CDS_AWS_EKS_CLUSTER_MANUAL_CONFIGURATION
. Contact Harness support to enable it. (CDS-91561)
Fixed issues
- In a few cases, skipped stages/steps in Pipeline executions were being displayed in blue instead of grey. The issue is fixed now. (PIPE-20138, ZD-65966)
- Stage/Step popover was hidden behind the Navigation UI. The issue is fixed now. (PIPE-20028, ZD-65628)
- When we rerun a pipeline with multi-env deployment stages or stages in a Matrix, the rerun would skip over the stages that were skipped the last time, without re-evaluating the Execution Condition. This is fixed now; the Executional Condition is re-evaluated for previously skipped stages in Matrix during re-run, and if the condition is now true, they are executed. Note, this is only in the case where the execution failed midway within a Matrix or Multi-Env deployment in the pipeline, and we need to rerun the pipeline from that Matrix. (PIPE-19746, ZD-64970)
- When you scroll to the bottom of the Pipeline Page and click on the last pipeline on the page, if your default view is YAML, the YAML in the Pipeline Studio was previously opening in a scrollable view. This issue has now been fixed. (CDS-98674, ZD65768,66530)
- Scrolling was not working when the cursor was inside the script step. The issue is fixed now. (CDS-98607)
- Previously, when trying to edit an existing Values YAML Manifest in the overrides section, users had to click a pencil icon on the far right. After clicking this pencil icon, another pencil icon, which was mostly hidden, appeared on top of the LOCATION section. This caused confusion as users were not seeing the second pencil icon. This issue has now been fixed. (CDS-98565, ZD-65892)
- GitOps instances on Harness service were out of sync with applications that did not have project mappings but were part of the agent. The issue is fixed now. (CDS-96719, ZD-63203)
- Incorrect unmarshalling of Terraform configuration to a JSON object for the API request caused backend validations to fail, resulting in a 500 response code. The issue is fixed now by adding more validation and null checks in the backend. (CDS-96374, ZD-62737)
- In certain cases, the execution order and failure handling in pipelines were inconsistent. For example, if the last stage in a failed, the deployment continued instead of stopping. Additionally, steps within a step group sometimes executed even if previous steps had failed, causing confusion about the conditional execution logic and maximum concurrent executions not being honored. The issue is fixed now and StepGroup combinations will now be marked as skipped if one of the steps in the StepGroup fails and rollback happens during Pipeline Execution. (PIPE-19763, ZD-65041)
Version 1.45.5
New features and enhancements
- Bi-Directional Sync Health Status for Git Sync
We have introduced a Git Sync status page for Harness NG. Once you have synced your Harness entities with your Git repository, you can view bidirectional activity between Harness and your repository using the Bi-Directional Sync Health Status feature. For each entitiy, you can see file path, commit message, status of the last sync as well as the payload. Refer to Harness Git Sync health Page for more information. (PIPE-16865)
- HTTP support HTTPS Authentication for Terraform and Terragrunt Modules
You can now fetch modules for Terraform and Terragrunt via HTTPS authentication using GitHub, Bitbucket, and GitLab connectors(CDS-95361)
- API to get execution details along with input yaml that was passed during the execution
You can fetch a lite version of execution details along with input yaml that was passed during the execution with help of an API.(PIPE-19713)
-
Go version has been updated to
1.22.3
for the GitOps Service and GitOps Agent. (CDS-97613) -
ArgoCD version packaged with harness gitops agent has been upgraded to
v2.10.10
. (CDS-97420)
Behavior changes
-
Previously, when the verify step failed, and an action was taken based on the failure strategy or manual intervention, the title was always shown as Manual Intervention. (CDS-97985, ZD-65113)
Now, the title is updated to reflect the nature of the intervention:
-
Intervention is displayed when the action is performed through the CV failure strategy configuration.
-
Manual Intervention is displayed when the action is performed through manual intervention.
-
Fixed issues
- The left stage/steps was overlapping with the pipeline UI. The issue is fixed now. (PIPE-20028, ZD-65628)
- The trigger was getting invoked without an artifact push. The issue is fixed now. (PIPE-19806)
- Changes made to files in Git repository were not reflected in Harness. The issue is fixed now and it is ensured webhooks events are now correctly triggered, enabling accurate bididrectional synchronization. (PIPE-19654, ZD-64687)
- When a Template was selected and added to a Pipeline, the UI options was not allowing the user to select Always use Stable Template, although this was possible through the YAML by removing the template version. This issue has now been fixed and the Template can be set to Stable version in the calling Pipeline. (PIPE-16496, ZD-60750)
- Extra border was appearing on the settings page during extensive scrolling. The issue is fixed now. (CDS-98494, ZD-65368)
- While clicking on the View References button while deleting a Secret was not properly redirecting the user. The issue is fixed now. (CDS-98487)
- Discrepancy was observed in text box size between HTTP step and HTTP step template. The issue is fixed now by adding conditional width for pipeline input form and template. (CDS-98094, ZD-65420)
- When updating the File Usage in File Store, an error was being thrown that the file usage could not be updated, even though it was being updated properly. The issue is fixed now. (CDS-98077, ZD-65347,65353)
- Even though clusters were selected and listed under a specific environment, the Gitops Sync task was getting an error Following clusters were skipped either because clusters were not linked to the environment or not present in Harness GitOps. The issue is fixed now. (CDS-98022)
- Azure App deployments were not working as expected due to recent log changes by Azure. Azure now provides logs for multiple containers, which affected the integration. The issue is fixed now and includes log pattern recognition that mark the pipeline success based on matching specific patterns in the logs. (CDS-98000, ZD-65289)
- The license trends graph for the SI model was previously inaccurate due to the queries grouping services based on projects. As per the correct definition, all services should be grouped in a single bucket irrespective of the organization or project. The issue is fixed now and the queries have been updated to accurately reflect the current license count on the license trend graph for the SI model. (CDS-97966)
- Git Experience for Overrides was not working. Previously, the UI tried to always fetch the overrides from the default branch failing the get call from the UI. The issue is fixed now. (CDS-97874)
- In Custom template, service and Infrastructure is optional and if Infrastructure is fixed and from UI side and if there is no value present it was getting set to undefined that was leading to the removal of infrastructureDefinitions key and if there is no key it will throw an error. The issue is fixed now. (CDS-97815,ZD-64148,64652)
- Changes to add
metricThresholds
to NewRelic health monitors are causing Terraform to hang while waiting for an updated response. Despite the hang during the first execution, subsequent executions of the pipeline indicate that the resource was successfully updated. The issue is fixed now by changing the error code. (CDS-97793, ZD-65015) - When a template YAML contained duplicate keys and was linked to a pipeline, the error message only indicated the presence of duplicate keys without identifying the specific template. The error message has been improved to include the template identifier, enabling users to locate and fix the issue in the relevant template. (CDS-97785, ZD-64989)
- While selecting the Deployment type AWS SAM and toggling the CV button it was throwing an error due to no template being chosen. The issue is fixed now. (CDS-97771)
- For Winrm deployment with Command step and auth type as Kerberos if the environment variables contains characters
\b, \v, \c, \f, &
the script execution was failing as we parse the response of script execution to xml string and above characters are illegal xml characters. The issue is fixed and now and these characters will be escaped. This change is behind the FFCDS_ESCAPE_ENV_VARS_FOR_WINRM_KERBEROS_NG
. (CDS-97690, ZD-55276,58201,66326) - When using a connector at a project scope, the preflight check fails when the connector reference links to the connector url stored or created at an account level due to an incorrect routing to a
Not Found
page. This was because, scope details were missing from the API. The issue is now fixed. (CDS-97593, ZD-64673) - Logs were not being uploaded for shell script step and some other steps in case the step timed out. The issue is fixed and the shell script step now uploads the logs on step timeout. (CDS-97521, ZD-64422)
- The shell script step was not doing a capability check before assigning the tasks to the delegate. The issue is fixed and the shell script step will now have a host capability check. (CDS-97512, ZD-66326,66349)
- The ServiceNow step was not updating the ticket but was showing successful with no logs being shown. The issue is now fixed and console logs and debugging help has been added in the ServiceNow steps. (CDS-97033, ZD-63637)
- When selecting Use Template on an Approval Stage, Steps were showing, but Step Group Templates were not. The issue is now fixed, and users will be able to create a step group template with the approval stage type. These templates can be used in approval stages as step entities. (CDS-96930, ZD-63556)
June 2024
Version 1.43.5
New features and enhancements
- Infinite Scroll Support Repo listing
This feature is currently behind the feature flag, CDS_LIST_REPO_V2
. Please contact Harness support to enable it.
For a certain connector, you can now search for repositories with support for infinite scroll. Simply enter any keyword to see related repositories listed. If you can't find the repository you're looking for, you can also add it manually.(PIPE-10894)
Refer to following doc for more details on new repo listing.
Breaking changes
- Harness now supports the serial deployment of environment groups. This feature is currently behind the feature flag,
ENV_GROUP_DEPLOYMENTS_IN_SERIAL
. Contact Harness support to enable it. (CDS-97241, ZD-63912)
Fixed issues
- If drift is detected in the services dashboard tile, the Drift Detected hover box now displays a detailed error message with the relevant documentation link. (CDS-96911, CDS-96722)
- The project level artifact feed was not working for azure web services deployment and the project information was fetched from the wrong object. This issue is now fixed and the project level feed for artifact collection now works as expected. (CDS-97586)
- Fixed an issue where hovering on variables did not work as expected. (PIPE-14668)
- The GitEx Health page is now updated to include information about GitEx webhook events validation such as event status and status of other related entities. (PIPE-18466)
- When a Template is selected and added to a Pipeline, the UI options don't allow the user to select Always use Stable Template, although this was possible through the YAML by removing the template version. This issue is now fixed and the Template can be set to Stable version in the calling Pipeline. (PIPE-16496, ZD-60750)
Version 1.42.4
Breaking changes
- Validations have been added to override variable names. Now, a new variable name cannot be saved if it starts or ends with a space. Also, validations have been added for special characters. This is a breaking change for the already saved invalid variable names. Hence, this change is enabled behind the feature flag,
CDS_OVERRIDES_VARIABLE_NAME_VALIDATIONS
. After enabling the feature flag, you can see that the variable names are being validated when creating or updating overrides. (CDS-97386, ZD-62711)
Fixed issues
- Validation for the pipelines with templates imported from Git failed. Typically, schema validation is done in the pipeline Get, Create, or Update calls. However, schema validation for pipelines imported from Git (with templates) is done without resolving the templates because it's an expensive operation. Therefore, schema validation in the async validate call to identify any schema errors causing validation failure. Note that the issue only happens with imported pipelines with templates from Git currently. (PIPE-18537, ZD-61841)
- Null Pointer Exception occurred in the Verify step. Added null point checks to avoid this error in the future. (CDS-97388)
- Pipeline execution showed inconsistencies. This issue is fixed by fixing a retry bug with the delegate's Git client where it did not retry on specific errors. (CDS-96877, ZD-63321)
- Service failed intermittently when fetching the
ECR_ARTIFACT_TASK_NG
artifact. This issue is fixed by optimizing ECR calls by reducing the number of client creation calls and reusing the clients by passing them and eventually using them to make calls instead of creating clients every time. (CDS-96861, ZD-63061) - The Execution History page broke when numbers were used in the Tags field. This issue is fixed by converting the string holding the number to string type before applying string methods on the variable. (CDS-96636)
- When trying to resolve the expressions in the File Store scripts, Harness encountered a self referencing expression. Due to this condition, the resources associated with two Harness services were exhausted. A code change fixed this issue by preventing such pipeline executions. This item requires Harness Delegate version 24.06.83304. For information about features that require a specific delegate version, go to the Delegate release notes. (PIPE-19585, ZD-64579, ZD-64580)
Version 1.41.6
Usability enhancement
- Harness Approval step usability has been enhanced. Earlier, during pipeline execution with the Harness Approval step, the approval actions, Approve and Reject had low visibility in the Executions view. This has been enhanced to match with the Console view where the Approve and Reject actions are available in the top section. You must now provide the Approval inputs upon clicking Approve or Reject.
Early access
- Harness now lists all pipeline executions including retired and child executions in the Executions page. This feature is behind the feature flag,
PIE_SHOW_ALL_EXECUTIONS_FILTER
. Contact Harness support to enable it. (PIPE-18492, ZD-64066)
Fixed issues
- Updates made to stage variables did not reflect in the pipeline. When adding a new allowedValue in a template, the changes were not getting propagated to the pipeline as it was getting treated as subset. This issue was caused by a change made in the code to allow subsets of values in allowedValues in a nested pipeline/template. Harness is reverting this change, and will support exact allowedValues in pipeline/template during reconciliation. Some customers may face reconciliation errors if they are using subset allowedValues already. (PIPE-19102, ZD-62929)
- Running a pipeline returned an unclear error message,
Invalid request: Cannot create pipeline entity due to Unexpected token (FIELD_NAME), expected END_OBJECT: expected closing END_OBJECT after type information and deserialized value at [Source: (StringReader); line: 13124, column: 1]
. This issue is fixed by providing a meaningful error message for thegetStageExecutionList
flow. (PIPE-16557, ZD-60649) - Null pointer exception occurred when populating instrumentation data for sending events for telemetry. This issue occurred because some JsonNode objects returned null while called using GET method. This issue is resolved by adding null checks for the JsonNode objects. (PIPE-16452)
- Service steps failed intermittently when fetching the ECR_ARTIFACT_TASK_NG artifact. This issue is fixed by optimizing ECR calls by reducing the number of client creation calls and reusing the clients by passing them and eventually using it to make calls instead of creating clients every time. (CDS-96861, ZD-63061)
- Terraform configuration for a monitored service returned the
500
response code. This issue occurred due to incorrect un-marshalling of Terraform configuration to the JSON object for the API request. This led to backend validations failing and causing the500
response code. This issue is fixed by adding more validations/null checks in the backend. (CDS-96374, ZD-62737)
May 2024
Version 1.39.4
Fixed issues
- Fixed an issue where notifications didn't show the event names properly across all notification methods. Now, the pipeline end event appears as ended and the pipeline success event appears as succeeded in notifications. (PIPE-18855, ZD-62684)
- For a pipeline with bidirectional sync enabled, the file name change in GitHub was not properly reflected in the Harness UI. This issue is fixed by enhancing the cache handling for files. (PIPE-18828, ZD62791)
- Step group templates did not appear when selecting Use Template on an Approval stage. This issue is fixed. You can now create a step group template with the Approval stage, and use them as step entities in the Approval stage. (CDS-96930, ZD-63556)
- The HTTP step's Request Body field stretched horizontally to fit lengthy expressions. This issue is fixed. (CDS-96839, ZD-63344)
- Fixed an issue where users were unable to save YAML changes when creating a new infrastructure definition. (CDS-96396, ZD-62801, ZD-63997)
- The TerraformCloud Run step did not fail if the Terraform Apply step failed. This issue occurred because we were not checking the status of Terraform Apply after streaming logs. If Apply started, the step passed even if the Apply step did not complete. The step failed only when the Apply step failed to start, but not if it failed midway. This issue is fixed. The TerraformCloud Run step now fails if the Apply step fails midway, allowing users to use appropriate failure strategies. (CDS-96089, ZD-62254, ZD-63371)
- Fixed an issue where runtime expressions and values were not supported for Helm Values files in the Update GitOps Apps step. (CDS-96005)
- The Resource Constraint pop-up didn't show the ongoing execution details in the pipeline execution console view. This issue is fixed. (PIPE-18831, ZD-62825)
Version 1.38.2
Early access
- You can now select a monitored service template from a Verify step during runtime. This feature is currently behind the feature flag,
CV_MONITORED_SERVICE_TEMPLATIZATION
. To enable a feature flag in your Harness account, contact Harness Support. For more details, go to Templates and templatization in CV. (CDS-80059)
Limitations
- The
$HOME
variable does not resolve to the home path when creating a directory or file path because the value is being used as a string. You cannot pass any value to the$HOME
variable using expressions in a pipeline level. (CDS-96691, ZD-62711)
Fixed issues
-
There was a recent change to the expression resolution fallback logic to call the fallback only for customers who has the feature flag,
CDS_DISABLE_FALLBACK_EXPRESSION_ENGINE
set to true. The current value is false for everyone. However, during this change, the fallback was not being called for customers who has set the feature flag to true, causing the expression to fail. This issue is fixed by correctly calling the fallback in case of failures and adding UTs to handle it. (PIPE-19013, ZD-63175, ZD-63194) -
Fixed an issue where pipelines with IDP stages were not generating the correct pipeline execution URL. (PIPE-18322, ZD-60366)
-
Custom stages were not displaying wait status for the Approval step. Earlier, the stages were not marked as waiting when the steps went into waiting status. Now, the stage nodeExecution is marked as waiting when the step goes into waiting status. And, the stage is resumed when all the steps under that stage are resumed. (PIPE-15829, ZD-61238)
-
Input sets displayed wrong path even when the correct path exist. This issue is fixed. Now, selecting an infrastructure definition from a repository that is different from the parent input set's repository will no longer return an error. (CDS-96589, ZD-62984)
-
Unable to send
GitEntityFindInfoDTO
for Docker artifact resources. This issue occurred because the Git metadata was not being passed as a query parameter in API calls. This issue is resolved by making backend changes to resolve the YAML. (CDS-96379) -
The error that appeared when a pipeline was missing a reference to Harness resources like service, environment, etc, appeared only for a small amount of time and didn't allow users to see necessary details. This issue is fixed. The error message now stays until users close it manually. (CDS-96302, ZD-62677)
-
Trigger activity history cleared when updating trigger. This issue is fixed by changing the Trigger Activity History retention duration to 6 months instead of 7 days. (CDS-95729, ZD-61782)
-
The nav header panel of the Harness UI was not collapsible. The panel is now collapsible and appears when you hover over it. (CDS-95698, ZD-61706, ZD-61707)
-
Artifact builds were not loading if its entities were in a different repository. This issue is fixed.(CDS-95196, ZD-60805)
-
The fixedValue field is mandatory for backend as well now. Earlier, Harness has validations in place to ensure that fixedValue in the UI is not null. This change is implemented in the backend as well for consistency for API contract from backend as well as UI. (CDS-94414)
-
Multiple infrastructure definitions were pointing to the same underlying infrastructure and deployed the same service, and doubled the instance count. This issue is fixed. (CDS-88736)
You can run the following API to check duplicate instances in your account.
curl --location 'https://app.harness.io/gateway/ng/api/instancestats/duplicates?routingId=<accountId>&accountId=<accountId>&orgIdentifier=<orgId>' \
--header 'Authorization: Bearer <token>'You can refer to
instanceKey
to identify the duplicate instance. For example, for Kubernetes, the format isK8sInstanceInfoDTO_<podName>_<namespace>_<imageName>
.
Version 1.37.6
Fixed issues
- Fixed an issue where users were not able to configure Job Parameters for a Jenkins job. (CDS-95864, ZD-61927)
- The Feed field in the Artifact Details page for Azure artifacts threw a null pointer exception error. This issue occurred due to the presence of a whitespace in the Azure project name due to which Harness was not able to parse the URL as an URI object. This issue is fixed by encoding the URL to convert the whitespace in the project name to
%20
as per the UTF-8 standard to avoid the null pointer exception. (CDS-95752, ZD-61696)
Version 1.36.5
Early access
- We have introduced a Patch step for Kubernetes deployments to make changes to specific resources or workloads in a Kubernetes cluster without affecting other fields. This step helps Spinnaker users migrate to Harness. Spinnaker has a stage type called Kubernetes Patch. This feature provides parity with that. This feature is currently behind the feature flag,
CDS_K8S_PATCH_STEP_NG
. Contact Harness support to enable it. This feature also requires Harness Delegate version 24.04.82804 or later. For more information, go to Kubernetes Patch step (CDS-86983)
Fixed issues
- Fixed an issue where the new Nav in the Harness NextGen UI was unable to hide the Launch FirstGen button. (CDS-95845, ZD-61778)
- Fixed an issue where the expressions field did not render properly. Harness now supports multi-line text fields for expressions. (CDS-95843)
- Queries in
harness-prod2-cvng.verificationJobInstances
were scanning too many documents and raising the CPU utilization. This issue is fixed by adding moreverificationJobInstances
indexes. (CDS-95840) - Fixed an issue where the drop-down capability for the Region field in the AWS Serverless Lambda Infrastructure Details page was missing. (CDS-95726)
- Unable to add tags to pipelines in Terraform. This issue is fixed by updating the tags description in the pipeline CRUD API Terraform docs to highlight that the value passed in tags should match the value passed in YAML. (PIPE-18705, ZD-62221, ZD-62415, ZD-63124)
- The child steps of a retried step group were not being marked as retried. As a result, the status of these retried child steps was incorrectly considered in the final status calculation of the pipeline. The issue is fixed now to correctly mark the child steps of a retried step group as retried. With this change, only the latest node executions for children of step groups with the retry step group failure strategy will be considered in the final pipeline status calculation. (PIPE-16925, ZD-61196,68060)
April 2024
Version 1.35.4
Fixed issues
- The fetch tag to fetch the repository for the Artifactory repository type expired after 90000 milliseconds. This timeout occurred because the fetch task has a hardcoded timeout limit of 90000 milliseconds. This issue is fixed now. Earlier, while fetching the repositories for Artifactory, to fetch the package type Harness made API calls to each repository to get the package type. With this change, if the API response has package type, we avoid the extra API call. (CDS-95485, ZD-60868)
Version 1.34.2
Early access
- You can now store Terraform Plan files on Harness Delegate temporarily. This feature is behind the feature flag,
CDS_STORE_TERRAFORM_PLAN_FILE_LOCALLY_ON_DELEGATE
. Contact Harness Support to enable this feature. This feature requires Harness Delegate version 24.04.82705 or later. For more information, go to Store Terraform Plan on Harness Delegate. (CDS-85209)
Fixed issues
- The create trigger API response was updated to a new version without notice. This issue is fixed by updating the field
stagesToExecuteV2
back tostagesToExecute
in the create trigger API response. (CDS-95526, ZD-61419) - The expression,
<+lastPublished.tag>
did not fetch the latest artifact version for Nexus3 repository. Nexus3 artifact sources with<+lastPublishedTag>
were relying on lexical ordering instead of the order of tags causing this issue. This issue is fixed by honoring the order of tags. (CDS-95312, ZD-61173) - User profile appears at the new navigation in the Harness UI allowing users to create keys at an organization and project level. This issue is fixed by removing the project and org identifiers from the API payload when creating API keys. (CDS-95250, ZD-61325)
- Fixed an issue where the snapshot build was failing due to erroneous changes in Continuous Verification (CV). The GRPC registration from IDP, IACM, and CV services now include server interceptor class bindings from the application itself. (CDS-95241)
- Queries in
harness-prod2-cvng.verificationJobInstances
scanned 35K+ documents but returned none. This issue is fixed by adding more query indexes forVerificationJobInstances
. (CDS-95219) - Harness CV has reclassified the
javax.ws.rs.NotFoundException
from error to warning. (CDS-95136) - Fixed an issue where notification for the Verify step failure was having unresolved variable in error details. (CDS-94886, ZD-60617)
- Fields from multiple manifest other than the primary manifest appeared in the pipeline when using multiple Helm charts. This issue is fixed. Now, only fields of the primary manifest appear in the run pipeline form. If primary manifest is not selected in pipeline, then Harness will prompt you to select the primary manifest in the run pipeline form. (CDS-94460, ZD-59994)
- Fixed an issue where infrastructure did not appear as a runtime input for chained pipelines in the run pipeline form. (CDS-94272)
- New Relic verification did not work as expected. The last null entry was leading to an error when decoding the response object. A code enhancement to ignore any null entry fixed this issue. (CDS-94113, ZD-59612)
- Fixed an issue where service inputs did not appear in template inputs for nested templates where the service was fixed inside the nested template. (CDS-92836)
- IDP and other new modules did not appear in the default module list. This issue is fixed. If a feature flag is turned on for a module, it will now appear in the module selector in the new navigation experience. (CDS-85185, ZD-59478)
- The Retry Step Group failure strategy option appeared for steps. This option should appear only when selecting failure strategy for a step group. This issue is fixed. We also have the failure strategy, Proceed with Default Values, applicable for limited scenarios. This option will now appear in the failure strategy list wherever applicable. (PIPE-16868, ZD-61102)
Version 1.33.5
Breaking changes
- The RepoName, FilePath, and ConnectorRef parameters are marked as required in the Git import APIs for pipelines, templates, input sets, services, environments, infrastructure definitions, and service overrides. These parameters were optional before but made mandatory now as the APIs require these to work. (CDS-94245)
New features and enhancements
- Harness will enable Overrides (V2) in your accounts and migrate your existing Overrides (V1) to the new V2 experience on 20 April, 2024. Contact Harness Support for queries or assistance regarding the migration.
Fixed issues
- Fixed an issue where the Nexus 2 artifactory registry drop-down listed duplicate group IDs. (CDS-94376, ZD-60041)
- Terraform deployment failed when using AWS connectors (IRSA credential type with assume cross account role) in Terraform steps. This issue occurred when the Terraform Apply step was trying to assume a different role from the AWS backend configuration. The default duration for assuming the role in the
aws-java-sdk
is 15 minutes. When the Terraform Apply step exceeded 15 minutes, the Terraform output threw an error. This issue is resolved by introducing a new Harness variable,HARNESS_AWS_ASSUME_ROLE_DURATION
. In Terraform steps, you can now set the environment variable value to override the default duration to assume AWS roles. This item requires Harness Delegate version 01.04.82700. For information about features that require a specific delegate version, go to the Delegate release notes. (CDS-94355, ZD-60095) - Unable to load the AWS resources during an Amazon ECS Blue Green deployment. The API call for fetching elastic load balancer call was not being made in the stage causing this issue. This issue is fixed now. (CDS-94084, ZD-59734)
- The dashboard widget in the Deployments Dashboard showed a mismatch in the executions count. This issue is fixed by synching the missing data for dashboards. (CDB-1599, ZD-60164)
- Fixed an issue where Harness was unable to integrate Google Cloud Operations with Continuous Verification (CV) for service monitoring. This item requires Harness Delegate version 01.04.82700. For information about features that require a specific delegate version, go to the Delegate release notes. (CDS-93479)
- Fixed an issue where users were unable to create Zendesk tickets for the Platform module. (CDS-95061, ZD-60650, ZD-60734)
- Continuous Verification (CV) telemetry failed if any one of the publish data failed. This occurred because all telemetry information is present in the same try catch block. This issue is fixed by separating telemetry publish events in different try catch blocks. (CDS-94962)
- Fixed an UI issue where breadcrumbs in the Pipeline Studio pages overlapped. (CDS-93678)
- Updated the behavior of the Scale step to publish all workload pods as new pods after step run as the Scale step is used to scale pods as well as change traffic on the pod itself. (CDS-91534, ZD-54319)
Version 1.31.4
Early access
- Harness has introduced a Mark as Failure button on the Pipeline Execution Details page to send a Failure interrupt to all currently executing stages of the pipeline, triggering their Failure Strategies. This functionality is behind the
FF CDS_MARK_PIPELINE_AS_FAILURE
. Contact Harness Support to enable this feature. For more details, go to Mark pipeline as failed.(CDS-72037)
Fixed issues
- For SSH and WinRM deployments, the delegate selectors specified for connectors in Azure and AWS infrastructure configurations weren't adhered. The fix for this issue is made available behind the feature flag,
CDS_SSH_WinRM_USE_CONNECTOR_AND_SM_DELEGATE_SELECTORS
. Contact Harness Support to enable this fix. (CDS-92717, ZD-58399) - Harness applications were slow when running pipelines using the
iam-roles
API. This issue is fixed by calling the API on demand to avoid slowing down the initial load of the applications. (CDS-94281, ZD-60078) - Pipeline execution feature usage were not displayed properly in the feature usage dashboard when filtered by organization. This issue is fixed. (CDS-93831)
- Fixed an issue where Harness was unable to find Nexus artifacts' tag version. The artifact Ids were set to
<+input>
internally even though Harness UI supplied the fixed value from APIs causing this issue. Tags are now being listed properly. (CDS-93810, ZD-59568) - The Nexus 3 artifact triggers returned a null pointer exception. This issue occurred because the Nexus 3 artifact source group Id was empty. This issue is fixed. (CDS-93472, ZD-59186)
- The Command Script step with secret environment variables failed during rollback because the step was unable to fetch the secrets. This issue is fixed. (CDS-93264, ZD-59173)
- The logs explorer for a Kubernetes deployment displayed an error,
Execution Mode not found for Facilitator Type RESOURCE_RESTRAINT
. This is not an error but an information. This issue is fixed by changing the log to info with an added message,This must be a custom Facilitator Type
. (CDS-94001) - Users were able to see templates belonging to a specific organization in another organization. This issue occurred because Harness was fetching all templates of all organizations in one account. This issue is fixed by adding a filter to the existing query to display all templates of the organization where the project exists. (CDS-93721)
March 2024
Version 1.30.7
Early access
-
Harness has updated the logic for inheriting permissions from containerized step groups to steps. Currently, this feature is behind the feature flag
CDS_CONTAINER_STEP_GROUP_RUN_AS_USER_AND_PRIVILEGED_FIX
. Contact Harness Support to enable the feature. (CDS-79356)The new logic follows these steps:
- Use the Run Step configuration.
- If there isn't a Run Step configuration, use the Step Group configuration.
For more information, go to Permissions inheritance logic from containerized step groups to steps.
-
You can create a multi-phase workflow that progressively deploys your new instances to a new ASG incrementally using the ASG Phased Deploy step when creating a Canary deployment. For more information, go to Canary phased deployment.
Limitations
- Pipelines won't run if the default value of variables start with
*
. You can use*
within" "
as a workaround. (CDS-92820)
Fixed issues
-
Harness UI is throwing 404 errors in random pages. This issue is fixed by adding redirects that will help the URLs work in both old and new Harness Nav. (CDS-94036, ZD-59462)
-
The Git cache was getting reset during every webhook event. This bug resulted in cache misses causing increased load time for remote entities. This issue is fixed. (CDS-93603, ZD-59392)
-
Saving a chained pipeline with a templatized child pipeline in a new branch returns an error. This issue is fixed by setting the child pipeline's required info in the Git context so that the template can be retrieved from the current branch. (CDS-92772, ZD-58383)
-
Harness listed all environments or infrastructures when trying to select environment and infrastructure based on specific custom deployments. This issue is fixed by removing the version label was absent in the infrastructure listing API. Filtering is now done based on deployment template identifier. (CDS-91800, ZD-57907)
-
User data related to some churned Harness accounts were not being deleted even after 90 days after service termination. This issue is fixed by creating an annotation based framework that allows Harness to cleanup data of expired Harness accounts. (CDS-90914)
-
Setting up a monitored service using cloud metrics from the Google Cloud Operations health source is unable to list dashboards to build query. This item requires Harness Delegate version 24.03.82600. For information about features that require a specific delegate version, go to the Delegate release notes.(CDS-92355)
-
The wrapper for matrix nodes appeared successful even if the matrix nodes were skipped. This issue is resolved by adding a check to see the status of a strategy node's children. If all child nodes are skipped, the strategy node will be skipped now. (CDS-92727)
-
Marking failure strategy for a step with in a stage as ignore failure did not work. The stage status was not shown as success of the step in the stage failed. This issue is fixed. Now,
IgnoreFailed
status is considered as Success for sending the stage notifications. (CDS-92057, ZD-58259) -
Stage and pipeline are not marked as ResourceWaiting even if the stage is waiting on the resources. This issue is fixed by creating a
ResourceWaitingStepStatusUpdateHandler
logic that will mark the stage and pipeline asResourceWaiting
. When the step resumes, the existinghandleStepResponseInternal
logic marks the stage and pipeline as running. (CDS-87769) -
In the Serverless Prepare Rollback image, the
serverless print
command is used to resolve all Serverless variables and fetch custom stack name, if provided in the Serverless YAML. Earlier, even if theserverless print
command failed, Harness did not fail the step, and considered the stack name as<serviceNameInYaml> - <stageNameSpecifiedInHarnessInfra>
. This issue is fixed by updating the Serverless Prepare Rollback step image version toharnessdev/serverless-preparerollback:3.30.1-2.0.0
. With this new image, Harness will fail the step if theserverless print
command failed. (CDS-87684)The following changes are implemented as part of this new image:
- The
serverless print
command would not fail due to plugins being specified in the Serverless YAML. With this new image, Harness does an NPM install (on package.json) before running theserverless print
command. Make sure that the plugins are specified in the package.json to install them before running theserverless print
command. Now, if your plugins are specified in the package.json at the same level where your Serverless YAML lies, your plugins would be installed, and correct stack name from Serverless YAML would be fetched. - If the
serverless print
command still fails, Harness will fail the step and will not assume the default stack name,<serviceNameInYaml> - <stageNameSpecifiedInHarnessInfra>
. - Harness will consider the default stack name when stack name is not specified in Serverless YAML, and when the
serverless print
is successful.
- The
-
Fixed an issue where Bitbucket connectors with API access enabled sometimes became unresponsive. This item requires Harness Delegate version 24.03.82600. For information about features that require a specific delegate version, go to the Delegate release notes. (CDS-93298, ZD-56619, ZD-58844, ZD-59381)
Version 1.29.6
Early access
-
You can select a different infrastructure when propagating an environment from a previous stage. For more information, go to CD documentation. (CDS-85143)
-
A Metrics tab is added to the individual service dashboard to provide details of the selected service's deployments, failure rate, deployment frequency, active service instances, the underlying environment and infrastructure for the service instance, and a summary of instances over a selected period. Currently, this feature is behind the feature flag
CDC_SERVICE_DASHBOARD_REVAMP_NG
. Contact Harness Support to enable the feature. For more information, go to Individual service dashboards. (CDS-88414) -
Harness now displays the execution context for each step in the Execution Details page along with the inputs and outputs of the step. This enhancement helps debug pipeline executions. Currently, this feature is behind the feature flag
CDS_SAVE_EXECUTION_EXPRESSIONS
. Contact Harness Support to enable the feature. (CDS-91921) -
Harness has now decoupled pipeline execute and pipeline abort permissions. For every pipeline, Harness permits two type of users, one can execute the pipeline and the other abort the pipeline. These two users can overlap if required. Currently, this feature is behind the feature flag
CDS_PIPELINE_ABORT_RBAC_PERMISSION
. Contact Harness Support to enable the feature. For more information, go to Permissions required to abort pipeline. (CDS-86459)noteEnabling this feature flag can take several days because it requires migrating your existing users to this permissions structure.
Fixed issues
- Adding the Fetch Linked Apps step in a PR pipeline failed with the error,
Failed to parse yaml file
. This issue is fixed by improving the error response for the Fetch Linked Apps step. (CDS-93056) - The path validation process for Google Cloud Storage is optimized for faster and efficient validation. Instead of searching the entire storage, Harness now verifies the provided path directly. (CDS-92796, ZD-58789, ZD-59199)
- Rolling back the current version of a service from the Services page did not show to which old version of the service did it roll back to. This issue is fixed by displaying the rollback version on the Rollback pop-up window. (CDS-92461)
- Fixed an issue where Harness was not able to reconcile and refresh pipelines when its services were in a different, dynamically linked repository. (CDS-92169)
- Fixed an issue where a Git branch was being populated in YAML when switching the version of a remote stage template linked to a remote pipeline in the same repository and branch. (CDS-92675, ZD-58750)
- The secret passed from a parent pipeline to a child pipeline was not getting resolved because the expression functor token for the child pipeline is different from that of the parent pipeline. This issue is fixed. (CDS-92434, ZD-58526)
- Users were incorrectly prompted about unsaved changes when viewing variables with default values in Pipeline Studio and Input Sets page. This issue is resolved. (CDS-89117, ZD-57388, ZD-57603)
- When a certain version of a template in use was deleted, the pipeline referring the template threw and error, and did not let the users select an alternate version of the template. As a workaround, users were recommended to edit the YAML directly. Now, this issue is fixed and users can select an alternate version of the template from the pipeline itself. (CDS-87809, ZD-55910)
- The
ap-south-2
region is now supported for use with AWS Secrets Manager. (CDS-92541, ZD-58686)
Version 1.28.11
Fixed issues
- The account level environment broke the GitOps pipeline due to a bug in the account and org level service and environment in the Sync and Update GitOps Apps steps. This issue is fixed. (CDS-92546, CDS-92569)
- The Git primary artifact commits version list didn't appear in the Run Pipeline page. This issue was caused by a recent code change that led to creation of a delegate task that fetched Git fetch files. This issue is fixed by removing the delegate task, and thereby reducing the load time for fetching Git entities. (CDS-92546, ZD-58687)
- Delegate got disconnected when running the Merge step. Delegate selectors were not getting selected based on the priority: Step > Step Group > Stage > Pipeline > Connector. Instead, the Merge steps merged delegate selector with the connector selector. This issue is fixed now. The delegate selectors will now be selected based on the delegate selector priority. For more information, go to Delegate selector priority. (CDS-92001, ZD-57874, ZD-58694)
- Unable to load the pipeline execution logs for chained pipeline executions aged more than 30 days. When fetching child pipeline graphs during parent pipeline execution, Harness fetched the node execution of the parent stage from the database. Node executions have a TTL of 30 days and are deleted from the database after that. Hence, for executions older than 30 days, child graphs won't show up in the pipeline. This issue is fixed by storing the child pipeline execution details in the layout node map of the pipeline stage. This avoids fetching node executions while building the child pipeline graph. (CDS-91367, ZD-57769)
- Fixed an issue where users were unable to search services by ID in service list. (CDS-89587)
- Continuous Verification for Google Cloud Operations logged error for the
resourceName
field. This issue is fixed by changing the identifier in the request body fromprojectId
toresourceName
for data collection tasks as mentioned in the Google API documentation. This item requires Harness Delegate version 24.03.82502. For information about features that require a specific delegate version, go to the Delegate release notes. (CDS-89441) - Scaling down Autoscaling Groups (ASG) rolling deployment was causing downtime. This issue is fixed by updating the AWS Java SDK for ASG utilized in deployments from version 1.12.261 to 1.12.654. Also, Harness has improved the instance refresh operation parameters. Now, for ASG rolling deployments, the default values for the minimum healthy percentage and maximum healthy percentage parameters during instance refresh operations are set to 90% and 110% respectively. This change mitigates downtime during service deployment. (CDS-91335, ZD-57686)
Version 1.27.11
Fixed issues
-
Adding config files or manifests in a Custom stage, the environment step threw an error,
UnsupportedOperationException: Not inside service step or one of it's children
. (CDS-92218, ZD-58321)This issue occurred because there was no option to add services to the Custom stage. This issue is fixed.
-
For Slack and Microsoft Teams, if webhook URLs were provided as secret expressions like
<+secrets.getValue("account.slackUrl")>
, the Harness approval notifications didn't work. (CDS-92077, ZD-58153)This issue is fixed. For more information regarding approval notifications, go to Harness approval notifications to approvers.
-
Creating a Terraform service override returned the error,
ServiceOverride already exists
. (CDS-92071, ZD-58189)The user created a secret without USER_PASSWORD in the Terraform script. During validation, an
InvalidRequestException
was thrown, and Terraform tried to create the overridden entity again causing the error.This issue is fixed. Now, the referred entities in overrides will be validated before creating the override.
-
Fixed inconsistent date format in the Harness UI. (CDS-91975, ZD-58220)
The timestamps in Step and Stage pop-up in the Execution page appeared in a different format compared to the format used in Step Details and Step Logs panes. Now, Harness uses the same format throughout the UI.
-
During pipeline execution, nodes from CD details page did not appear consistently before starting the Verify step even if the Node from CD checkbox was selected. (CDS-91960)
This issue is fixed. Readable messages are now displayed before the Verify step starts.
-
The Amazon Autoscaling Groups (ASG) deployment failed due to load balancer failure. (CDS-91888)
This issue occurred for old ASGs where the target groups health check failed. Target groups health check was not performed when updating the old ASGs as well as during the instance refresh. This issue is now fixed.
-
Updated the Canary deployment Scale step behavior to publish all workload pods as new pods after the step is run. The Scale step is now used to scale pods as well as change traffic on the pods. (CDS-91534, ZD-54319)
-
The Deploy environments and infrastructure in parallel checkbox was missing for filtered list when using multi-environments. (CDS-91472)
This issue is fixed by adding this option for filtered lists.
-
The Include Infrastructure Selector option was missing in the SSH step template. (CDS-91396, ZD-57775)
This issue is fixed by adding the Include Infrastructure Selector field in the Shell Script step and step group templates (for CD deployments) and other templates based on the deployment type.
-
Dynamic provisioner inputs did not appear on the infra entity card when it was set as runtime input. (CDS-90757)
This issue is fixed.
-
The
orgIdentifier
andprojectIdentifier
fields were absent in the service YAML if the service was created inside a pipeline or template. (CDS-88749)This issue is fixed. Now, org and project identifiers will be added to service when it is created within a pipeline or template.
-
The Pipeline Studio view was disabled when switching from Pipeline Studio to YAML view after partially filling a stage or step until the errors in the pipeline were fixed. (CDS-85556)
This issue is fixed by allowing users to return to the Pipeline Studio view if the pipeline is unmodified in the YAML view. Users can also discard the changes made in the YAML view to force switch the Pipeline Studio view.
February 2024
Version 1.26.11
Fixed issues
-
A Command step with looping strategy for a Custom Deployment Template displayed a null pointer exception when the runOnDelegate option was disabled. (CDS-91458)
This issue is fixed by adding a meaningful error message.
-
The Subscriptions card under the CD Activity & Usage page's Trend tab was not loading properly. (CDS-91344)
The date API call got cancelled when its component was being mounted causing this issue. This issue is fixed by making the date API call only after the component was mounted.
The error handling is also improved by displaying a proper error message as part of the failed API response. On instances where a proper message is not present,
Something went wrong
message appears by default. -
Artifactory and Git connectors did not honor Secrets Manager selector. (CDS-91300, ZD-57541)
These connectors did not check the connectivity to the Secrets Manager. Hence, the secrets were not getting resolved on the delegate. This issue is fixed. Now, the connection test also checks if the Secrets Manager is accessible.
This fix is behind the feature flag,
CDS_SERVICE_AND_INFRA_STEP_DELEGATE_SELECTOR_PRECEDENCE
. To enable this fix, contact Harness Support. -
Users were unable to create custom queries that are nor part of the APM metrics as a heath source for monitored services. (CDS-91181, ZD-57562)
This issue is fixed by making the service instance field configurable for users.
This item requires Harness Delegate version 24.02.82402. For information about features that require a specific delegate version, go to the Delegate release notes.
-
Harness did not display dynamically provisioned infrastructure inputs when the input field was set as runtime. (CDS-90757)
This issue is fixed. The provisioner runtime input field now appears in the infrastructure input card.
-
Service variable description did not appear for template input sets and deployment input sets during pipeline execution. (CDS-89650, ZD-57312, ZD-58330)
This issue is fixed.
-
Log verification step failed due to a parsing error. (CDS-89622)
This issue occurred because the string-to-time conversion function in the ANTLR based DSL language did not accept epoch time as a valid input. This issue is now fixed.
-
The CD Activity & Usage page's Trend tab was not working properly for some accounts. (CDS-89394)
This issue occurred due to a
SocketTimeoutException: Read timed out
exception when calculating reports per day or month. The queries timed out, and the fallback to generate the data also timed out.This issue is fixed by redefining the functions to calculate license usage for a given date instead of a date range. The heavy SELECT queries are now moved to the secondary time series database (TSDB). This fixed the timeout issues in the license trends query.
-
Helm manifest runtime inputs for chart versions appear as runtime input in the pipeline execution page, even if the chart version was already provided as a fixed value. (CDS-89158)
This issue is fixed.
-
The Continue button in the Services section for remote services was enabled even when the selected service was not available. (CDS-85658)
This issue is fixed by adding form validation to the service field when:
- Service does not exist in the selected branch for remote services.
- Service does not exist.
Version 1.25.5
Fixed issues
-
ECS services got deleted after the first or second deployment in the ECS Blue Green deployment. (CDS-91499, ZD-57892)
The issue is fixed by adding a condition for active service status.
-
The chained pipeline's input section in the Harness UI did not have the option to fetch manifests from the Git store for runtime config fields. (CDS-91387, ZD-57687)
This issue is fixed now and you should be able to set the defaults correctly.
-
Codeblocks embedded in the Support AI replies were not rendering correctly. (CDS-91364)
This issue is fixed now.
-
Moving a stage in the Step Details panel moved the step details panel for other stages as well.(CDS-91351)
The steps graph in the Execution View is now updated to auto-reset its position when a different stage is selected.
-
Single-service, multi-environment, multi-cluster deployments done using a GitOps PR pipeline rejected some of the clusters. (CDS-90942)
The issue is fixed now.
-
Template settings were not visible in the new Organisation and Account settings navigation page. (CDS-89746, ZD-57373)
In the new navigation page, the Settings cards for specific modules were previously hidden when the corresponding module's license was absent. The issue is fixed. The Organization and Account navigation page is now modified to display all Settings cards regardless of the license status.
-
Logs were not appearing for a rejected Approval step in the console view. (CDS-89267)
The issue is fixed now.
-
Unsaved changes were appearing in the Input Set pages and Pipeline Studio for variables with default values. (CDS-89117, ZD-57388, ZD-57603)
The issue is fixed now.
-
The Harness Approval step allowed the Variable Name field in the Approval Inputs page be blank. (CDS-88673)
This issue is fixed by enforcing proper validation for the Variable Name field.
-
The Pipeline Details tab did not show the Harness Approval Execution step if the Include Stage Execution Details field is unchecked in the Harness Approval step. (CDS-88133)
The issue is fixed now.
-
Unable to select the TLS certificate and key in an HTTPS step. (CDS-88543, ZD-55531)
For TLS connections, you can now select the secrets related to a valid TLS certificate and key in the HTTP step. This feature is currently behind the feature flag,
CDS_HTTP_STEP_NG_CERTIFICATE
. To enable the feature, contact Harness Support.
Version 1.24.7
New Features and Enhancements
- We've introduced a new expression that explicitly provides the trigger name used to initiate the execution. You can now utilize
<+pipeline.triggeredBy.triggerDisplayName>
to access this information. (CDS-87696) - We enhanced the resolution of the working directory. Now you can determine the working directory based on environment variables. This includes variables provided in shell script steps through input variables, as well as those from the host's environment variables. (CDS-87446)
- If a feature flag is turned on for a module it will now appear in the module selector for the new navigation experience. (CDS-85185)
Behavior Changes
- In the blue/green stage scale down step, we used to scale down deployments, statefulsets, daemonsets, deploymentConfig and delete HPA, and PDB resources. During scale down, we updated the field
replicas
to 0. In Kubernetes, if HPA is configured it is not mandatory to define replicas. So when another deployment happens and we apply the same old deployments manifest it does not update the replicas field and it remains set to 0. This results in no deployment even though the pipeline is successful. This issue has not been resolved. Instead, we scale down only DaemonSets and delete deployment, deploymentConfig, HPA, PDB, and statefulset resources. (CDS-88999, ZD-56645)
Fixed Issues
- The Input Set Page breaks while editing the input set when the service input fields have been updated. Now the page will render with the input set YAML. (CDS-91095, ZD-57487)
- Fixed an issue where a Targeted Hosts field was not populated in the case of execution input. (CDS-91071)
- Fixed an issue where the pipeline failed to execute when remote infrastructure was used with a multi-environment deployment. (CDS-90985, ZD-57420)
- Fixed an issue where users couldn’t switch versions for account-level templates. (CDS-89602, ZD-57282, ZD-57296, ZD-57320)
- The CDK Deploy step was not handling the null output map when the provided image was not created from the Harness aws-cdk-plugin base image: https://hub.docker.com/r/harness/aws-cdk-plugin/tags. This issue has been resolved, the null output map is handled. (CDS-89569)
- In a few places in the UI, expressions when entered, were not rendered in a consistent colour. This has now been fixed to be consistent.(CDS-89391)
- Fixed an issue with the Edit File Store flow UI. (CDS-89094)
- The email step body used to render the field's HTML content. Now it will render raw HTML. (CDS-88842, ZD-56452)
- Earlier, the input sets that have nested components (such as templates) hosted on GitHub were taking a long time to fetch. Now this time has been significantly reduced. (CDS-88426, ZD-56180)
- Initially, the Jenkins build step didn't support logs for more than 5 hours. Therefore for builds taking longer than 5 hours, console logs were not streamed and consequently not saved. Now, the support for the console logs has been extended to 1d for the Jenkins build step. However, the log length limit is 5k, meaning only the last 5k logs will be streamed and saved. (CDS-88262)
- In Artifact Triggers, the modifications to the secret in the connector were not recognized. With this update, changes to the secret in the connector will now be detected, so that users don't have to manually disable and re-enable the trigger. (CDS-86775, ZD-55126)
Version 1.23.5
Fixed Issues
- Issue while selecting VPC if the name is empty. VPC name is optional in the AWS console but the id is always there, but if the name is empty it is not getting selected. The issue is fixed now and instead of
vpc.name
it will get displayed asvpc.id:vpc.name
. (CDS-89297) - Application logs used to get printed in TAS deployment logs, the issue is fixed by introducing a new environment variable
DISABLE_CF_APP_LOG_STREAMING
and when it’s set to true it will redact all application logs, providing users with more flexibility in managing log visibility. (CDS-89172, ZD-56849) - Parent pipeline has a chained pipeline stage and both the parent and child pipelines are in different organizations. While running the parent pipeline, the user group selection for the child approver user group displays parent pipeline organizations. The issue has now been fixed, and users should be able to select the correct user group(s) of the child pipeline that belong to a different or the same organization. (CDS-89001, ZD-55502)
- When service was selected from Projects > Service > Select Service it used to open the configuration tab and when service was selected from Deployments > Services > Select Service it used to open the summary tab. The issue for this different behavior is now fixed and now via both ways, users will be taken to the service's summary tab. (CDS-88692, ZD-56528)
- Jenkins
jobParameter
was getting added to the pipeline even if it was not a runtime input in the template. The issue is fixed now andjobParameter
will not be added automatically. (CDS-88380, ZD-55212) - Wrong target groups were getting attached when multiple load balancers were used with the same load balancer name. The issue is fixed now. (CDS-88229, ZD-55701)
- When the service is marked as runtime in a child pipeline and then configured from the chained pipeline inputs tab, the service input fields are left as runtime. The Trigger Input panel and Input-set form do not properly prompt for service input. This issue has been resolved. (CDS-87983, ZD-55917)
- Issue with missing expressions and inconsistent suggestion placement during code scripting. The issue is fixed now in code editors like Shell Script to render a tooltip to view the complete suggestion value. (CDS-85027)
- Improved the error messaging for the AWS SAM step when an incorrect expression or reference led to no image being found. (CDS-84058)
- Selecting the secondary splunk query page would auto submit rather than letting you modify the second query. You will now be able to modify the second query without submitting automatically. (CDS-89153)
Version 1.21.6
Hotfix
- Fixed an issue with infrastructure definition to reconcile inconsistencies. (CDS-89314)
Hotfix version 81614
-
Recent changes to enable Harness to evaluate delegate selector expressions at stage runtime caused pipelines to fail. (CDS-85692, ZD-54495)
Harness has fixed this issue by reverting the changes.
January 2024
Version 1.22.3
New features and enhancements
-
Trigger with empty pipelineIdentifier is being saved in DB (CDS-88191)
- Previously, A trigger with an empty pipelineIdentifier will never work, but we still saved it in the DB.
- A validation enhancement has been implemented, ensuring that the pipeline identifier cannot be empty in the trigger YAML during trigger creation or updates.
-
Remove application details from NewRelic if it is empty (CDS-88190)
- When user is configuring NewRelic health sources, if Performance metric pack is unchecked,
Application details
will not be available. In this case, from frontend applicationId details are removed in the service request which will be sent during create/update.
- When user is configuring NewRelic health sources, if Performance metric pack is unchecked,
-
Stage Selection component is being moved to Pipeline Input tab from Configuration Tab (CDS-72890)
- When configuring Triggers, the Stage Selection component has been moved to Pipeline Input tab from Configuration Tab.
-
Show accountId in Switch Account screen(CDS-88728)
- Enhanced the Switch Account experience to show more data i.e
AccountId
.
- Enhanced the Switch Account experience to show more data i.e
Fixed Issues
-
UI displays an error for deployments that are awaiting manual approval. (CDS-88625, ZD-56498, ZD-56500)
- Previously, deployments would display an error when they were waiting for manual approval.
- A conditional was updated to handle the null check for the approval message, fixing the issue.
-
Add support to fetch primary manifest identifier when there's one helm manifest (CDS-88469)
- Previous Behavior: The expression
<+manifestConfig.primaryManifestId>
was used to resolve for the case of multiple helm charts configured in service. - The similar expression can be used to leverage single helm chart configured in service to use helm expression. See our docs for more info.
- Previous Behavior: The expression
-
Receiving Unauthorized errors in between steady state checks, intermittently (CDS-88446, ZD-56104)
- Issue occurred when using GCP and a GCP access token.
- It occurred when the access token expiration overlapped with steady state check (watch) API calls.
- The issue is fixed now.
-
Only ten Harness Delegate connections to application servers are successful. (CDS-88377, ZD-56296)
- On the back end, delegates can only perform connectivity tests for up to 10 hosts per batch.
- Implemented a UI restriction to align with this backend limitation.
-
Only ten Harness Delegate connections to application servers are successful. (CDS-88377, ZD-56296)
- On the back end, delegates can only perform connectivity tests for up to 10 hosts per batch.
- Implemented a UI restriction to align with this backend limitation.
-
K8s Async Steps - Invalid task type exception has been thrown when task parameter is not provided (CDS-87708)
- Invalid task type and Null Pointer Exceptions were thrown instead of marking the Step as Skipped.
- The step will now be correctly marked as Skipped, fixing the issue.
-
Github release trigger not working as expected because UI didn't show the Conditions (CDS-87647, ZD-55832)
- There were inconsistencies in webhook trigger payload conditions in YAML and Visual views with the event type.
- This has been fixed. Visual and YAML views will show consistent behavior between them.
-
Support use of ‘#’ for branch names (CDS-87468, ZD-55625)
- Previously, certain special characters were not supported by GET calls.
- From now on branches that have special characters such as '&' and '#' will be supported by GET pipeline calls for Remote entities.
-
ServiceNow approval conditions dropdown gives invalid values (CDS-86809)
- Previously, an approval conditions dropdown menu was auto-populating with an invalid [object Object] value or other invalid values.
- The issue is fixed now.
-
Unable to select a new pipeline version. (CDS-87809, ZD-55910)
- We found an error in the flow where a version of an in-use Template is deleted. When that happened, the referring Pipeline or Template threw an error and did not let you select an alternate version of the Template.
- We'd earlier suggested editing the YAML directly to work around the issue. The bug has now been fixed, and you should be able to select an alternate version of the Template from referring Pipelines/Templates now.
Version 1.21.5
New features and enhancements
- Grouping and Collapsible Support for Overrides(CDS-82376)
- Overrides are now grouped by information in their configurations.
- They are now collapsible, and thusly, are easier to search through.
Behaviour change
- Delegate selectors are not getting honored for any of the plugin steps.(CDS-85489)
- Previous behavior: Until now, there was uncertainty in the assignment of plugin steps to delegates. If a step was set to use a specific delegate (D1), it may or may not have actually used that delegate. Consequently, the pipeline could run successfully, even if the step ended up on a different delegate (D2). After the upcoming fix, the plugin step will consistently be directed to the configured delegate (D1). However, if D1 faces challenges such as lacking capabilities, permissions, or network policy issues to run the task, the current pipeline will begin to fail.
- If pipelines start to fail due to delegate issues after this update, make sure your delegate selectors are set properly.
Fixed Issues
-
Making edits to more than one variable simultaneously only applied the changes to the last variable in the list(CDS-88198, ZD-56156)
- Previous Behavior: Making edits to more than one variable simultaneously only applied the changes to the last variable in the list.
- The issue only occurred in Template Studio for pipeline templates, not for stage or step group templates. The issue is fixed now.
-
Http step with mtls not working(CDS-87547,ZD-55531)
- Previously, Some customers reported an error trying to use the HTTP Step with MTLS. This was caused due to an exception during the delegate capability check for HTTP step; we will now additionally validate the delegate to fix the problem.
-
Pipeline was failing with delegate error(CDS-87440,ZD-55387)
- Expected behavior: Users can fetch JSON format in the delegate using curl command and the same should work in UI
- Previous Behavior: The JSON format was fetched using curl in the delegate but the same was not working in the UI.
- The issue is fixed now.To address intermittent capability check failures for an internal URL, the HTTP step's connectivity check timeouts have been increased from 15 seconds to 30 seconds. Users can expect improved reliability in scenarios where intermittent failures were previously encountered.
-
Harness bidirectional sync webhook feature not working(CDS-85694,ZD-54338)
- Previous behavior:- The problem involved the failure of the API when the source or target commit ID was NULL. Furthermore, unrelated PUSH webhook events from Github, triggered during create or branch operations, were incorrectly marked as errors in the UI
- These events are unrelated to bidirectional GitExperience processing and will now be disregarded instead of being flagged as failures.
-
WimRM connector changed to SSH connector when the template was added to the pipeline. (CDS-85388)
- Previous Behavior: If a stage template was created with a WinRM connector and then used in a pipeline, the template inputs would display the SSH connector attribute instead of WinRM connector.
- This issue is fixed now. The type of connector selected will remain consistent throughout the platform.
-
Template Issue not being displayed in the pipeline(CDS-84490,ZD-53823,54260)
- Previous Issue: There was an intermittent issue of Template Inputs not being displayed in the Pipeline Editor
- This issue is now fixed.
Version 1.20.9
Fixed Issues
- Branch selector dropdown not populating in Harness code repo: issue arises when entity is absent, resulting in 'no entity found' page. (CDS-87788)
- Previous behavior: When attempting to access an entity stored in the Harness code repository and encountering a "no entity found" page, the Branch selector dropdown was not populated with the branches of the Harness code repository.
- This issue is now resolved. The API calls are made correctly and branches are now populated.
- Users are not able to click hyperlinks in Harness approval message. (CDS-87675, ZD-55826)
- Previous behavior: If the user has a message with an HTTP URL, the HTTPS URL is not a clickable URL in the message displayed in the Approval step.
- The issue is fixed by adding logic to render clickable links within the text. If any URLs or hyperlinks are present in the approval message they are converted to clickable links.
- Issues while pulling tags of images in Github Container Registry when they have
/
inside the artifact name. (CDS-87457)- Previous behavior: While configuring the artifact source, if the name of the image contained a
/
, then the image versions could not be pulled. This has been fixed. Image versions are now retrieved. - The issue was resolved by replacing
/
in the package name to%2F
. Without this change, the REST API was failing to list the tags.
- Previous behavior: While configuring the artifact source, if the name of the image contained a
- Issue with template inputs not showing up (CDS-84490)
- Previously, there was an issue where template inputs were not showing up in the Pipeline Editor due to an API issue.
- Fixing this caused another, worse more common error where the platform would get stuck in an infinite API call loop.
- The template input fix has been reverted fixing the inifinite API call loop issue.
Version 1.19.6
Behavior change
-
There is a change in the permissions associated with Overrides V2:
- Previously: for service-specific, service, and infrastructure-specific overrides, the environment Create and Edit permissions were required.
- Now: the environment Create and Edit permissions are not required. Only the service Create and Edit permissions are required.
- Here is the comprehensive list of permissions required across different types:
- Service and infrastructure-specific: New, edit, clone, and delete actions:
- Service permission:
Create/Edit
- Service permission:
- Infrastructure-specific: New, edit, clone, and delete actions:
- Environment permission:
Create/Edit
- Environment permission:
- Service-specific: New, edit, clone, and delete actions:
- Service permission:
Create/Edit
- Service permission:
- Global Environment: New, edit, clone, and delete actions:
- Environment permission:
Create/Edit
- Environment permission:
- Service and infrastructure-specific: New, edit, clone, and delete actions:
-
This is a change in behavior of Rerun execution, when a Matrix is involved. (PIPE-14601)
When you select Rerun from Last Failed Stage, the run automatically starts from the last failed stage. If there are failed stages in a Matrix/Loop, the execution begins from only the failed stages (skipping the successful ones), and moves on to any others that haven’t run yet.
When you select Rerun from Specified Stage, Harness assumes that you don't want to start from the failed stage. You could start from any stage that ran fully or partially earlier. Harness displays all the stages ran so far, both Success or Failed. If you select a Matrix stage, Harness runs all the stages in the Matrix, based on the axes as provided. If the stage setup changed, Harness picks the newest configuration and runs that. Earlier, only the failed stages ran. Now, Harness runs all of them.
New features and enhancements
- Triggers now map payload attributes with pipeline inputs. (CDS-87039)
-
There are cases where you want to use input sets in a trigger, but provide a different value for the input set (override the default).
-
When a trigger is configured to use input sets, you can now pass input value overrides in the trigger's
inputYaml
field. -
The values provided in the trigger's
inputYaml
field take precedence over any values provided by the input sets. This lets you override the input set values and use, for example, trigger payloads for specific inputs to the pipeline.
-
Fixed issues
- The Shell Script step was terminating when running on VM via SSH. (CDS-87415, ZD-55629, ZD-55690)
- Fixed a Shell Script step issue with SSH where it was failing for newer delegate versions with the error:
Error while reading variables to process Script Output. Avoid exiting from script early: 2: No such file
. - Recent modification made directoryPath an optionally computed field which defaults to the user-provided working directory.
- To address this, the fix involves incorporating logic that ensures the presence of a backslash is in the directoryPath if it's absent.
- Fixed a Shell Script step issue with SSH where it was failing for newer delegate versions with the error:
- Service phase fails to parse a variable value. (CDS-87290)
- There was an issue in the service phase of the stage execution where it fails to render a string variable, and throws the error
Invalid yaml: Malformed numeric value '00:00:00.100' at [Source: (StringReader); line: 36, column: 30]
. This was because variables with time format with milliseconds were being sent without quotes. - Now, string variables with values such as
00:00:00.100
(time in milliseconds) are supported in Service variables.
- There was an issue in the service phase of the stage execution where it fails to render a string variable, and throws the error
- Kubernetes Apply step started failing after upgrading to the current Harness Delegate type (immutable). (CDS-87011)
- When using the
--dependency-update
flag with a Helm chart and Kubernetes Apply step, Harness didn't ignore the unrelated to Helm template output lines. - Harness was trying to interpret some of the Helm template output as a manifest. This resulted in a failure during the step.
- This issue has been resolved. Now Harness will ignore anything unrelated to the manifest output when using the Kubernetes Apply step with the
--dependency-update
flag.
- When using the
- Container Step execution is failing with a delegate connectivity failure. (CDS-87005, ZD-54820)
- Pipelines run for extended periods of time (~20 hrs) resulted in the loss of connectivity to delegates.
- This issue has now been fixed. If the step's Timeout setting is not set, the default delegate task timeout will be 12 hours.
- The Run step was missing from the CD stage when used in the Provision Infrastructure section of Environment. (CDS-86994 ZD-55259)
- Step request was sending the wrong payload to API. This is now fixed.
- Subsequent Google Cloud Function Gen 1 deployments not happening if the first deploy fails. (CDS-86746, ZD-55115)
- Function update was failing because the function state was not stable before deployment and Harness was waiting for it to a achieve stable state.
- Fixed the rollback logic for deployment of Google Cloud Function.
- Unclear error message coming from Azure during Helm deployment. (CDS-85972)
- A Helm deployment to AKS was failing with an Azure permission error.
- For AKS Kubernetes cluster RBAC permission issues, Harness will print out additional hints regarding the Harness connector in question.
- Harness service showing incorrect Helm chart version deployed in Harness UI. (CDS-85856, ZD-54508)
- The Harness service instance dashboard did not reflect the correct Helm chart version when instances were scaled up/down. The perpetual task did not not contain the updated Helm chart information which results in a mismatch of the Helm chart version value for the Kubernetes deployment.
- Fixed this issue by updating the
instanceSyncPerpetualTaskInfo
collection in Mongo every time the Helm chart information is updated.
- Logs not present for the Copy command. (CDS-85662, ZD-54190)
- The call of
saveExecutionLog("Command finished with status " + response.getStatus(), response.getStatus());
on classScriptSshExecutor.java
made the log stream terminate. - Now we are closing the log stream consistently SSH executions.
- The call of
- Unable to enter matrix details in stage template. (CDS-85375)
- When editing the looping strategy setting in a stage template, the strategy editor disappeared arbitrarily. It should only get hidden when the entire strategy YAML is removed.
- This issue has been resolved to ensure the editor remains visible as long as the strategy type (matrix, repeat, etc.) is present in the YAML.