View entire changelog

Release 2.18.00

Oct 30, 2019

What’s New in Release 2.18

Upgrading your installation

Our upgrade guide takes you step by step through the process of upgrading to the latest version of CircleCI Server, including any checks and updates required before starting the upgrade process.

Note: If at any time your organization name has been changed, there is a script that must be run before starting the upgrade process.

Notes and Best Practices

  • We now require a minimum 32GB of RAM for the Services Machine.

  • We have made some changes to our Redis configuration. If you have externalized Redis then you’ll need to update your configuration. Please contact your Customer Success Manager.

  • We have also made changes to our Postgres version and require at least postgreSQL v9.5.16. If you have externalized postgreSQL then please update to at least that version in 2.17.x before upgrading to 2.18.

Known Issues

Nomad garbage collection only runs every 4 hours. This could prevent nomad jobs from running in environments with heavy usage. If you hit this bug please follow this work around:

  1. Create /etc/circleconfig/schedulerer/customizations on the services machine
  2. Inside /etc/circleconfig/schedulerer/customizations enter the following:
    export SCHEDULERER_NOMAD_BACKPRESSURE_MAX_PENDING_JOBS=500 
    export SCHEDULERER_NOMAD_BACKPRESSURE_MAX_DEAD_JOBS=100000
    
  3. Restart the picard-scheduler container:
    sudo docker restart picard-scheduler
    

Features/Improvements

  • It is now possible to restrict environment variables at run time by adding security groups to contexts. Security groups are defined as GitHub teams or LDAP groups. After a security group is added to a context, only CircleCI users who are members of that security group may access or use the environment variables of the context. For more information see our guide to restricting a context.

  • Customers running storage drivers external to AWS will see improved routing times when searching for build Artifacts.

  • You can now customize the metrics that get output from CircleCI. For steps and options, see our Custom Metrics guide. Below is a short list of metrics that are included by default when enabling Custom Metrics:

Metric Description
circle.backend.action.upload-artifact-error Tracks how many times an artifact has failed to upload
circle.build-queue.runnable.builds Track how many builds flowing through the system are considered runnable
circle.dispatcher.find-containers-failed Track how many 1.0 builds
circle.github.api_call Tracks how many api calls CircleCI is making to github
circle.http.request Tracks the response codes to CircleCi requests
circle.nomad.client_agent.* Tracks nomad client metrics
circle.nomad.server_agent.* Tracks how many nomad servers there are
circle.run-queue.latency Tracks how long it takes for a runnable build to be accepted
circle.state.container-builder-ratio Keeps track of how many containers exist per builder ( 1.0 only )
circle.state.lxc-available Tracks how many containers are available ( 1.0 only )
circle.state.lxc-reserved Tracks how many containers are reserved/in use ( 1.0 only )
circleci.cron-service.messaging.handle-message Provides timing and counts for RabbitMQ messages processed by the cron-service
circleci.grpc-response Tracks latency over the system grpc system calls
  • You can now provide individual AMIs for both Remote Docker and machine executor jobs. Previously we provided the option for a single custom AMI to be used across both, but with v2.18, this expanded customization gives you greater control over versioning and dependencies to meet your individual CICD needs. See our VM Service guide for more information.

Bug fixes

  • Additional fixes around contexts and org renames.

  • Fixed an issue where occasionally volumes would fail to attach to spun up Remote docker/machine instances.

  • Fixed an issue where the CircleCI integration could not be installed on JIRA instances with the jira.com subdomain.

  • Fixed an issue where the Workflows page would still point to an old repo after renaming an organization.

  • Fixed issue where the Workflows UI would fail to refresh data automatically.

  • Improved context loading times in cases when they could cause timeouts in the UI.

  • Fixed an issue where contexts would cause builds to return CIRCLE_BUG.

>Previous changes

Oct 24, 2019

Oct 24, 2019