Revisions are Knative Serving resources that contain point-in-time snapshots of the application code and configuration for each change made to a Knative Service.
You cannot create Revisions or update a Revision spec directly; Revisions are always created in response to updates to a Configuration spec. However, you can force the deletion of Revisions, to handle leaked resources as well as for removal of known bad Revisions to avoid future errors when managing a Knative Service.
Revisions are generally immutable, except where they may reference mutable core Kubernetes resources such as ConfigMaps and Secrets. Revisions can also be mutated by changes in Revision defaults. Changes to defaults that mutate Revisions are generally syntactic and not semantic.
Revisions can be automatically scaled up and down according to incoming traffic. For more information, see Autoscaling.
Gradual rollout of traffic to Revisions¶
Revisions enable progressive roll-out and roll-back of application changes. For more information, see Configuring gradual rollout of traffic to Revisions.
When Revisions of a Knative Service are inactive, they are automatically cleaned up and cluster resources are reclaimed after a set time period. This is known as garbage collection.
You can configure garbage collection parameters a specific Revision if you are a developer. You can also configure default, cluster-wide garbage collection parameters for all the Revisions of all the Services on a cluster if you have cluster administrator permissions.
For more information, see Configuration options for Revisions.
Configuration options for Revisions¶
- Cluster administrator (global, cluster-wide) configuration options
- Developer (per Revision) configuration options