Releases: MShekow/azure-pipelines-k8s-agent-scaler
Releases · MShekow/azure-pipelines-k8s-agent-scaler
azp-k8s-agent-scaler-operator-0.2.1
Azure Pipelines Kubernetes-based agent scaler operator
azp-k8s-agent-scaler-operator-0.2.0
Azure Pipelines Kubernetes-based agent scaler operator
Changes:
- Bump versions of Go and various libraries, fixes all known vulnerabilities
- Fix regex validation pattern for
NormalOfflineAgentDeletionMinAge
,DummyAgentDeletionMinAge
andDummyAgentGarbageCollectionInterval
, only quantities with a single quantity were allowed, e.g. "5m", now also values like "1h20m" are considered valid - Add configurable
AgentMinIdlePeriod
to CR: it defines how long the controller waits before it terminates an idle Pod - Improve various debug logs
- Fix bug that agent Pods were not cleaned properly under certain conditions
azp-k8s-agent-scaler-operator-0.1.9
Azure Pipelines Kubernetes-based agent scaler operator
Changes:
- Fix premature Pod termination
- Improve logging at various places
- Print pending jobs (if they changed) in each reconcile loop
- Improve timestamp precision to nanoseconds
azp-k8s-agent-scaler-operator-0.1.8
Azure Pipelines Kubernetes-based agent scaler operator
Changes:
- New debug mode that prints additional data from the Azure Pipeline APIs: it can be temporarily enabled: execute into the controller container, run
touch /home/nonroot/debug
to enable debug printing, delete the file withrm
to disable debug printing again
azp-k8s-agent-scaler-operator-0.1.7
Azure Pipelines Kubernetes-based agent scaler operator
Changes:
- Improve the stability of the reusable cache volumes usage, by always sorting the reusable cache volumes first (alphabetically by their name), before picking the first available one
- Create at most
maxCount
PVCs of a reusable cache volume - if all PVCs are currently in use, delay the creation of Pods until one becomes available - Make various aspects of garbage collection of offline agents configurable in the CR
azp-k8s-agent-scaler-operator-0.1.6
Azure Pipelines Kubernetes-based agent scaler operator
Bug fixes:
- Update registered dummy agents whenever the CR content changes
- Incorrect caching of Pool IDs (retrieved from the pool name)
- ExtraAgentContainers environment variable was set twice on the AZP agent container
azp-k8s-agent-scaler-operator-0.1.5
Azure Pipelines Kubernetes-based agent scaler operator
Changes:
- Fix handling of ExtraAgentContainers parsing
azp-k8s-agent-scaler-operator-0.1.4
Azure Pipelines Kubernetes-based agent scaler operator
Changes:
- Controller no longer sets the working directory for containers created for
ExtraAgentContainers
--> K8s should use theWORKDIR
defined by the image'sDockerfile
- ExtraAgentContainers demand now expects named attributes (
name
,image
,cpu
,memory
, the last 2 are optional), e.g.name=ubuntu,image=docker.io/library/ubuntu:22.04,cpu=250m,memory=64Mi
demo-agent-0.1.2
Demonstration chart that sets up Azure Pipeline Agents capable of running jobs with multiple containers
Changes:
- Excluding buildkit container from AppArmor limitations (introducing pod-specific annotations)
- Allow setting pod-specific
securityContext
s
azp-k8s-agent-scaler-operator-0.1.3
Azure Pipelines Kubernetes-based agent scaler operator
Changes:
- Implement AZP API spam protection: repeat reconciliation every 5 seconds, or when the CR changes. Previously,
Reconcile()
of the operator was called on every CR and Pod change, the latter could happen very frequently and hammer the AZP API - Also terminate agent pods that are not even scheduled yet or whose AZP container is not running yet