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

Select Status

RSS

rsync (33) Versions 5.0.0

Provides resources to install rsync and manage rsync daemon modules

Policyfile
Berkshelf
Knife
cookbook 'rsync', '~> 5.0.0', :supermarket
cookbook 'rsync', '~> 5.0.0'
knife supermarket install rsync
knife supermarket download rsync
README
Dependencies
Changelog
Quality 50%

rsync Cookbook

Cookbook Version
CI State
OpenCollective
OpenCollective
License

Rsync cookbook with custom resources for installing rsync and managing rsyncd modules. More info on rsyncd options can be found in the Docs.

Migration

This release removes the legacy recipes and attributes. See [migration.md](migration.md) for the resource migration guide.

Requirements

Platforms

  • AlmaLinux 8+
  • Amazon Linux 2023+
  • CentOS Stream 9+
  • Debian 12+
  • Fedora
  • Oracle Linux 8+
  • Red Hat Enterprise Linux 8+
  • Rocky Linux 8+
  • Ubuntu 22.04+

Chef

  • Chef >= 15.3

Resources

  • [rsync_install](documentation/rsync_install.md)
  • [rsync_service](documentation/rsync_service.md)
  • [rsync_serve](documentation/rsync_serve.md)

serve

This resource implements an rsync server module. The following params are chef-only, the rest implement the feature as described in the [rsyncd docs][1].

Parameters

Required
  • path - Path which this module should serve.
Optional

Unless specified these parameters use the rsyncd default values as referenced in the [Rsyncd docs][1]. Params are Strings unless specified otherwise.

  • name - The name of this module that will be referenced by rsync://foo/NAME. Defaults to the resource name.
  • config_path - Path to write the rsyncd config. Defaults to /etc/rsyncd.conf.
  • globals - Hash of global rsyncd directives for the config file.
  • service_name - Service to notify when the config changes.
  • comment - Comment when rsync gets the list of modules from the server.
  • read_only - Boolean - Serve this as a read-only module.
  • write_only - Boolean - Serve this as a write-only module.
  • list - Boolean - Add this module the the rsync modules list.
  • uid - String - User name or user ID that file transfers use when the daemon runs as root.
  • gid - String - Group name or group ID that file transfers use when the daemon runs as root.
  • auth_users - Comma and space-separated list of usernames allowed to connect to this module. [more info][1]
  • secrets_file - File containing username:password pairs for authenticating this module. [more info][1]
  • hosts_allow - Hostname and IP patterns allowed to connect. [more info][1]
  • hosts_deny - Hostname and IP patterns denied from connecting. [more info][1]
  • max_connections - Integer - *Default: 0 - The maximum number of simultaneous connections.
  • munge_symlinks - Boolean - *Default: true - Modify incoming symlinks in a safe, recoverable way. [more info][1]
  • use_chroot - Boolean - Chroot to the module path before starting file transfer.
  • numeric_ids - Boolean - *Default: true - Disable user/group name mapping for the module.
  • fake_super - Boolean - Store full file attributes without running the daemon as root.
  • exclude_from - File containing daemon exclude patterns. [more info][1]
  • exclude - Daemon exclude patterns. [more info][1]
  • include_from - Analogue of exclude_from.
  • include - Analogue of exclude.
  • strict_modes - Boolean - Require the secrets file to be readable only by the daemon user ID.
  • log_file - Module log file path.
  • log_format - Per-transfer log format. [more info][1]
  • transfer_logging - Enables per-file logging of downloads and uploads.
  • timeout - Integer - Default: 600 - Client timeout in seconds.
  • dont_compress - Filename patterns that should not be compressed.
  • lock_file - Lock file used to support max_connections.
  • refuse_options - Space-separated list of refused rsync command-line options.
  • prexfer_exec - Command to run before each transfer to or from this module.
  • postxfer_exec - Command to run after each transfer to or from this module.

Usage

After loading the rsync cookbook you have access to the rsync_serve resource for serving up a generic rsyncd module with many options.

Declare rsync_install and rsync_service before rsync_serve when managing a daemon.

Examples

Serve a directory:

rsync_install 'default'
rsync_service 'default'

rsync_serve 'tmp' do
  path '/tmp'
end

Serve a directory with read only and specify uids:

rsync_install 'default'
rsync_service 'default'

rsync_serve 'tmp' do
  path      '/tmp'
  uid       'nobody'
  gid       'nobody'
  read_only true
end

A more complex example with networking:

rsync_install 'default'
rsync_service 'default'

rsync_serve 'centos-prod' do
  path             '/data/repos/prod/centos'
  comment          'CentOS prod mirror'
  read_only        true
  use_chroot       true
  list             true
  uid              'nobody'
  gid              'nobody'
  hosts_allow      '127.0.0.1, 10.4.1.0/24, 192.168.4.0/24'
  hosts_deny       '0.0.0.0/0'
  max_connections  10
  transfer_logging true
  log_file         '/tmp/centos-sync'
  postxfer_exec    '/usr/local/bin/collect_things.sh'
end

Contributors

This project exists thanks to all the people who contribute.

Backers

Thank you to all our backers!

https://opencollective.com/sous-chefs#backers

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website.

https://opencollective.com/sous-chefs/sponsor/0/website
https://opencollective.com/sous-chefs/sponsor/1/website
https://opencollective.com/sous-chefs/sponsor/2/website
https://opencollective.com/sous-chefs/sponsor/3/website
https://opencollective.com/sous-chefs/sponsor/4/website
https://opencollective.com/sous-chefs/sponsor/5/website
https://opencollective.com/sous-chefs/sponsor/6/website
https://opencollective.com/sous-chefs/sponsor/7/website
https://opencollective.com/sous-chefs/sponsor/8/website
https://opencollective.com/sous-chefs/sponsor/9/website

rsync Cookbook CHANGELOG

This file is used to list changes made in each version of the rsync cookbook.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

5.0.0 (2026-05-06)

⚠ BREAKING CHANGES

  • migrate rsync to custom resources (#79)

Features

  • migrate rsync to custom resources (#79) (159d52f)

Bug Fixes

  • ci: Update workflows to use release pipeline (#74) (70f90c7)

4.0.11 (2025-10-16)

Bug Fixes

  • ci: Update workflows to use release pipeline (#74) (70f90c7)

4.0.0 - 2023-05-04

  • Enable unified_mode and require Chef >= 15.3
  • Update and fix CI, tests and platforms
  • Update sous-chefs/.github action to v2
  • Update actions/checkout action to v3

3.1.5 - 2023-02-14

  • Add renovate.json

3.1.4 - 2023-02-14

  • Standardise files with files in sous-chefs/repo-management

3.1.3 - 2022-02-08

  • Remove delivery folder

3.1.2 - 2021-08-30

  • Standardise files with files in sous-chefs/repo-management

3.1.1 - 2021-06-01

  • Standardise files with files in sous-chefs/repo-management

3.1.0 - 2020-11-20

  • Fixed issue with auto release system

3.0.0 - 2020-11-20

Changed

  • Sous Chefs Adoption
  • Update Changelog to Sous Chefs
  • Update to use Sous Chefs GH workflow
  • Update README to sous-chefs
  • Update metadata.rb to Sous Chefs
  • Update test-kitchen to Sous Chefs
  • Improve InSpec tests

Fixed

  • Yamllint fixes
  • MDL fixes

Added

  • Management of systemd unit file
  • Add library helpers
  • Add node['rsyncd']['options'] attribute for additional daemon arguments

Removed

  • Remove testing for Amazon Linux 1 & CentOS 6
  • Remove support for init.d based systems
  • Remove the following attributes: node['rsyncd']['service'], node['rsyncd']['nice'], node['rsyncd']['ionice']

2.0.2 (2020-07-27)

  • Do not use kind_of in resource properties to fix failures - @infertux
  • Convert to a custom resource to resolve missing :remove action - @tas50
  • Test on Chef Infra Client 15 and 16 as well - @tas50

2.0.1 (2020-07-26)

  • Sort modules alphabetically to preserve idempotency - @infertux
  • Cookstyle fixes - @tas50
  • Standardise files with files in chef-cookbooks/repo-management - @xorimabot

3.0.0 - 2020-11-20

  • resolved cookstyle error: spec/server_spec.rb:11:7 warning: ChefDeprecations/DeprecatedChefSpecPlatform
  • resolved cookstyle error: resources/serve.rb:12:1 refactor: ChefRedundantCode/UnnecessaryNameProperty

2.0.0 (2019-10-07)

  • Update specs to the latest platform versions - @tas50
  • Update the platforms we test - @tas50
  • Require Chef 13+ and resolve cookstyle warnings - @tas50

1.1.0 (2018-03-11)

  • Add Amazon linux compatibility for init script.
  • Remove the ChefSpec matchers. These are auto generated by modern ChefSpec/ChefDK

1.0.3 (2017-10-17)

  • Fix chef 13 compatibility

1.0.2 (2017-04-26)

  • Cookstyle fixes
  • Test with Local Delivery instead of Rake
  • Update apache2 license string

1.0.1 (2016-09-18)

  • Clarify in readme we require Chef 12.1+
  • Update maintainer text
  • Disable use_inline_resources as it breaks the provider
  • Convert tests to use inspec
  • Moved all testing to the test recipe and removed the need for the apt cookbook in testing

1.0.0 (2016-09-07)

  • Run integration tests in Travis CI with kitchen-dokken
  • Run chefspec and cookstyle in Travis
  • Add use_inline_resources to the provider
  • Require chef 12

v0.8.9 (2015-10-05)

  • Fixed support for Chef 12.4.X and later
  • Added Chefspec matchers
  • Added additional platforms to Test Kitchen
  • Updated rubocop rules to our standard set and resolved all warnings
  • Updated Travis CI to test on additional Ruby versions
  • Updated contributing and testing docs
  • Added maintainers.toml and maintainers.md files
  • Added additional testing depedendencies to the Gemfile with version pinning
  • Added cookbook version and Travis CI badges to the readme
  • Clarified that Chef 11.0 is the minimum required Chef version for this cookbook
  • Removed outdated development information from the readme
  • Added a Rakefile for simplified testing
  • Added a chefignore file to limit what files are uploaded to the Chef server
  • Added Amazon Linux, Oracle, and Scientific Linux to the metadata Added source_url and issues_url to metadata.rb for Supermarket
  • Removed all pre-Ruby 1.9 hash rockets

v0.8.8 (2015-05-07)

  • [#15] Add incoming/outgoing chmod options
  • [#16] Add prexfer/postxfer exec commands
  • [#14,#17] Support Chef 12

v0.8.6 (2014-09-30)

  • [#11] Fixes to allow rsync daemon to be started if not up.

v0.8.4

Improvement

  • Add Test Kitchen, Specs, and Travis CI

v0.8.2

Improvement

  • Add refuse_options parameter to rsync_serve

Bug

  • Support chkconfig
  • Allow setting value to false in rsyncd.conf

v0.8.0

  • [COOK-878] - Add LWRP for rsyncd.conf and server recipe

v0.7.0

  • Initial released version

Collaborator Number Metric
            

5.0.0 passed this metric

Contributing File Metric
            

5.0.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file

Cookstyle Metric
            

5.0.0 passed this metric

No Binaries Metric
            

5.0.0 passed this metric

Testing File Metric
            

5.0.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file

Version Tag Metric
            

5.0.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number

Copyright © 2026 Progress Software Corporation and/or its subsidiaries or affiliates. All Rights Reserved.

Progress and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries.
See Trademarksfor appropriate markings. All rights in any other trademarks contained herein are reserved by their respective owners and their inclusion does not imply an endorsement, affiliation, or sponsorship as between Progress and the respective owners.

Code of Conduct Terms and Conditions of Use Privacy Policy Cookie Policy Trademark Policy Status