Changelog

Keep up to date with our latest
releases and enhancements.

Container runner version 3.0.11    

What’s New

  • CircleCI built in environment variables set as labels on task pods
  • Task pod garbage collection improvements
  • Improve task-agent task pod injection reliability
  • Improve task-agent download reliability
Runner

Container runner version 3.0.10    

What’s New

  • Add circleci symlink to the circleci-agent binary within tasks
  • Retry loading resource class token secrets on retryable errors
  • Update various dependencies
Runner

Container runner version 3.0.8    

What’s New

  • Upgrade to Go 1.20
  • Migrate Helm chart to new image repository: https://hub.docker.com/r/circleci/runner-agent/
  • Improve error handling and increase reliability in the task worker loop
  • Sample low-value health check logs when using the informational logging level
Runner Images

Container runner version 3.0.9    

What’s New

  • Bugfixes and package updates
Runner

Container runner version 3.0.7    

What’s New

  • Add lifecycle pre-stop command to gracefully terminate task agent on shutdown
  • Ensure all Task lifecycle step events can be sent, even on shutdown of the agent and the context is cancelled
  • Don’t delete the task pod if task agent is still running
    • This is related to issue https://github.com/kubernetes/client-go/issues/724. The remotecommand package may not always handle network disconnects on the exec command, returning a nil error. Therefore, we don’t delete the task pod in this case, giving a chance for the task to complete in an “orphaned” state.
  • Prevent Task lifecycle step output from being lost during long-running jobs
  • Improve task cleanup liveness check robustness and add extra logging
  • Fix draining and cleanup of a task on shutdown of the runner agent
  • Use stricter task pod config parsing with more helpful error messaging
Runner

Container runner version 3.0.6    

What’s New

  • Various dependency updates
  • Fix for task liveness probe retries not being respected
  • Fix for task pods not being cleaned up when exiting with a run error
Runner

Container runner version 3.0.5    

What’s New

  • Fix Kubernetes cleanup panic when pod allocation fails
  • Fix incorrect liveness probe failures if the task agent PID file is deleted
  • Log platform info to the Task lifecycle step
  • Make user agent header driver specific
Runner

Container runner version 3.0.4    

What’s New

  • Log errors from calls to Kubernetes API when loading token secrets on Kubernetes driver startup
  • Set reasonable resource requests and limits for logging containers
  • Add a liveness probe to check the health of the task-agent process
  • Respect node RBAC permission setting in K8s GC
  • Fix for custom Docker registry names
  • Fix for broken pipes while copying task agent when using Alpine-based images on MicroK8s
  • Fix for the task token from being able to be exposed in a job
  • Support Bash parameter expansion syntax in the job config file
  • Improve logging container configuration:
    • Only mount the service account token if there are service containers and therefore a logging container
    • Make the logging container respect the image pull policy of the task pod config, if set. This matches the behaviour of the primary and secondary containers in the task pod.
  • Improve task pod event logging in the Task lifecycle step
Runner Images

Container runner version 3.0.3    

What’s New

This release includes dependency updates and security patches.

Runner

Container runner version 3.0.0    

What’s New

  • First major release of container runner
  • Going forward, this page will detail what has changed between versions which will be released at a regular cadence
  • More details around the cadence will be shared shortly
Runner