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

squid (47) Versions 1.1.1

Installs/configures squid as a simple caching proxy

Policyfile
Berkshelf
Knife
cookbook 'squid', '= 1.1.1', :supermarket
cookbook 'squid', '= 1.1.1'
knife supermarket install squid
knife supermarket download squid
README
Dependencies
Changelog
Quality 100%

squid Cookbook

Build Status
Cookbook Version

Installs and configures Squid as a caching proxy.

Requirements

Platforms

  • Debian 7+
  • Ubuntu 12.04+
  • RHEL/CentOS/Scientific 6+
  • Amazon Linux
  • Fedora
  • SmartOS
  • Suse
  • FreeBSD 10+

Chef

  • Chef 11+

Cookbooks

  • none

Recipes

default

The default recipe installs squid and sets up simple proxy caching. As of now, the options you may change are the port (node['squid']['port']) and the network the caching proxy is available on the subnet from node.ipaddress (ie. "192.168.1.0/24") but may be overridden with node['squid']['network']. The size of objects allowed to be stored has been bumped up to allow for caching of installation files.
An optional (node['squid']['cache_peer']), if set, will be written verbatim to the template.

Usage

Include the squid recipe on the server. Other nodes may search for this node as their caching proxy and use the node.ipaddress and node['squid']['port'] to point at it.

Databags are able to be used for storing host & url acls and also which hosts/nets are able to access which hosts/url

LDAP Authentication

  • Set (node['squid']['enable_ldap']) to true.
  • Modify the ldap attributes for your environment.
  • To create the ldap acls in squid.conf, you also need the two ldap_auth databag items as shown in the LDAP Databags below.

Example Databags

squid_urls - yubikey item

{
  "urls": [
    "^https://api.yubico.com/wsapi/2.0/verify"
  ],
  "id": "yubikey"
}

squid_hosts - bastion item

{
  "type": "src",
  "id": "bastion",
  "net": [
    "192.168.0.2/32"
  ]
}

squid_acls - bastion item

{
  "id": "bastion",
  "acl": [
    [
      "yubikey",
      "allow"
    ],
    [
      "all",
      "deny"
    ]
  ]
}

LDAP Databags

The following two data bags are only required if you are using LDAP Authentication.

squid_hosts - ldap_auth item

{
  "type": "proxy_auth",
  "id": "ldap_auth",
  "net": [
    "REQUIRED"
  ]
}

squid_acls - ldap_auth item

{
  "id": "ldap_auth",
  "acl": [
    [
      "",
      "allow"
    ]
  ]
}

License & Authors

Author: Cookbook Engineering Team (cookbooks@chef.io)

Copyright: 2012-2015, Chef Software, Inc.
```
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

http://www.apache.org/licenses/LICENSE-2.0

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.

squid Cookbook CHANGELOG

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

v1.1.1 (2015-09-28)

  • Fix the cache directory initialization execute resource to correctly fire on all platforms
  • Update contributing and testing docs

v1.1.0 (2015-09-05)

  • Added FreeBSD support
  • Removed use of Ruby 1.8.7 hash rockets
  • Add Chefspec unit tests
  • Documented Chef requirement of 11+

v1.0.1 (2015-09-02)

  • Wrap the new source_issues and issues_url to retain compatibility with Chef 11
  • Update the contributing documentation to the latest version
  • Update Travis config to perform just linting and unit testing

v1.0.0 (2015-09-02)

  • Reorder config to place maximum_object_size before cache_dir so it's not ignored
  • Remove attributes for Ubuntu 10.04 which is now EoL
  • Remove attributes for Debian 6 which is now EoL
  • Merge Debian and Ubuntu attributes to properly assign Debian style directories on Debian systems
  • Add squid version attributes for Debian 7.X and 8.X
  • Remove RHEL 5.X support from the readme since the current configuration will not start
  • Update Test Kitchen for the latest platforms
  • Add Ruby 2.0 and 2.2 to Travis
  • Add source_url and issues_url to the metadata.rb
  • Update the development dependencies in the Gemfile to the latest releases
  • Add Travis and cookbook release badges to the readme
  • Add required platforms to the readme
  • Add rvm, rbenv and rubymine files to the gitignore file
  • Add a very basic Serverspec test to Test Kitchen to ensure Squid is up and listening on port 3128
  • Converge Test Kitchen instances with a very small memory and disk cache to avoid failures

v0.6.0 (2015-09-01)

  • 0.6.0 was folded into 1.0.0 when it was realized the breaking changes in the release better warranted a 1.0.0 release.

v0.5.4 (2015-05-19)

  • [#39] Update versions of squid for RHEL7
  • [#38] Added ability to use variable databags per environment, role, etc.

v0.5.3 (2015-02-04)

  • [#37] Fix errors on RHEL7, Fedora
  • [#36] Fix warning when squid >= 3.2
  • [#33] Miscellaneous cleanup
  • [#31] Remove node['ipaddress'] as the only way to get the ipaddress.
  • [#30] Add metadata for default recipe

v0.5.2 (2014-10-14)

  • Support LDAP. (@MattMencel)
  • Support multiple listen ports. (@MattMencel)
  • Support use of other ACL types other than url_regex. (@thoutenbos)
  • Fix test harness on Ubuntu. (@juliandunn)

v0.5.1 (2014-09-02)

  • Support Ubuntu 14.04. (@maciejmajewski)

v0.5.0 (2014-07-25)

  • Don't assume default interface is 'eth0' (@juliandunn)
  • Fix breakage on Fedora (@juliandunn)
  • Enable a simple way to add arbitrary directives to the bottom of the squid.conf (@dansweeting)
  • Add enable_cache_dir attribute to allow disabling the cache_dir (@phutchins)
  • Permit configuration of cache size (@dschlenk)
  • Fix all test harnesses, Rubocop violations

v0.4.2 (2014-03-27)

  • [COOK-4320] - Add support for ubuntu 13 to the squid cookbook

v0.4.0 (2014-02-27)

  • [COOK-4373] Add conditional output of optional attribute for cache_peer to template
  • [COOK-4376] remove duplicated attributes
  • [COOK-4377] Generate a sysconfig on Fedora

v0.3.0 (2014-02-18)

[COOK-4066] - squid attributes should be default and not set/normal

v0.2.10

Bug

  • COOK-3936 - configure squid cache size on disk
  • updating style and test harness

v0.2.8

Bug

  • COOK-3590 - Fix hard-coded daemon listen port

v0.2.6

Cleanup in 5fc5df4 (v0.2.4) was a bit overzealous:

Ubuntu needs upstart provider specified for the service or reload
failures may occur.

v0.2.4

Bug

  • [COOK-2979]: squid cookbook has foodcritic failures
  • [COOK-3042]: squid acl incorrect for centos 5

v0.1.0-v0.2.2

Initial public release and migration from @mattray's repository. Changelog was not created/updated at this time.

Foodcritic Metric
            

1.1.1 passed this metric