Summary
New Features and Enhancements: 9
Bug Fixes: 20
Feature Flags: 2
New Features and Enhancements
Kubernetes 1.21 support
Codefresh supports Kubernetes 1.21 for on-premises installations.
Security vulnerabilities
We have fixed all known Critical, High, and Medium Priority vulnerabilities identified up to March 2022. This release includes updates to our third-party libraries and services due to these fixes. A Codefresh team member will be in touch with you to discuss the changes that may be needed during installation.
Default image updates for cf services
The current Codefresh Classic release, version 1.1.1, updates default images for several services: cf-mongodb
, cf-redis
, cf-rabbitmq
, cf-postgresql
, cf-nats
, and cf-consul
.
Important: If you have Codefresh version 1.0.202 or lower, to upgrade to the current version and retain the existing images, you must manually update the config.yaml for kcfi before upgrading.
For details, see Backward compatibility with infrastructure services.
High-Availability with active-passive clusters
Enable high-availability (HA) for the Codefresh platform with a two-cluster deployment. For new and existing installations, deploy Codefresh on two K8s clusters, one designated as the active cluster and the other as the passive cluster. Once the passive cluster is configured for high-availability, a simple DNS switch implements disaster recovery.
For details, see High-Availability (HA) with active-passive clusters.
Environment definition enhancements
Environment boards for Helm and Kubernetes support additional options compared to the previous version.
- For Helm boards, you can also define the namespace, in addition to Cluster and Release. Defining a namespace is useful when you have more than one Helm release per namespace or have the same Helm release in more than one namespace.
- For Kubernetes boards, you can define the Release, in addition to Cluster and Namespace.
For details, see Creating an environment.
RBAC support for shared configurations
We now support RBAC (Role-Based Access Control) when creating shared configurations across pipelines. These include shared configurations for environment variables, shared secrets, and generic and encrypted YAMLs.
To enable RBAC support, turn on the filterContextsByABACRules
feature flag.
For details, see Creating shared configuration.
Cross-account push for Amazon ECR
When defining push steps in Codefresh pipelines, you can add steps that push images to different AWS accounts. You need to define the role to pull the image and ensure that the role is configured with the required permissions.
To enable this feature, turn on the freestyleRegistryContext
feature flag.
For details, see Amazon ECR-specific field descriptions in Fields.
Automated purge policy for builds
Remove older builds, including logs, through an automated purge mechanism. When enabled, the purge mechanism is run as a Cron job and deletes builds older than six months by default. You can customize the retention period and the number of builds through environment variables. To also purge logs from MongoDB, in addition to the environment variable, turn on the OfflineLogging
feature flag.
For details, see Retention Policy for Codefresh builds.
Automated termination for ‘Delayed’ builds
Builds in Delayed status are now automatically terminated by the time limit or by number per account, whichever is reached first. Codefresh automatically terminates builds that are delayed for more than seven days. If the total number of builds for the account exceeds 1000, Codefresh terminates the oldest builds.
For details, see Applying filters on the build view.
Bug Fixes
- Helm releases not showing in Helm board.
- Promoting a release through the Codefresh Helm board may break the promotion pipeline
- because of wrong case substitution for keys in Helm values file.
- Removing any trigger from a repo with more than one trigger removes the endpoint from all
- other triggers.
- Limited number of build views per account for pipeline builds.
- Permission denied error when deploying cf-monogb with 4.x image .
- Selecting a different pipeline from the pipeline build list goes to the Workflow tab instead of
- the build list for the selected pipeline.
- Rollback to a previous Helm release results in a 500 Error: Release <release> not found
- though the release is available in the UI.
- OneLogin team-sync issue.
- Long time gap between triggering a build and pods being scheduled.
- In Project > Variables, selecting Import from text and entering values results in empty names
- and values being imported.
- When syncing teams with Google SAML, users in mailing lists are invited to Codefresh.
- Out of memory (OOM) error for Git Ops dashboard.
- Deleting a Git context in Codefresh without deleting the webhook from GitHub causes
- Codefresh to run the build with the deleted Git context.
- Webhook plugin failure.
Feature Flags
filterContextsByABACRules
- Enable RBAC support for shared configuration.
- Default Value: FALSE
freestyleRegistryContext
- Add steps in Codefresh pipelines that push images to different AWS accounts.
- Default Value: FALSE