Production Release Highlights : October 27 2023

Harness release updates
Harness-prod-release-highlights
7 min readOct 27, 2023

An overview of what went into our latest production release.

Platform(PL)

  • use TypeAlias name if present for entityClassName #54594
  • add background migration job for unique, parentId in Projects and Organizations #54449
  • user emails provided in update user group v2 API require user to be converted to lowercase #54448
  • OIDC Token Library Access Token Exchange Implementation #54210
  • Notification client API to process notification trigger request #53996
  • On recording Role audits, adding details of role change. #54342
  • When listing role fixed its referenced by count for each principal type. #54310
  • Fixed role-assignment listing for user #54076
  • Added serviceAccountEmail in GCP OIDC config #54350
  • Centralized notification new entities #53949
  • fix delegate task metrics per account #54128
  • Added FF PL_GCP_OIDC_AUTHENTICATION #54299
  • remove task limit hard check. change to log error #54271
  • Redis Mode support for DelegateTaskFailOnDMS Iterator #54278
  • Added public endpoints for Harness OIDC provider #54084
  • Fixing Resource group and role update issue #54252
  • Added UniqueId in the OutboxEvent For Project and Organization #54227
  • add index to support deletion for a notification for an accountId #54184
  • Added oidc jwks service to read/write of OidcJwks #53871
  • Adds processing time metrics for user group events #54144
  • Adds admin api for generating acls using account and roleassignment ids #54142
  • Create and Modify Indexes in order to support better querying over audit events collection #54092
  • Adds metrics for outbox event waiting time #54148
  • Fixes decryption issue for secret value with curly braces #54135
  • project clears out after choosing org on query #18614
  • QA hotfix — Added missing ‘/’ in environment settings route #18597
  • overlapping secrets qa hotfix #18550
  • secret name overlap on list view #18548
  • add serviceAccountEmail field to OIDC #18529
  • show default Secret Manager for SMP #18500
  • fixed an issue with sort filter of delegate listing page #18448
  • Mocked useGetTasksLog in jest tests #18469
  • refactored globalResponseHandler and handled 401 use-cases better #18440
  • refactored globalResponseHandler and handled 401 use-cases better #18435

Continuous deployment (CD)

  • bug fixes for supporting remote services #54577
  • secret resolution for custom artifact input variables #54570
  • Handle Empty Environment & Infrastructure values for Custom Stage #54551
  • fix failing migrations for timescale #54425
  • Fixed resolving values manifest template for Serverless V2 #54388
  • Add Junits for PollingServiceImpl in triggers #54359
  • fixing approval functor for approval inputs #54407
  • Store resolved expressions in PipelineExecutionSummaryEntity.resolvedUserInputSetYaml #53850
  • adding skip condition to command steps #54405
  • Set the stage/step name from originalNodeExecution instead of identityNode in rety-failed-pipeline with matrix #54349
  • Adding support for commit id and tag in DownloadManifests Step #54318
  • Pipeline executions waiting for Jira approval are showing as running #54341
  • Error message improvement #53979
  • fixed looping strategies for container step group #54345
  • skip state storage #54225
  • rolling rollback async changes #54362
  • Reverse stage order in yaml for post prod rollback to enable usage of expressions of executed stages #54273
  • FF Addition for InputSets Rbac #54371
  • k8s scale step — correct pod list args order #54369
  • Publish secrets runtime usage for Apply step #54193
  • fix connectors, cdstage and tags handler issues #54302
  • Fix generate hash method if using oc resources #54264
  • create async K8s scale step #54364
  • Added Contract changes v2/environmentInputYamlAndServiceOverrides Metadata API to unblock UI #54308
  • adding null check #54352
  • Add gauge metric recorder #54356
  • Introducing InstrumentedExecutorService for pipeline-service #54265
  • Dont trigger on review ready action when any action is selected in trigger #54331
  • Updated Secret rendering for ASG and Elastigroup swimlanes #54217
  • HF for CDS-75228 Values from values.yaml not getting replaced in the templates.yaml #54340
  • Fix case of looping strategy configured in the Barrier step #54205
  • caching ECR token #54188
  • Remove ambiance from expression engine #54190
  • Support for repo based filtering for events listing #54291
  • move inputs to service layer and add git info #54309
  • Create Open API Endpoint for V1 Templates Runtime Inputs API #54110
  • Add support for V1 static schema for templates for V1 schema parser #54186
  • fixing notify event count query #54269
  • Code to show sync activity for input sets #54297
  • support for retry interval in api outcome #54247
  • Added compiled ASCII pattern for removing non ASCII characters from YAML #54248
  • move error logs to warn for nexus and azure #54287
  • remove static schema API for templates #53326
  • Remove CDS_BG_STAGE_SCALE_DOWN_STEP_NG #54151
  • adding workflow check #54268
  • Is it possible to see details of a pipeline error via API #54109
  • Update polling subscribe method method #54204
  • fix NPE on getting commitId from fetched file #54231
  • Add current k8s release details to release conflict warning #54246
  • - Added disableFreezeNotifyTemplate as a part pipeline-service configuration #54081
  • List InputSets for Project #54106
  • NodeExecutionServiceImpl #53812
  • Fix secret ref extractor when decryptable entities are null #54228
  • Fixing the calculation of correct failed-stage-group while retrying only failed stages in a parallel stages group #54202
  • Remove extra logs to reduce log cost on prod #54101
  • Added unit tests for StepGroupPMSPlanCreatorV2 #54152
  • Preprocessing the pipeline-yaml to add generated id fields before calculating inputs schema #54181
  • Break GitSyncConnectorHelper into an interface and move unrelated methods out #54179
  • Increasing code-coverage for the file PmsExecutionSummaryRepositoryCustomImpl #54192
  • Digest not retrieved when connector username is encrypted #54058
  • Add Config Boolean Variable to Disable Custom Stage In Pipeline Service #54111
  • Adding description and tags fields through yaml if it is empty in ServiceRequestDTO #53917
  • Template file support in SAM #54172
  • Add polling DocId to PolledResponse API #54127
  • fixing serviceref for triggers #54207
  • fix service ref #54129
  • added missing property fields in runtime inputs API #54157
  • Fixing the JsonNodes merge logic in case of multiple merges to be applied #54097
  • Fetch correct node execution using iteration rather than comparing strategyMetadata #53442
  • Log HARNESS_RESOURCE_CLASSES when register resources throws an exception #54091
  • remove FF enum CD_NG_DOCKER_ARTIFACT_DIGEST #54180
  • Ignore InputSet waiting for the count of running executions #54166
  • Update Overrides V2 Get API to return yaml format for spec object #54029
  • Fixing NPE #54162
  • Added unit tests for CiPluginStepInfoProvider #54153
  • Added config gitx webhook to use queue service #54160
  • print warning in case of release conflicts #54115
  • fix for capability check for Github App connector for CloudFormation, Azure and Terraform #54090
  • add repoName filter for service details #53341
  • add junits #54057
  • upgrade Jenkins version to 0.3.11 #54096
  • remote service execution and linking #53943
  • added runtime support for export vars key #18659
  • QA hotfix — Fixed artifacts tab redirection issue #18654
  • Update logic to derive app type in Update Gitops — PROD HF #18628
  • QA hotfix — Using routesv2 in execution and templates pages #18630
  • Prod hotfix — Using routesv2 in execution and templates pages #18629
  • Update logic to derive app type in Update Gitops — QA HF #18627
  • fixed stage variable CRUD operation from Overview Tab via pipeline variables drawer #18619
  • Fixing multiple edits failure for remote services #18612
  • Fix for remote service #18584
  • Add safe check for rendering override types #18575
  • handled navigation for save as new template / save as new version — remote use case #18566
  • remove unused code #18412
  • Improved-post-rollback-message-k8s #18502
  • display error for environmentRef in Runtime view if it is empty #18513
  • Update uicore and snapshots #18528
  • fixed test page on nav 2 pages #18532
  • Disable service instance dropdown field if the options API call is loading #18527
  • Fixed branch dropdown visibility on deployments page and added common route destinations in dashboards #18482
  • parent pipeline within same org & project should not be displayed in the child pipeline selection list #18506
  • fixed runtime validation schema of command unit field for command step + template #18473
  • Fix for missing data in service request #18509
  • delete infralist css file and update infra defination #18512
  • fixed account search bar disappearing after search #18497
  • Increase debouncing #18498
  • parent pipeline within same org & project should not be displayed in the child pipeline selection list #18449
  • Fix for missing data in service request #18505
  • UpdateGitOps App step fixes #18491
  • conditional execution change for stage / step / step-group #18463
  • Remove-skipping-bg-deployment-ff #18499
  • Remove-git-config-files-ff #18426
  • host names should only be displayed for command step type in the pipeline execution graph #18467
  • UpdateGitOps App step fixes #18484
  • add default object in stepGroup template #18461
  • add coverage for account scope selector #18480
  • add scoped services support in infra definition configuration #18466
  • listing page remote support for infras #18477
  • variable not respecting the width in variables window #18478
  • Fixed delegate selector issue in shell script step for template studio #18459
  • display matrix label name rather than name if present in metadata #18441
  • ux and yaml changes for export variables group #18344
  • add default object in stepGroup template #18464
  • support remote environment edit operation #18422
  • Jira update status and transition api integration #17811
  • GA CD_NG_DOCKER_ARTIFACT_DIGEST #18347

Continuous Cost Management (CCM)

  • Fixing anomaly alerts sent through slack and email for default perspectives #54353
  • Removed group by from budget timeseries query #54378
  • Removing previous changes in previous branch and doing the final change in new branch #54140
  • Supporting resource level information on the email and slack notification sent to user for Azure anomalies. #54355
  • Add more resources/policies for AIDA improvement #54223
  • Adding more OOTB policies for migration support #54132
  • Adding all OOTB resources for AIDA improvement #54147
  • Use chat gpt3 or text-bison model and fine tune the prompt #53976
  • Update ce-nextgen, batch-processing and event service build number in helm charts #54185
  • Removing FF RECOMMENDATION_EFFICIENCY_VIEW_UI #54187
  • Code Cleanup — Cloud Integrations #18405

Service Reliability Management (SRM)

  • Remove trend analysis. #54372
  • Added fix for Quarterly SLOs. #54354
  • Added the configuration of slack webhook for the onboarding of FH change source #54322
  • API to fetch services associated with monitored se… #54337
  • mark analysisStateMachine to a different state whose slo has been deleted and terminate the orchestrator #54240
  • Remoce Chaos FF from backend #54346
  • Fix increase in metric costs for orchestrator_state_machine_queue_size_above_five_count metric #54244
  • busy correlation Ids are shared resource and cahce with 1 minute window. Copying will solve for both scenarios. #53962
  • Improving the performance of change listing API #54155
  • fixed change icons not being visible on timeline #18634
  • check before creating store in IndexDB #18526
  • Remove Chaos Experiment from Change source drawer dropdown #18520
  • Adding the authorization token for custom Incident for the onboarding of FH change source #18488
  • Add GraphListToggle component #18443

Continuous integration (CI)

  • Add log for trim #54323
  • added null checks for getSteps method #54320
  • Added async cleanup scheduler for CI manager #54046
  • Update addon/lite-engine version for CI Manager #54311
  • Improve logging for scanner token too long errors #54305
  • Ignore test report upload failure for Run/RunTests step #54235
  • Taking Pod as Base64 object for logging purpose #53975
  • fix cleanup issue #54189
  • Support certs from new location for CI #53370
  • updated vm image versions for win22 #54171
  • fixed the error for depth = 0 in the case of VM #54156
  • Add log and support stream size 25kb #54163
  • Remove DLC S3 feature flag #54145
  • scm service get latest commit should use list commits #53582
  • Add missing `useEffect` depdenency #18388

Feature flags management (FFM)

  • Extract Proxy Keys to FF-UI #18545
  • Configuring routes for Proxy Key Management #18465
  • Default off rule sub-section #18487
  • Default On Rule sub-section #18468

--

--