
The Drift Management feature is built on open source.

Track policies and compliance Built on an extensible open source foundation The Policy Manager shows current usage across all repositories, including a compliance tracker to see what proportion of repositories are on the current policy. Setting a policy for eslint NPM dependency Track progress toward policy goals If you need to get an update out to your entire organization quickly, you can opt to send pull requests immediately. When setting policy, you can try it on one repository and then roll it out to the whole organization. Developers decide when to accept a policy update and apply via an automated pull request Developers decide when they are ready to accept and apply the update. Notification of an available update is sent to developers before a pull request is raised. It also connects automation and policy to people via chat. Define and set policiesĪtomist connects you to more than your code. We might want to set a policy to reduce our eslint variants in this organization, for example. The interactive charts in the Drift Report let you drill in and explore facets of your code and process to identify issues. Right: Drilling in on High drift dependencies to see which need attention Higher drift dependencies are interesting to explore. Left: NPM dependency drift for an organization. For example, if there are many different versions of eslint in use across Node.js repositories, Drift will be high. The Drift Report shows aspects of code and process by degree of Drift (Zero, Low, Medium, High). Docker base image distribution across the organization (this chart is interactive in the Drift Report) Identify issues that need attention Understand how things like Docker base images and Kubernetes specs are used-outdated and unauthorized container images are security and operational hazards. See potential process issues like high Git branch count-too many branches may be a process smell that needs attention. Track progress and manage policies over timeĬontinuously analyze repositories for aspects of code and configuration, like dependencies and languages, to understand what versions are used and how much drift there is.


Here's an example of the different versions of TypeScript in use in my org (left), and my npm dependencies grouped by degree of Drift (how much spread or entropy of versions in use for each dependency)ĭrift is the divergence of your code and configuration from where you would want it to be, from an ideally current state. Today, we're introducing Drift Management to give you control over your code and development process. "In a healthy piece of code, entropic decay is typically staved off by dozens of tiny interventions – bug fixes, test fixes, small refactors, migrating off a deprecated API, that sort of thing." - Kevin Simler Tame Drift Toiling at trying to keep things up-to-date takes you away from building and shipping and wears away at the soul. Being vigilant over your code, configuration and development practices is hard because there are so many aspects to manage. Outdated dependencies, container images, or delivery pipelines pose significant risk. One of the biggest challenges we face as development teams is keeping our code and development processes current and consistent.
