cookbook 'consul', '= 4.6.0'
consul
(79) Versions
4.6.0
-
-
5.6.6
-
5.6.5
-
5.6.4
-
5.6.3
-
5.6.2
-
5.6.1
-
5.6.0
-
5.5.1
-
5.5.0
-
5.4.5
-
5.4.4
-
5.4.3
-
5.3.2
-
5.3.1
-
5.3.0
-
5.2.0
-
5.1.0
-
5.0.1
-
5.0.0
-
4.8.0
-
4.7.0
-
4.6.0
-
4.5.1
-
4.5.0
-
4.4.0
-
4.3.2
-
4.3.1
-
4.0.7
-
4.0.6
-
4.0.5
-
4.0.4
-
4.0.3
-
4.0.2
-
4.0.1
-
4.0.0
-
3.3.1
-
3.3.0
-
3.2.0
-
3.1.0
-
3.0.0
-
2.3.0
-
2.2.0
-
2.1.3
-
2.1.2
-
2.1.1
-
2.1.0
-
2.0.0
-
1.5.0
-
1.4.3
-
1.4.2
-
1.4.1
-
1.4.0
-
1.3.1
-
1.3.0
-
1.2.0
-
1.1.1
-
1.1.0
-
1.0.0
-
0.11.1
-
0.11.0
-
0.10.1
-
0.10.0
-
0.9.1
-
0.9.0
-
0.8.3
-
0.8.2
-
0.8.1
-
0.8.0
-
0.7.1
-
0.7.0
-
0.6.0
-
0.5.1
-
0.4.3
-
0.4.2
-
0.4.1
-
0.3.0
-
0.2.3
-
0.2.0
-
0.1.0
Follow56
- 5.6.6
- 5.6.5
- 5.6.4
- 5.6.3
- 5.6.2
- 5.6.1
- 5.6.0
- 5.5.1
- 5.5.0
- 5.4.5
- 5.4.4
- 5.4.3
- 5.3.2
- 5.3.1
- 5.3.0
- 5.2.0
- 5.1.0
- 5.0.1
- 5.0.0
- 4.8.0
- 4.7.0
- 4.6.0
- 4.5.1
- 4.5.0
- 4.4.0
- 4.3.2
- 4.3.1
- 4.0.7
- 4.0.6
- 4.0.5
- 4.0.4
- 4.0.3
- 4.0.2
- 4.0.1
- 4.0.0
- 3.3.1
- 3.3.0
- 3.2.0
- 3.1.0
- 3.0.0
- 2.3.0
- 2.2.0
- 2.1.3
- 2.1.2
- 2.1.1
- 2.1.0
- 2.0.0
- 1.5.0
- 1.4.3
- 1.4.2
- 1.4.1
- 1.4.0
- 1.3.1
- 1.3.0
- 1.2.0
- 1.1.1
- 1.1.0
- 1.0.0
- 0.11.1
- 0.11.0
- 0.10.1
- 0.10.0
- 0.9.1
- 0.9.0
- 0.8.3
- 0.8.2
- 0.8.1
- 0.8.0
- 0.7.1
- 0.7.0
- 0.6.0
- 0.5.1
- 0.4.3
- 0.4.2
- 0.4.1
- 0.3.0
- 0.2.3
- 0.2.0
- 0.1.0
Application cookbook which installs and configures Consul.
cookbook 'consul', '= 4.6.0', :supermarket
knife supermarket install consul
knife supermarket download consul
Consul Cookbook
Application cookbook which installs and configures Consul.
Consul is a tool for discovering and configuring services within your
infrastructure. This is an application cookbook which takes a
simplified approach to configuring and installing
Consul. Additionally, it provides Chef primitives for more advanced
configuration.
Maintainers
This cookbook is maintained by the Sous Chefs. The Sous Chefs are a community of Chef cookbook maintainers working together to maintain important cookbooks. If you’d like to know more please visit sous-chefs.org or come chat with us on the Chef Community Slack in #sous-chefs.
Basic Usage
For most infrastructure we suggest first starting with the default
recipe. This installs and configures Consul from the latest supported
release. It is also what is used to certify platform support through
the use of our integration tests.
This cookbook provides node attributes which are used to fine tune
the default recipe which installs and configures Consul. These values
are passed directly into the Chef resource/providers which are exposed
for more advanced configuration.
Out of the box the following platforms are certified to work and are
tested using our Test Kitchen configuration. Additional platforms
may work, but your mileage may vary.
- RHEL/CentOS 7 & 8
- Ubuntu 16.04, 18.04 & 20.04
- Debian 9 & 10
- Windows Server 2012 R2
Client
Out of the box the default recipe installs and configures the Consul
agent to run as a service in client mode. The intent here is that
your infrastructure already has a quorum of servers. In order
to configure Consul to connect to your cluster you would supply an
array of addresses for the Consul agent to join. This would be done
in your wrapper cookbook:
node.default['consul']['config']['start_join'] = %w{c1.internal.corporate.com c2.internal.corporate.com c3.internal.corporate.com}
Server
This cookbook is designed to allow for the flexibility to bootstrap a
new cluster. The best way to do this is through the use of a
wrapper cookbook which tunes specific node attributes for a
production server deployment.
The Consul cluster cookbook is provided as an example.
Advanced Usage
As explained above this cookbook provides Chef primitives in the form
of resource/provider to further manage the install and configuration
of Consul. These primitives are what is used in the default recipe,
and should be used in your own wrapper cookbooks for more
advanced configurations.
Configuration
It is very important to understand that each resource/provider has
defaults for some properties. Any changes to a resource's default
properties may need to be also changed in other resources. The best
example is the Consul configuration directory.
In the example below we're going to change the configuration file from
the default (/etc/consul.json) to one that may be on a special volume.
It is obvious that we need to change the path where consul_config
writes its file to, but it is less obvious that this needs to be
passed into consul_service
.
Inside of a recipe in your wrapper cookbook you'll want to do
something like the following block of code. It uses the validated
input from the configuration resource and passes it into the service
resource. This ensures that we're using the same data.
config = consul_config '/data/consul/default.json' consul_service 'consul' do config_file config.path end
Security
The default recipe makes the Consul configuration writable by the consul service
user to avoid breaking existing implementations. You can make this more secure
by setting the node['consul']['config']['owner']
attribute to root
, or set
the owner
property of consul_config
explicitly:
# attributes file default['consul']['config']['owner'] = 'root'
or
# recipe file consul_config '/etc/consul/consul.json' do owner 'root' end
Watches/Definitions
In order to provide an idempotent implementation of Consul
watches and definitions. We write these out as
a separate configuration file in the JSON file format. The provider
for both of these resources are identical in functionality.
Below is an example of writing a Consul service definition for
the master instance of Redis. We pass in several parameters and tell
the resource to notify the proper instance of the Consul service to
reload.
consul_definition 'redis' do type 'service' parameters(tags: %w{master}, address: '127.0.0.1', port: 6379) notifies :reload, 'consul_service[consul]', :delayed end
A check definition can easily be added as well. You simply have
to change the type and pass in the correct parameters. The definition
below checks memory utilization using a script on a ten second interval.
consul_definition 'mem-util' do type 'check' parameters(script: '/usr/local/bin/check_mem.py', interval: '10s') notifies :reload, 'consul_service[consul]', :delayed end
A service definition with an integrated check can also be created. You will have to define a regular service and then add a check as a an additional parameter. The definition below checks if the vault service is healthy on a 10 second interval and 5 second timeout.
consul_definition 'vault' do type 'service' parameters( port: 8200, address: '127.0.0.1', tags: ['vault', 'http'], check: { interval: '10s', timeout: '5s', http: 'http://127.0.0.1:8200/v1/sys/health' } ) notifies :reload, 'consul_service[consul]', :delayed end
Finally, a watch is created below to tell the agent to monitor to
see if an application has been deployed. Once that application is
deployed a script is run locally. This can be used, for example, as a
lazy way to clear a HTTP disk cache.
consul_watch 'app-deploy' do type 'event' parameters(handler: '/usr/local/bin/clear-disk-cache.sh') notifies :reload, 'consul_service[consul]', :delayed end
A keen eye would notice that we are delaying the reload of the Consul
service instance. The reason we do this is to minimize the number of
times we need to tell Consul to actually reload configurations. If
there are several definitions this may save a little time off your
Chef run.
ACLs
The consul_acl
resource allows management of Consul ACL rules. Supported
actions are :create
and :delete
. The :create
action will update/insert
as necessary.
The consul_acl
resource requires the Diplomat Ruby API gem to be
installed and available to Chef before using the resource. This can be
accomplished by including consul::client_gem
recipe in your run list. If you
are using Chef Infra Client 15.8+ you will need to make sure you are using at
least version 2.2.6 of the diplomat gem.
In order to make the resource idempotent and only notify when necessary, the
id
field is always required (defaults to the name of the resource).
If type
is not provided, it will default to "client". The acl_name
and rules
attributes are also optional; if not included they will be empty
in the resulting ACL.
The example below will create a client ACL token with an ID
of the given UUID,
Name
of "AwesomeApp Token", and Rules
of the given string.
consul_acl '49f06aa9-782f-465a-becf-44f0aaefd335' do acl_name 'AwesomeApp Token' type 'client' rules <<-EOS.gsub(/^\s{4}/, '') key "" { policy = "read" } service "" { policy = "write" } EOS auth_token node['consul']['config']['acl_master_token'] end
Execute
The command-line agent provides a mechanism to facilitate remote
execution. For example, this can be used to run the uptime
command
across your fleet of nodes which are hosting a particular API service.
consul_execute 'uptime' do options(service: 'api') end
Warning on git based installs
Consul v1.0 states that Go 1.9 is a requirement. The default go installation uses
1.5, so you may need to override a ['go']['version']
attribute to allow the
git installation to work reliably.
All of the options available on the command-line can be passed
into the resource. This could potentially be a very dangerous
operation. You should absolutely understand what you are doing. By the
nature of this command it is impossible for it to be idempotent.
Contributors
This project exists thanks to all the people who contribute.
Backers
Thank you to all our backers!
Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website.
Dependent cookbooks
build-essential >= 5.0.0 |
nssm >= 4.0.0 |
golang >= 0.0.0 |
poise ~> 2.2 |
poise-archive ~> 1.3 |
poise-service ~> 1.4 |
Contingent cookbooks
Change Log
4.6.0 - 2021-08-29
- Exclude Chef Infra Client >= 17.0 until Poise support has been removed
- resolved cookstyle error: Policyfile.rb:2:1 warning:
Chef/Deprecations/PolicyfileCommunitySource
- Standardise files with files in sous-chefs/repo-management
4.5.1 - 2021-06-01
- Standardise files with files in sous-chefs/repo-management
4.5.0 - 2021-03-31
- Added
advertise_addr_ipv4
andadvertise_addr_ipv6
attributes
4.4.0 - 2021-03-16
- Added the ability to define open file limit for the consul service
4.3.2 - 2021-02-11
- Proper error messages when installing diplomat for issues such as #583
4.3.1 - 2020-12-21
- Added the renamed parameters from consul 1.0.0:
metrics_prefix
statsd_address
statsite_address
4.0.7 2020-11-12
- Changed type of log_rotate_bytes to Integer.
4.0.6 (2020-10-01)
- Support binary download for linux arm64
4.0.5 (2020-08-31)
- Change segments to Array type #549
4.0.4 (2020-08-31)
- Disable broken tests and suites and fix client suite
- Update kitchen.yml to our standards and default to current channel
- Add testing for Ubuntu 20.04
- Fix Dokken configuration for CentOS 8 and Ubuntu 16.04
- Enable enforce_idempotency checks
- Remove support for CentOS 6, Ubuntu < 16.04
- Only set
name
if the parameters are not an array #568
4.0.3 (2020-07-20)
- resolved cookstyle error: libraries/consul_installation_binary.rb:43:7 refactor:
ChefModernize/ActionMethodInResource
- resolved cookstyle error: libraries/consul_installation_binary.rb:74:7 refactor:
ChefModernize/ActionMethodInResource
- resolved cookstyle error: libraries/consul_installation_git.rb:37:7 refactor:
ChefModernize/ActionMethodInResource
- resolved cookstyle error: libraries/consul_installation_git.rb:65:7 refactor:
ChefModernize/ActionMethodInResource
- resolved cookstyle error: libraries/consul_installation_package.rb:40:7 refactor:
ChefModernize/ActionMethodInResource
- resolved cookstyle error: libraries/consul_installation_package.rb:51:7 refactor:
ChefModernize/ActionMethodInResource
- Standardise files with files in sous-chefs/repo-management
- Add documentation subfolder
4.0.2 (2020-06-02)
- resolved cookstyle error: libraries/consul_service_windows.rb:16:7 refactor:
ChefModernize/IncludingMixinShelloutInResources
4.0.1 (2020-05-05)
- resolved cookstyle error: libraries/consul_acl.rb:109:11 convention:
Style/RedundantReturn
- resolved cookstyle error: libraries/consul_policy.rb:122:11 convention:
Style/RedundantReturn
- resolved cookstyle error: libraries/consul_role.rb:119:11 convention:
Style/RedundantReturn
- resolved cookstyle error: libraries/consul_token.rb:141:11 convention:
Style/RedundantReturn
- resolved cookstyle error: libraries/helpers.rb:19:7 refactor:
ChefStyle/UnnecessaryOSCheck
v4.0.0 (2020-03-30)
- Eliminates the need for the windows cookbook.
- Update Linux testing versions.
- Set minimum Chef version to 13.4.
- Update dokken testing to Chef 14.
v3.3.1 (2020-02-03)
- Fix undefined method 'join_path' errors
v3.3.0 (2020-01-26)
- Add back the dependency on build-essential cookbook to restore Chef Infra Client < 14 compatibility
- Remove the complex compile_time logic to install the gem in the default recipe as compile_time is available in Chef Infra Client 12.1+
- Added 3 new resources for Consule 1.5+
- consul_token
- consul_policy
- consul_role
v3.2.0 (2020-01-26)
- Set default mode of Consul definitions to 640 to avoid ACL tokens leak attack.
- Added all missing configuration options up to Consul 1.7.0 (#517)
- Fix the Ruby type for
tls_cipher_suites
config property (#501, #510) - Removed node send in helper.rb (Stop polutiting node object - Collides with hashicorp-vault too. So the practice should be stopped. Added extend to attributes/default
- Changed testing to be circleci
- Updated circleci orb to latest - implemented markdown and yaml linting
- Updated with latest cookstyle
- Migrate to actions
v3.1.0 (2017-10-12)
- Add required ACL token to Windows reload action (#452)
- Add config options
encrypt_verify_incoming
,encrypt_verify_outgoing
,verify_incoming_https
(#459) - Add
enable_script_checks
config param (#462) - Update Consul to v0.9.3 & add missing config values for 0.9 releases (#468)
- Upgrade to nssm v4.x (#464)
v3.0.0 (2017-06-11)
Fixed bugs:
Closed issues:
- windows service config file/dir paths not escaped with quotes in NSSM config #448
- Error message when running the server enable action on windows #436
- ArgumentError: consul_service[consul] #428
- Default recipe starts consul with
server: true
#423 - Need to add the configuration option for specifying
node\_id
#418 - No resource or method named `platform_family?' for ConsulCookbook::Provider::ConsulService #414
- Need a way to override default application dir. #413
- Can't enable or reload service #412
- Be more flexible on configuration accepted by this cookbook #410
- UI support is not available #409
- Reload happens before start of service #407
- When service_user is root and config user is consul, cookbook fails #405
- Can't use the cookbook with Chef 11 because of firewall cookbook #392
- Bind consul to a specific IP #391
- Not able to run consul resource consul_definition as root:root #372
- dev_mode attribute causes error in startup #367
- Bump supermarket cookbook version #439
- restart followed by reload is unnecessary #438
Merged pull requests:
- Remove _wait_for_listening hook from sysvinit script #444 (legal90)
- Remove the notification for consul service restart #443 (legal90)
- modify consul_acl resource to support SSL options #442 (shayangz)
- Updated options list for log_level parameter #440 (matelukas)
- Fix integration tests #435 (legal90)
- Update default version to 0.8.3 #434 (Ginja)
- Improved the _start() method in the sysv initscript. Until now a sta… #433 (MichaelKueller)
- Adding SHA256 information for 0.8.1 release. #431 (ghorejsi)
- Adding the option to modify the permissions on the consul conf.d dire… #430 (MichaelKueller)
- Calling /etc/init.d/consul restart sometimes ends up with a stopped … #427 (MichaelKueller)
- Update unit tests configuration #426 (legal90)
- add support for specifying the raft protocol version #425 (poblahblahblah)
- consul_config: Add "node_id" option #420 (legal90)
- added missing ACL config options #419 (davidsayers)
- Fix compatibility with Chef Client 12.6.0 #417 (legal90)
- Add http_api_response_headers attribute #416 (Yanovskiy)
- fixing permission of generated config #415 (dennybaa)
- Properly sort consul configuration #411 (kamaradclimber)
- Update Consul support to 0.7.4, some bug fixes #408 (jasonmcintosh)
- Fix cookstyle and foodcritic offences #403 (legal90)
- Remove FreeBSD platform support #402 (legal90)
- Integration tests: Switch to InSpec, test ACL #401 (legal90)
- Cleanup attributes of consul_config resource #400 (legal90)
- Travis: Get "chefdk" package from "stable" channel #399 (legal90)
- Fix "package" provider for "consul_installation" resource #398 (legal90)
- Remove dead code #397 (legal90)
- Remove webui provider for "consul_installation" resource #396 (legal90)
- Remove firewall dependency #395 (legal90)
- Add support of Consul 0.7.2 #394 (legal90)
- Avoid double testing in Travis #393 (legal90)
- consul_config: Remove default values #447 (legal90)
- Remove default attributes ['config']['owner'] and ['config']['group'] #446 (legal90)
- Use "service_user" and "service_group" attributes as defaults for resource params #445 (legal90)
- consul_config: Remove the default value of "server" param #424 (vsudilov)
- Support nssm cookbook 3.0 #422 (Annih)
- Consul 0.7.5 & Windows Fixes #421 (Ginja)
v2.3.0 (2017-01-11)
Fixed bugs:
- When ui_dir is set in windows, ui does not work. Separate UI download/extraction seems to not be required for current version of consul on Windows. #339
Closed issues:
- Update to consul.json does not trigger service restart #381
- Move from zipfile to poise-archive broke webui provider #377
- Latest Configuration Changes - New version release? #375
- Sensitive data in Chef logs #370
- What happened with the consul data bag? #369
- Changelog doesn't mention v2.2.0, 2.1.3 or 2.1.1 #366
- Four failing RSpec tests in master branch #365
- Add support for Supervisord #363
- ARM not properly supported #354
- There is no longer a symlink to consul in /usr/local/bin #351
- Cut a new release of this cookbook? #347
- Installation archive URL should be configurable #342
- consul acl resource is not defaulting to configured consul url and port #338
- Question: How can a wrapper cookbook specify additional systemd options #314
Merged pull requests:
- Remove redundant cookbook dependencies #387 (legal90)
- Enable passwordless sudo for tests #386 (legal90)
- Fit kitchen test failures #385 (gdavison)
- Update Rakefile and TravisCI config #384 (legal90)
- Add "rb-readline" to Gemfile, fix TravisCI build #382 (legal90)
- Add the following parameters in consul config supported in version 0.… #380 (iliasbertsimas)
- Bump version for cookbook release. #379 (johnbellone)
- Move webui installation to poise-archive #378 (tanner-bruce)
- Don't log the config file data because it can contain tokens and other unsafe things. #376 (coderanger)
- Add support for Consul 0.7.1 #374 (legal90)
- Fixed service user specs #368 (gdavison)
- Filter out bootstrap and bootstrap_expect parameters in client configs #364 (gdavison)
- Allow disabling create_service_user #361 (pdf)
- Remove default value for
ui\_dir
#360 (pdf) - Added missing attributes #359 (matelukas)
- Avoid creating broken link on windows #357 (kamaradclimber)
- Proper use of poise_archive #356 (kamaradclimber)
- Fix installation on arm machines #353 (rollbrettler)
- symlink /usr/local/bin/consul to the install location #352 (willejs)
- WIP: Update cookbook to use poise-archive for unzipping. #348 (johnbellone)
v2.2.0 (2016-09-27)
Implemented enhancements:
- translate_wan_addrs config option not implemented #317
Closed issues:
- Consul 0.7 is out! #343
- Restart service instead reload as only few configurations are reloadble. #341
- consul_service reload on Windows fails #334
- Service restart on Windows does nothing #333
- Package custom matchers for testing using ChefSpec #329
- Restrict config write access #322
- Delay upstart
started
event until Consul is ready #318
Merged pull requests:
- resolve problems with machines with default umask of 077 #350 (alisade)
- Allow specification of shell for the consul user #349 (jirkafajfr)
- Added integration tests for Windows #346 (gdavison)
- consul 0.7.0 version updates #344 (vijaybandari)
- Added session_ttl_min configuration attribute #340 (matelukas)
- Add travis and docker integration tests. #337 (johnbellone)
- Minor fix to update changelog #336 (iennae)
- Start consul service on runlevel 2 in sysvinit #332 (ghost)
- missing do in while loop upstart.service.erb line 51 #331 (mattp262)
- Support of consul config reload on windows platform #330 (jirkafajfr)
- Use nologin for service user #327 (kingpong)
- Updated readme with security paragraph #326 (kingpong)
- Misc bugfixes #325 (kingpong)
- More permissions #324 (kingpong)
- Prevent consul from writing its own config #323 (kingpong)
- added statsite_prefix and newly introduced (in 0.6.4) nested object t… #321 (MichaelKueller)
- Added post-start script to upstart config to delay service started event until consul ready to serve requests #320 (gdavison)
- implement translate_wan_addrs in consul_config #319 (jschnare)
- Do not install a dedicated web UI by default #315 (legal90)
v2.1.3 (2016-05-18)
v2.1.2 (2016-05-18)
v2.1.1 (2016-05-16)
Implemented enhancements:
Closed issues:
Merged pull requests:
- Consul Watch: Ignore owner/group on windows machines #313 (jirkafajfr)
- Web UI installation fails when using default recipe #312 (gdavison)
- consul_installation: Fix binary base url for Linux x86 #310 (legal90)
- Prevent "consul" service to be restarted on update #309 (legal90)
- Fix consul logging for sysvinit provider #308 (legal90)
- Fix webui installation spec test #305 (shortdudey123)
- Fix log file permissions on RHEL-like systems #304 (legal90)
- Add missing unix_sockets config #302 (spheromak)
- Fixed Windows installation issue #300 (Ginja)
- Clean up chef vault #299 (shortdudey123)
v2.1.0 (2016-03-18)
Closed issues:
Merged pull requests:
- Add custom resource for installing the Web UI. #298 (johnbellone)
- Replace nssm restart by powershell commands #282 (kamaradclimber)
v2.0.0 (2016-03-17)
Implemented enhancements:
- sysvinit.service.erb has the consul service log to /dev/null #284
- Refactor the population of TLS files to wrapper cookbooks? #247
Fixed bugs:
- Updating consul version does not restart consul #251
Closed issues:
- Key not found: "consul_0.6.3_linux_amd64" #294
- where does consul installed through this cookbook write its logs #290
- restart_on_update considered harmful #288
- Use 'system' attribute when adding consul user & group #287
- client config not being created #217
- AWS Autoscaling #192
Merged pull requests:
- Add debian-7.9 and debian-7.2 to the test matrix. #293 (johnbellone)
- Add support for writing logs to /var/log/consul.log. #292 (johnbellone)
- Adds custom resource for installing Consul. #291 (johnbellone)
v1.5.0 (2016-03-07)
Closed issues:
- consul_acl (or Diplomat gem) misbehaving #283
- Service definition with an integrated check #280
- Atlas Integration go away with v1? #277
- default['consul']['config']['bag_name'] broke consul_config #276
Merged pull requests:
- changing the consul_definition tags to an array #286 (fstradiotti)
- GH-277 - Adding in atlas centric configuration options #285 (jrnt30)
- adding service definition with integrated check to readme #281 (fstradiotti)
- Fix "ConsulAcl" provider when specified "id" doesn't exist #278 (legal90)
v1.4.3 (2016-02-08)
Merged pull requests:
- Correct acl creation #272 (kamaradclimber)
v1.4.2 (2016-02-08)
Fixed bugs:
- Windows Consul service does not start up #273
Merged pull requests:
v1.4.1 (2016-02-05)
Fixed bugs:
- consul service user /bin/false shell ? #271
Closed issues:
v1.4.0 (2016-02-03)
Implemented enhancements:
- Basis for selinux set to disabled #242
- Consul ACL custom resource #240
- Windows install on 64-bit fails #236
- Added Windows Support #259 (Ginja)
Fixed bugs:
- libarchive error when installing consul on Ubuntu 14.04 #241
- Unable to override databag attributes #239
- does not start at boot on CentOS 6 #235
- Consul systemd unit should wait for network #226
Closed issues:
- Idempotency #262
- retry_interval should be a string #244
- Configuring TLS for RPC #230
- Update README with what has changed #201
Merged pull requests:
- Use absolute path for consul to satisfy systemd #270 (sh9189)
- Remove duplicated "data_dir" attribute #269 (legal90)
- Added retry WAN parameters #267 (gdavison)
- Add custom template for "sysvinit" service provider #266 (legal90)
- Create config files in config_dir #265 (gdavison)
- Add support of Consul 0.6.3 #264 (legal90)
- Added ability to remove nssm parameters #263 (Ginja)
- Add support of "ui" config option #261 (legal90)
- Use Consul 0.6.1 #260 (shaneramey)
- Add ACL support #257 (bdclark)
- Fixes #242 & Reverts #253 #256 (Ginja)
- Guard against owning /etc #254 (bdclark)
- Update URL for UI package #253 (bdclark)
- Updated Consul Download URLs #252 (Ginja)
- Updates binary package URL to new hashicorp directory/filename structure #250 (Fitzsimmons)
- Add a version to poise-boiler to fix Travis #249 (elyscape)
- Add support for Consul 0.6.0 #248 (elyscape)
- Add rejoin_after_leave config option #246 (Ginja)
- retry_interval need to be a string, fixes #244 #245 (scalp42)
- Improve selinux support #243 (Ginja)
- Adds retry_join to the available configuration options #234 (Fitzsimmons)
- flatten the for_keeps variable to make include? work for tls options #233 (joerocklin)
v1.3.2 (2015-11-30)
Closed issues:
- Question: Configuring Consul #229
Merged pull requests:
v1.3.1 (2015-10-07)
Closed issues:
- Cut a new release? #225
v1.3.0 (2015-10-07)
Implemented enhancements:
- web UI install missing since 1.0 #215
Merged pull requests:
- include firewall_rule for udp ports #228 (twmb)
- support to specify explicit service name other that filename #227 (tomzo)
- Support for start_join_wan #224 (justintime)
- Skip SElinux recipe on non linux OSes. #223 (kamaradclimber)
- Fixing the syntax for Consul watches #222 (wk8)
- Update firewall dependency #221 (lmickh)
- update consul_config resource #219 (fumimaron9)
- consul_ui resource #218 (tomzo)
- Add support for advertise_addr_wan #214 (cmann)
- do not delete consul data dir #213 (scalp42)
- allow to define multiple checks/services #212 (scalp42)
- fix consul_service disable action #211 (scalp42)
- update watch types #210 (scalp42)
v1.2.0 (2015-08-24)
Closed issues:
Merged pull requests:
v1.1.1 (2015-08-13)
v1.1.0 (2015-08-13)
Closed issues:
- regression of allowing http checks #206
- Write more comprehensive unit tests. #202
- Update README with new, detailed examples. #200
v1.0.0 (2015-08-06)
Implemented enhancements:
- Multiple checks for one service #173
- Add HWRPs for installing and managing consul. #126 (johnbellone)
Merged pull requests:
- Fix directory permissions on config_dir and data_dir #205 (ewr)
- Remove references to "quicks_mode" in JSON generation #204 (ewr)
v0.11.1 (2015-07-25)
Merged pull requests:
- Adding open files configuration for Upstart. #199 (darron)
- Readme fix #198 (jedineeper)
v0.11.0 (2015-07-23)
Implemented enhancements:
Fixed bugs:
- chown resource executes every run, even when not changing anything #191
- Sensitivity to HUP during launch #125
Closed issues:
Merged pull requests:
v0.10.1 (2015-07-10)
Implemented enhancements:
- consul systemd hangs at 'create symlink at /etc/service/consul to /etc/sv/consul' on Centos70 #168
- ui-dir not in config template #131
- Add support for Consul 0.5.0 and Atlas auto-join #135 (shanesveller)
Fixed bugs:
- Error executing action
extract
on resource 'libarchive_file[consul.zip]' #170 - Missing package on RHEL7 AWS #165
- Databag item 'ca_file' misnamed #124
- Wrong user used for services when using upstart #96
Closed issues:
- Release Tag for 0.10.0 #187
- HTML tables are garbage, use markdown #186
- Missing checksum for 0.5.2 #185
- Windows support #184
- Question - How to use consul_check #182
- Gossip/TLS encryption node attributes still requires consul data_bag, encrypt item, secret #151
-
server
vcluster
semantics unclear to new user / "Getting Started" under-discoverable #149
Merged pull requests:
- Separate install from service #190 (joshgarnett)
- use node array to refer to variables #189 (jedineeper)
- Adding GOMAXPROCS support for systemd. #188 (joshgarnett)
- Refactor start and stop timeouts in consul-init #161 (jon918)
v0.10 (2015-06-04)
v0.10.0 (2015-06-04)
Implemented enhancements:
- Add packages install method. #180 (darron)
- Add LWRP services watch #155 (hirocaster)
Closed issues:
- Question - How to do different configs on different servers #177
- consul::ui doesn't start with UI process #175
- Broken SysVinit script -- Consul fails to start on RHEL platforms (Amazon Linux, CentOS, etc.) #150
Merged pull requests:
- Don't try to create directories twice #183 (tiwilliam)
- Fixes typo in readme #181 (spuder)
- Be able to move the log file with an attribute. #179 (darron)
- Ensure GOMAXPROCS is at least 2 #178 (tgwizard)
- consul 0.5.2 checksums, changed default version to install #176 (tomzo)
- Add missing bracket #172 (YuukiARIA)
- Add version 0.5.1 consul #171 (hirocaster)
- Update README.md #167 (berniedurfee-ge)
- Add a Gitter chat badge to README.md #166 (gitter-badger)
- Adding rejoin after leave for auto cluster remediation. #163 (arodd)
- README refers to client_addr as client_address #162 (logankoester)
- Bump default version mentioned in README.me #160 (anoldguy)
- Fixes typo in my username (CHANGELOG) #159 (logankoester)
- Fix SysVinit script #158 (hatchetation)
- Upstart and systemd config files do not need +x permissions #152 (dpkp)
v0.9.1 (2015-03-30)
Merged pull requests:
0.9.0 (2015-03-17)
Implemented enhancements:
Closed issues:
- Consul fails to restart with access denied error if the consul user is change #140
- Is the chef-provisioning cookbook a dependency? #139
- chef-provisioning should not be a dependency #137
- Add 0.5.0 checksums #136
- consul::ui recipe is failing to converge with Errno::EISDIR #133
Merged pull requests:
- Update for 0.5.0 #148 (webcoyote)
- Fix a typo #147 (thedebugger)
- Missing # from string interpolation #146 (gavinheavyside)
- Adds systemd init style (support for arch platform) #145 (logankoester)
- Add support for HTTP checks #143 (gavinheavyside)
- Chown service directories recursively. Fixes #140 #141 (thedebugger)
- Add 0.5.0 checkums, fixes #136 #138 (jhmartin)
- UI path is a directory. Fix #133 #134 (thedebugger)
- Force-kill on /etc/init.d/consul stop. Fixes #128 #129 (jhmartin)
v0.8.3 (2015-02-14)
Merged pull requests:
v0.8.2 (2015-02-11)
Closed issues:
Merged pull requests:
v0.8.1 (2015-02-06)
Merged pull requests:
- correction to EL init template for active binary and config dir argument... #123 (paulysullivan)
v0.8.0 (2015-02-06)
Closed issues:
Merged pull requests:
- remove unit tests which describe exactly what the code describes #122 (reset)
- Upgradeable Consul Binary #121 (reset)
- Fix quoting of bootstrap_expect in README #112 (jhmartin)
- Make upstart script respawn consul on crash #108 (tgwizard)
v0.7.1 (2015-01-24)
Merged pull requests:
v0.7.0 (2015-01-23)
Implemented enhancements:
Fixed bugs:
- Should check_def create the file using the id property instead of name? #99
- Install from source fails integration tests #41
Closed issues:
Merged pull requests:
- Update README.md #109 (tupy)
- Fixup a cell in README #105 (thorduri)
- Add Service Watch LWRP #103 (monkeylittle)
- Let user decide join strategy on cluster mode #102 (inean)
- making it work with golang cookbook 1.4.0 #101 (opsline-radek)
- Prefer id over name consul check filename #100 (tgwizard)
- Allow custom data bag and data bag item for consul encrypt #98 (inean)
- Add some additional options to the service_config hash. #90 (darron)
- WIP: LISA conference hacking #88 (johnbellone)
v0.6.0 (2014-12-11)
Implemented enhancements:
Closed issues:
Merged pull requests:
- {1..10} does not work in sh #95 (opsline-radek)
- made a mistake in formatting the json file for the watches #94 (ericfode)
- Update matchers.rb #87 (ericfode)
- Update README.md #86 (ericfode)
- extra params using node object as base #85 (ericfode)
- Key watch #84 (ericfode)
- Event watch #82 (ericfode)
- add upstart init #71 (wilreichert)
0.5.1 (2014-11-06)
Implemented enhancements:
- GOMAXPROCS picks number of CPUs using sysconfig - Also updated Serverspec to 2.0 #52 (goncalopereira)
Closed issues:
- The service consul is not present and restart fail #76
- Doesn't restart on configuration change #72
- Stop Consul With SIGINT #47
- Create consul_directories in install_* recipes #40
Merged pull requests:
- Fixes #76 #81 (thedebugger)
- Update README.md with basic getting started #79 (ericfode)
- fixes #72. #75 (dpetzel)
- Update last action so that notifications can work #74 (thedebugger)
- Send reload singal to consul on a service_def change #70 (thedebugger)
- update consul ui test #69 (kevinreedy)
- set correct etc config directory for default consul behavior #68 (wilreichert)
- Added consul-check-def provider #67 (lyrixx)
- Fixed default version installed in README.md #64 (lyrixx)
- Use id (if present) in the service def file path #62 (thedebugger)
- Consul 0.4.1 #61 (rnaveiras)
- Updated unkown
service\_mode
error message #60 (kppullin) - Add encrypt to README #57 (benjaminws)
- API updates & Add encrypt param #56 (benjaminws)
- Automatic bootstrapping for consul cluster of multiple servers with the bootstrap_expect value greater than one #53 (lawsonj2019)
- Support for sending consul logs to syslog #51 (jdef)
- Gracefully Leave Cluster w/ SIGINT #48 (noazark)
0.4.3 (2014-09-19)
v0.4.3 (2014-09-19)
Closed issues:
- Publish v0.4.2 #45
- Installation fails with ERROR: service[consul] (consul::_service line 112) had an error: Chef::Exceptions::Service: service[consul]: unable to locate the init.d script! #33
- Add service LWRP example #23
Merged pull requests:
v0.4.2 (2014-09-15)
Merged pull requests:
- Correct LWRP examples #44 (johntdyer)
- Recipe names in readme were wrong #43 (johntdyer)
- Update for 0.4.0 #42 (johntdyer)
- fix for #31 , implements support for bootstrap-expect and now creates the data_dir #39 (ravaa)
- Fix resource order to suppress error when service start before create default.json. #38 (Sheile)
v0.3.1 (2014-08-29)
Closed issues:
Merged pull requests:
- Update _service.rb #36 (brandocorp)
- Fix runit initialization on new server #35 (webcoyote)
- Support binding to named interfaces #34 (romesh-mccullough)
- Update metadata.rb release ark version #29 (jhmartin)
- Restart consul service on configuration change #27 (jubianchi)
- Delay the consul reload when config file changes #25 (jubianchi)
- Add checksums for Consul 0.3.1 #24 (jubianchi)
- Chefspec fixes #22 (jhmartin)
- fixed serverspec failures #21 (jarosser06)
v0.3.0 (2014-07-04)
Merged pull requests:
- add service_def LWRP #20 (reset)
- bump binary installed version of consul to 0.3.0 #19 (reset)
- minor refactorings #18 (reset)
- Fix service_group attribute reference in README #17 (databus23)
- Add support for runit #16 (webcoyote)
- support more configuration parameters #15 (bkw)
- Reload on changes #14 (bkw)
- support reload via init #13 (bkw)
- use configfile instead of hardcoding values into init file #12 (bkw)
- remove superfluous subdir consol_ui #11 (bkw)
- Remove 0.2 #10 (bkw)
v0.2.2 (2014-05-31)
Fixed bugs:
- Source installs are broken #1
Merged pull requests:
- -config-dir for service definitions #9 (gavinheavyside)
- Refer to configured install location #8 (gavinheavyside)
- Add consul::ui recipe #7 (bdotdub)
v0.2.0 (2014-05-09)
Closed issues:
- Binary installs broken on centos #2
Merged pull requests:
- Fix a wrong attribute definition #6 (jemiam)
- Fix issues with source install #5 (jemiam)
- Add default recipe which installs and starts consul as a service #4 (kevinreedy)
- Update README.md #3 (ijin)
* This Change Log was automatically generated by github_changelog_generator
Collaborator Number Metric
4.6.0 passed this metric
Contributing File Metric
4.6.0 passed this metric
Foodcritic Metric
4.6.0 failed this metric
FC109: Use platform-specific package resources instead of provider property: consul/libraries/consul_installation_package.rb:42
FC109: Use platform-specific package resources instead of provider property: consul/libraries/consul_installation_package.rb:53
FC121: Cookbook depends on cookbook made obsolete by Chef 14: consul/metadata.rb:1
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
4.6.0 passed this metric
Testing File Metric
4.6.0 passed this metric
Version Tag Metric
4.6.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
4.6.0 passed this metric
4.6.0 passed this metric
Foodcritic Metric
4.6.0 failed this metric
FC109: Use platform-specific package resources instead of provider property: consul/libraries/consul_installation_package.rb:42
FC109: Use platform-specific package resources instead of provider property: consul/libraries/consul_installation_package.rb:53
FC121: Cookbook depends on cookbook made obsolete by Chef 14: consul/metadata.rb:1
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
4.6.0 passed this metric
Testing File Metric
4.6.0 passed this metric
Version Tag Metric
4.6.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
4.6.0 failed this metric
FC109: Use platform-specific package resources instead of provider property: consul/libraries/consul_installation_package.rb:53
FC121: Cookbook depends on cookbook made obsolete by Chef 14: consul/metadata.rb:1
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
4.6.0 passed this metric
Testing File Metric
4.6.0 passed this metric
Version Tag Metric
4.6.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
4.6.0 passed this metric
4.6.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