Skip to content
| Marketplace
Sign in
Azure DevOps>Azure Pipelines>Chef
Chef

Chef

Chef

|
301 installs
| (0) | Free
Tasks for performing common Chef operations against the Chef Automate platform.
Get it free

Chef Integration for Azure Pipelines

This Chef integration for Azure Pipelines provides a set of tasks to automate commonly performed build and release activities when using the Chef Automate platform. Use these tasks to configure your servers ready for application deployment.

Chef Automate provides a full suite of enterprise capabilities for workflow, visibility and compliance. Chef Automate integrates with the open-source products Chef, InSpec and Habitat. You can create your own Chef Automate server by launching one from the Azure Marketplace.

The tasks give access to any of the Chef commands at the command line level so any operation using Habitat, Chef, Chef-Client and Knife etc can be added to your build pipeline. There are some Helper tasks that wrap several commands to achieve an operation, such as updating a cookbook version constraint on a Chef environment.

These tasks are compatible with Chef Server 12.1 and higher.

Tasks

The extension contains 3 tasks.

  • Install Chef Components: Allows the installation of CHef components
  • Execute Chef Component: Allows the execution of a specified Chef component
  • Chef Helpers: A number of helper tasks
    • Read Environment File: Reads a .env file that has been generated by Habitat
    • Set Cookbook Version: Sets the cookbook version number in the metadata.rb file
    • Set Cookbook Version on Chef Environment: Set a cookbook version constraint on named Chef environment
    • Setup Berkshelf: Creates the configuration file for Berkshelf to operate correctly
    • Setup Chef: Write out a config.rb file to be used by chef-client or knife
    • Setup Habitat Environment: Configure the Habitat environment by downloading origin and keys
    • Setup Test Kitchen: Configure Azure Environment variables to allow TK to create machines in Azure

Agent Compatibility

The following table shows the tasks and what type of agents they are compatible with. Most of the tasks now work on Windows based agents.

Task Private Windows Agent Private Linux Agent Hosted Windows Agent Hosted Linux Agent
Install Chef Components Yes Yes Yes Yes
Execute Chef Component Yes Yes Yes Yes
Chef Helpers Yes Yes Yes Yes

Note: To install components on a private Linux Agent then task process must be running as root or under an account that has passwordless sudo access. For a Private Windows Agent the process must be running with elevated privileges.

Getting Started

See our guide to Getting Started

Project Configuration/Endpoint

The extension contains two endpoint configurations. One for setting credentials for a Chef Server and one for setting up the Habitat environment.

Endpoints are a per-project configuration and can be accessed via Project Settings (cog) > Service Connections

The Chef Server endpoint let's you securely store the following information:

  • Chef Server URL - URL to the Chef Server including the organization, e.g. https://mychefserver.westus.cloudapp.azure.com/organizations/myorg
  • Username (Node name) - A username on the Chef server that has admin permissions
  • Client key - The private key (in pem format) for the specified user
  • SSL Verification - Enables/disables the SSL certificate verification for the Chef Server. Set to false if you are using self-signed certificates. Default: true (Chef Server certificate must be signed by a valid Certificate Authority)

The Habitat endpoint allows the storage of the following information:

  • Habitat Depot URL - URL to the Habitat depot to use when publishing packages, e.g. https://bldr.habitat.sh
  • Origin Name - Name of the origin to use when building a package
  • Revision - Revision of the origin keys to use
  • Public Key - Public key to use during package builds
  • Signing Key - the signing key of the specified origin
  • Habitat Auth Token - authentication token for Habitat Depot

Documentation and help

For detailed documentation, please read the Chef extension documentation.

To report an issue, please check our issues list.

Contributors

This extension was created by Chef Software, Inc.

To get in contact, please email partnereng@chef.io

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft