Thanks to visit codestin.com
Credit goes to Github.com

Skip to content
This repository was archived by the owner on May 20, 2020. It is now read-only.
/ pd-sync-chef Public archive

A knife plugin that supports the PagerDuty Chef workflow

License

Notifications You must be signed in to change notification settings

PagerDuty/pd-sync-chef

Repository files navigation

Deprecated

This repository is no longer maintained.

PagerDuty::ChefServer::Sync

This gem provides a Knife plugin (knife pd sync) which supports the PagerDuty Chef workflow.

PagerDuty Chef Workflow

PagerDuty uses a monolithic Chef repo, and does not bother with cookbook versioning. Instead, every time we make a change to our Chef repo, we delete all changed cookbooks and re-upload them, maintaining parity between our Git repo and Chef server. There are many reasons that we have adopted this workflow, though I'm too lazy to stroll through memory lane at the moment. You can learn more about it here.

This plugin supports the aforementioned workflow. It integrates directly with Berkshelf. Invoking this plugin will:

  • Run berks vendor
  • Pull cookbook manifest from Chef server
  • Look for local changes
  • Loop through all changed cookbooks, first deleting all versions of it on Chef server, then uploading the version on disk
  • Upload all data bags
  • Upload all environments
  • Upload all roles

Installation

Simply include this gem in the Gemfile in your Chef repo:

gem 'pagerduty-pd_sync'

Usage

knife pd sync

License

Apache 2

Contributing

  1. Fork it ( https://github.com/PagerDuty/pd-sync-chef/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

About

A knife plugin that supports the PagerDuty Chef workflow

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages