Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms


flannel (7) Versions 1.1.1

A library cookbook to setup flanneld

cookbook 'flannel', '~> 1.1.1'
cookbook 'flannel', '~> 1.1.1', :supermarket
knife supermarket install flannel
knife supermarket download flannel
Quality 88%

Flannel Cookbook

This is a library cookbook that provides resources for setting up flannel instances.


  • Chef 12.5.0 or higher.
  • Network accessible web server hosting the flannel binaries.

Platform Support

Tested on the following platforms with test-kitchen:

  • debian-8.4
  • centos-7.2
  • ubuntu-16.04


  • Add depends 'flannel', '~> 0.3' to your cookbook's metadata.rb.
  • Use the resources shipped in this cookbook.

Custom Resources

  • flannel_service


Downloads pre-compiled Go binaries of flanneld onto disk.

  • The :create action downloads the pre-compiled go binary of flanneld onto disk.
  • The :configure action connects to etcd and loads the flanneld configuration to it.
  • The :start action runs flanneld as a systemd service

It has the following properties corresponding to flannel's commandline options

  • public_ip
  • etcd_endpoints
  • etcd_prefix
  • etcd_keyfile
  • etcd_certfile
  • etcd_cafile
  • iface
  • subnet_file
  • ip_masq
  • listen
  • remote
  • remote_keyfile
  • remote_certfile
  • networks
  • v or log_level

Another property called config corresponds to flannel's etcd-stored configuration

Additionally, if you are using TLS with etcd, you can pass extra options to the etcdctl tool using the etcdctl_options property


The [libraries/subnet_parser.rb](libraries/subnet_parser.rb) file extends the flannel_service resource to read and parse the subnet file. An example approach on integrating with the docker cookbook is found in [test/cookbooks/flannel_test/recipes/docker.rb](test/cookbooks/flannel_test/recipes/docker.rb).


Copyright 2016 Allan Espinosa

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Dependent cookbooks

This cookbook has no specified dependencies.

Contingent cookbooks

There are no cookbooks that are contingent upon this one.


  • Add documents and metadata to pass Supermarket quality metrics.


  • Add etcdctl_options as a resource parameter.


  • Move out etcd backend configuration to the :configure action.


  • Mostly test and tooling enhancements.
  • Fix problem of not invoking flanneld with the proper flags.


  • Add resource properties to customize flanneld's invocation.


  • Add :start action to launch flannel as a systemd service.
  • Provide helpers to parse the subnet file.


  • Basic layout of the flannel_service resource.
  • A :create action to install flanneld.

Collaborator Number Metric

1.1.1 failed this metric

Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.

Contributing File Metric

1.1.1 passed this metric

Foodcritic Metric

1.1.1 passed this metric

No Binaries Metric

1.1.1 passed this metric

Publish Metric

1.1.1 passed this metric

Supported Platforms Metric

1.1.1 passed this metric

Testing File Metric

1.1.1 passed this metric

Version Tag Metric

1.1.1 passed this metric