diff --git a/Berksfile b/Berksfile index b42da70..c57764f 100644 --- a/Berksfile +++ b/Berksfile @@ -2,7 +2,8 @@ source 'https://supermarket.chef.io' metadata +cookbook 'runit', '~> 1.7.4' + group :integration do cookbook 'ellktest', path: './test/cookbooks/ellktest' - cookbook 'runit' end diff --git a/CHANGELOG.md b/CHANGELOG.md index 8338459..f1ab3b2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,9 @@ # ELLK changelog - -## [unreleased] +## [v0.3.5] #### Changed +- update ellktest demo cookbook for permission handling of logs +- removed pinning of runit 1.5.18 - [mohitsethi] added elasticsearch plugin support - added Thorfile with certificate helpers @@ -26,7 +27,7 @@ ## [v0.3.1] #### Submission for feedback -[unreleased]: https://github.com/dearing/ellk/compare/v0.3.4...HEAD +[v0.3.5]: https://github.com/dearing/ellk/compare/v0.3.4...v0.3.5 [v0.3.4]: https://github.com/dearing/ellk/compare/v0.3.3...v0.3.4 [v0.3.3]: https://github.com/dearing/ellk/compare/v0.3.2...v0.3.3 [v0.3.2]: https://github.com/dearing/ellk/compare/v0.3.1...v0.3.2 diff --git a/README.md b/README.md index 406e444..c54e73a 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,10 @@ Published - [releases] - [supermarket] +A note on RUNIT +--------------- +Runit has gone through some design changes and the releases between 1.5.18 and 1.7 would create inconsistent responses when polling the state of a service. In order to prevent this from breaking integration tests and create false problems for consumers, I pinned this cookbook to v1.5.18. Since v0.3.5 I have released this pinning and advice the consumer to decide which version of runit they want to run. + About ------------ This cookbook provides a modern Chef approach to installing and configuring the four [elastic] products that make up an ELK stack with the company's binary artifacts. Using [ark] to fetch those remote artifacts and [runit] to handle the service allows us to side step the nuanced vulgarity of competing package managers, driving down the complexity of this cookbook. This means faster updates, less angles for bugs and a guard against feature creep. So the flexibity is that this library won't be upset if you don't use the whole stack or any combination within. Call what you need, configure how you like and get back to [#chefops], your way. diff --git a/metadata.rb b/metadata.rb index 14c812b..e1c7218 100644 --- a/metadata.rb +++ b/metadata.rb @@ -4,11 +4,11 @@ license 'MIT' description 'Library to handle Elasticsearch, Logstash, Logstash-Forwarder & Kibana' long_description IO.read(File.join(File.dirname(__FILE__), 'README.md')) -version '0.3.4' +version '0.3.5' %w(ubuntu debian centos redhat amazon scientific oracle enterpriseenterprise).each do |os| supports os end depends 'ark' -depends 'runit', '= 1.5.18' +depends 'runit' diff --git a/test/cookbooks/ellktest/recipes/default.rb b/test/cookbooks/ellktest/recipes/default.rb index 53a2cef..1d95988 100644 --- a/test/cookbooks/ellktest/recipes/default.rb +++ b/test/cookbooks/ellktest/recipes/default.rb @@ -46,10 +46,12 @@ logstash_key = Base64.decode64(secrets['key']) file '/tmp/logstash.key' do content logstash_key + sensitive true end logstash_crt = Base64.decode64(secrets['certificate']) file '/tmp/logstash.crt' do content logstash_crt + sensitive true end # install ELASTICSEARCH 1.7.1 instead of the default of 1.7.0 @@ -98,6 +100,15 @@ } } +logs.each do |conf| + conf['paths'].each do |log| + file log do + group 'logstash' + ignore_failure true + end + end +end + ## Install the forwarder and configure it to ship everything in logs up to this point. logstash_forwarder 'default' do crt_location '/tmp/logstash.crt' diff --git a/test/integration/data_bags/secrets/logstash.json b/test/integration/data_bags/secrets/logstash.json index 577f79c..3c91816 100755 --- a/test/integration/data_bags/secrets/logstash.json +++ b/test/integration/data_bags/secrets/logstash.json @@ -1,5 +1,5 @@ { "id": "logstash", - "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM1VENDQWMyZ0F3SUJB\nZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFVTVJJd0VBWURWUVFEREFsc2Iy\nTmgKYkdodmMzUXdIaGNOTVRVd09EQTNNakl4TURVMFdoY05NVFV3T0RBM01q\nTXhNRFUwV2pBVU1SSXdFQVlEVlFRRApEQWxzYjJOaGJHaHZjM1F3Z2dFaU1B\nMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRREtwaGY2CkFy\nTjkzdGhFcFFLOS9NMU5HWW5YY0FtY3pwUTlmNGFKMzM5L3N6aGozZXhXdGJP\nUXdhOTlvSGNta1dxVGJyQzYKcDJqT1BhOE5UK3pBcW9SNWQ5MUpoQ2lnQkhD\nb2drazRSOWtIOHpLQlhXcjVOdlI3eHhDcVZpaTBoVDlVdm1kdApvMjZTN0t4\nT3FJWHRGcmR4dEs1UnJQa0NKMW9KZU4wWlBZMjZURStlUElDNzBNL1hlQU1G\nSkh1d3FwdjRXWWp3CmRHbFcxZlhtTGxVV21nSzlPTzJPakJlVDZQQTNFOXVy\nQXFrM0Q5dkQyMnZkUjVOaE1EWWpSWjN1MHVjZm1tYjgKTFlLUXZzVWpWV1N1\nM2lyQ2lSMVV3T3FiUXpORVJySnJ1VDU3RGE3Tk1FMFFjMmQ1cDEwVkRRbmpY\nTXc0ZlJmaQpnTUVzaEFVWlFPNUdMNjJGQWdNQkFBR2pRakJBTUE4R0ExVWRF\nd0VCL3dRRk1BTUJBZjh3SFFZRFZSME9CQllFCkZFWS81VHl1eHdRS1E4VzIr\nUmo0VmlxY01kVHJNQTRHQTFVZER3RUIvd1FFQXdJQkJqQU5CZ2txaGtpRzl3\nMEIKQVFzRkFBT0NBUUVBZUJ4Rm44UkdUc1p5UjRCS3g2NmxBWWZRSWdUUFJi\nQ0JZWVlsd05oTzFtTVlzR0VIWTlLSApIYzlVMnFxNGUxK0JyMUtpVXBJTjRW\nek15UnZGdE54OFNUVE5Qck9CN0RpWWRacVl0MkxaZ2VwUFNWNW51elAwCm1D\nQ3lOR2p0d3d1RW5BZEtwQ1hleXFEWmpjQmFveWhPMG5KUndKaEVWZEd3YjYr\ndU1jSzhQd2ZwS0ExWmQxMFkKM1NTd0htUFliVHFhR2UxNUlGWWJjZnBsNENJ\nVGxPMGx1dWFIZm9LOXRna0dueXhCU3Z6dkhNZGFsVGRqVTF4eQozQTRjUEFj\ndGk4N3NyL0krSXRHZGc3TDc2T0xOWjVTN3N6MkxjZHBjQkJybFNZdzQyNms3\nMER6dEZWUWNxZzJ1CksvcjFabEV5RW1VbzRDWXAxcndYVUl5NUROTGxRbDAr\nK1E9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\n", - "key": "LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb3dJQkFBS0NB\nUUVBeXFZWCtnS3pmZDdZUktVQ3Zmek5UUm1KMTNBSm5NNlVQWCtHaWQ5L2Y3\nTTRZOTNzClZyV3prTUd2ZmFCM0pwRnFrMjZ3dXFkb3pqMnZEVS9zd0txRWVY\nZmRTWVFvb0FSd3FJSkpPRWZaQi9NeWdWMXEKK1RiMGU4Y1FxbFlvdElVL1ZM\nNW5iYU51a3V5c1RxaUY3UmEzY2JTdVVhejVBaWRhQ1hqZEdUMk51a3hQbmp5\nQQp1OURQMTNnREJTUjdzS3FiK0ZtSThIUnBWdFgxNWk1VkZwb0N2VGp0am93\nWGsrandOeFBicXdLcE53L2J3OXRyCjNVZVRZVEEySTBXZDd0TG5INXBtL0My\nQ2tMN0ZJMVZrcnQ0cXdva2RWTURxbTBNelJFYXlhN2srZXcydXpUQk4KRUhO\nbmVhZGRGUTBKNDF6TU9IMFg0b0RCTElRRkdVRHVSaSt0aFFJREFRQUJBb0lC\nQUdSR1RjVHpnemU4aGsxcApUWE1QWGROUjJNaFc4eHE1aWRib2ZIMUtyMzlV\nQW9wQUxRczIrL1NjTXFjNk9OdEh4M0hPcXZxaGpoWEhwaEF6ClJWYU15ZUtG\nTW1XSFZNYmhpNUdHYm82LzFwKzljbmRhNzIwRUNYUWFLNS90NUZSM1BzQkRP\nMUNnTnozU2lPeWYKTFM0Rk9KNjJKaS9hSkpreE9iZElMRGVxSXJCVTR3R2VI\nQjh5K2QvVndNNVBPSHE2dUVJZ3p6cXdmQXZmUjVrdAo0ZTRYTnNrcGRxVXBx\nNFBBdzg4K0FQNVlSRnlBZXlGUU1oNllqcVhWRkZsNzRkMTBzYnNDTzlQK0p0\nZlVmQkFrCitzbk43YjFmY1dKNjB4YlNuTjdvaWJaQzFnbXM3MytrSGVicE1O\nRVF4S05XekxTemhZbDNUbVdVWldwcTdmUmoKamNKaDZ6MENnWUVBNVo4MSt4\nVldkYzQzNThtV2Nub3FDUUVYenFIU2RTYW9jbkdoSWEzWlZmbTE0UTZMREVn\neQpKOTEzcXNYSStqVHVTV1hHdXo0RmtzaXdYNXNwcThZYWw4NEt3WEJpeVEw\ncjNPNHFlZjYyZVlSSUwvYXFwQyszCmd5bkJFcUdpcmo4L09MeVVJMGZ3WFpn\nN1RZWGR5bENBcThUaWtQRXNLYkVVUHJ0a1J5bnI4Z01DZ1lFQTRlMm0KUlVG\nUU9sT2w0NFBkZmhJWHYxMGxjS3lmZEJnM1pyTjY1cm0yenVFYzhublVEc3dr\nVzIwZU90TFNiQjF1TUFRRApnRHVFZmpSalBuQXNGaldGRjB2SWFqZzNhN2VS\nOWVvMlVRT1hPNC83QXE2eFZmTmlDbXFyRWJnNktldlFxWXZOCk1vKzBaeW4z\nQkNyTWdmbTRGb2RaSWdaSWYzWXhNZUg1aDBvZHo5Y0NnWUVBM2NDckJnZHVU\neWpQVHJhYzU0TloKTXdidU1leVBiZm5lZFYrTlNCUTNydE1RTmYrd2d6VDUw\nd3dMZEUyOE1QNkxIVEVBQW5YOE5leEFnS1E5VXhsbgpOekdScTR4WXFtZGc4\nK1RCK3J6bEJtZWN1MDFSTUd5d29pZmh3SmQrbng2UGRNQ1JvNXptNGN5UmdP\nV0Y4c3RaCjZBaWs4V3NueGord0dJRXFiNXRwdEhjQ2dZQmZHOUZFRkZPMnlp\nSHFua2R1M0NUOUhUUTJzNlRJbGEwMDRkZWEKSzVJbWt5UEJlOEhtbk0rdFlV\nazVrQ2llOU9DKysrR1JhUHpFdUQ4VE9OdUdXZTkyT0NQZGUxN3hUS3o0Ymlt\nQgpmMVo1NzRuR3ZrM1BGZzh1dldyWW9jcHlmV0F4RDdaSlU2K3BRa1JIajlE\nWjRvczVpSzdnSU84Q0lYcGlPblAyCkhTQmhyd0tCZ0IzZW5EYk1ndGdBTGh1\ncGttZzBDRzVLeEkwanFZTU9ibVpDZmYxbmhKTGRhL0JESTAzNEVmUkMKSFhN\nTk55aC9Caks1bUt5L2NscFZPd3NFRmtHRi9kS1J0Rzl5YTZHZUVxdU5BNTk4\naythTUt3TXdlR0duek1QMgp4M21KSW1haDZFTW5uRnVzb0J1NU9WeTJneHhV\nY0x6TVhnT3FRWFR3bVNFYzBmaWNlaTIyCi0tLS0tRU5EIFJTQSBQUklWQVRF\nIEtFWS0tLS0tCg==\n" + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM1VENDQWMyZ0F3SUJB\nZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFVTVJJd0VBWURWUVFEREFsc2Iy\nTmgKYkdodmMzUXdIaGNOTVRVeE1ERTFNVGN4T0RVM1doY05NalV4TURFMU1E\nTXlNakUzV2pBVU1SSXdFQVlEVlFRRApEQWxzYjJOaGJHaHZjM1F3Z2dFaU1B\nMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRQzIxYjNTClZD\nL3Q1OTZabzIvams3YXdHWXR2eElnMmdrMlVlZzM3VlFIYWxhamxpRzBMeFRZ\neFZiL1VNZlVtbU9aSFhBekEKeXhvYi9rLzFyUG5YN3pzMWtIODRTZXlqcXF4\nSE5nQkh3QTNPb0hqMXExa1dHdnlpN0Z0eU9NZ0d4Qkk5ZThvMwpBdGZCeWZh\nTEh4MHpzSHljZWc0L3BkbDlNUHkzamNZZDFSSGc3TWRVNTZpQU1FdTY2UzJM\nZUJSUng5NXFFZXpkCnY5Q0VsZ0dmT3o1azZVM3lUYWFoSi9IOEJTMWhSbXl3\nbjRBMGwzNk15eTg0UXJHMjNHb1k1dmlUcFlJWlZYTEcKUjJJdmdnSXBOcHk3\ncGRnRFRlOFBJSGVEV3kxcHNMZHhrbnJmZUJDZzd5YWdLTkoxcTRDR21uSERn\nMVMzZGU2NQpZYUJtQTdRMDR0U2oxN2NCQWdNQkFBR2pRakJBTUE4R0ExVWRF\nd0VCL3dRRk1BTUJBZjh3SFFZRFZSME9CQllFCkZGVHVHTURFNXk0Y29RZlZE\na01SVlJna01yRTVNQTRHQTFVZER3RUIvd1FFQXdJQkJqQU5CZ2txaGtpRzl3\nMEIKQVFzRkFBT0NBUUVBRTgyQlhleXlKRVN0TTFUMm9iWHZsSmxnMnd1SXZj\nSGhJVzd0ZWhzaWZkWGxhSG52c25ZaQpiM242eDFZWTYvOHRHWDdzNDdNKzl5\nazBEeUZHK0ZIRzN1YjNJWCttMGIzcGE4dS9YRm8rOE5pUjAvQnBFNUlrCmla\nTGNpaFlFZHlZTlE3cEJDY2kvTlZvTU5uZm9zY1VacHFqcExwMlpVVXQ4ZUR0\nTEdDR3lLMnVBUFU5Q1Y1YjgKZHlQdUlpRE1OWEc0ZkppK3RodURKOVZjSkZ2\neitYRG05UElxRlFmMG1aN2EyZmVubmk1L0Jkc29aeHgzcW1UdQpQaFV1bnA2\nNnBrOXpBVEk4MkcyOFFRYXZyYk5kQUpUbzBBQWUzbTdEYUFXR1dqWm1HR2ZH\nOHRqd0w5dHFZdEZ3CmVKc2hCTVNBbzNrL3RmSXNrWVhKVGhvUU9JOEgzWWFy\nVXc9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\n", + "key": "LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb3dJQkFBS0NB\nUUVBdHRXOTBsUXY3ZWZlbWFOdjQ1TzJzQm1MYjhTSU5vSk5sSG9OKzFVQjJw\nV281WWh0CkM4VTJNVlcvMURIMUpwam1SMXdNd01zYUcvNVA5YXo1MSs4N05a\nQi9PRW5zbzZxc1J6WUFSOEFOenFCNDlhdFoKRmhyOG91eGJjampJQnNRU1BY\ndktOd0xYd2NuMml4OGRNN0I4bkhvT1A2WFpmVEQ4dDQzR0hkVVI0T3pIVk9l\nbwpnREJMdXVrdGkzZ1VVY2ZlYWhIczNiL1FoSllCbnpzK1pPbE44azJtb1Nm\neC9BVXRZVVpzc0orQU5KZCtqTXN2Ck9FS3h0dHhxR09iNGs2V0NHVlZ5eGtk\naUw0SUNLVGFjdTZYWUEwM3ZEeUIzZzFzdGFiQzNjWko2MzNnUW9POG0Kb0Nq\nU2RhdUFocHB4dzROVXQzWHV1V0dnWmdPME5PTFVvOWUzQVFJREFRQUJBb0lC\nQUZGY2xIaEFsb09jSjJiZgpZQzg1MEpaVkI4UFpCWFNjVDhHKy92SFZSbG5y\nTjVuTk9CbUF6VGp2RzhwbDRONG9OSEdVK09maWVkL3pMOG40CkM4YVg0eFZY\nRkFZTWY0M2xxWHlXLzFEdW1qWlZHdjdZSFhERTJaLzI1a3JTRWRGUTkzejgx\nV1Bkay8zY3ppWGkKMXEvbDNjNFVVcnJvSnZ5YkRCcnlzRE1lV2pKbzZpS3JM\nVG9MdXJHV1lJcmZlR1pSL3phMUt6TmtSVXZhcnZPZwpveHZVaFNYVEsyTlND\nNmM0RGlHZ3Fxb3F5M1pmbHNQb28weFd1bU9JenF5T2ppbDFsV0Qwd2dqVHVK\neS92NFIwClRLS0hiNnB0dUNJdzArSlc5akZJSm5rWDZEWFJHd1VJdXdWakF3\na2tsQnlHUnNFSlUzZW8xUG5qeU42OFloMlIKOEozSXJRRUNnWUVBOFl1cmVl\ncWZuUysrRHFOT0dKMklEUWkwSHVKQ0k4K1Y0NVZVVHNpcmRyclZUaGFEN0VP\nUQpMQ1VUNTAvbm8yWG1jVjV2RndvQ2FyNmVsWnhFYldvbVp4VCtQUmRBVC9B\nQVpBWEM2cVRWR1NyU3lRODg1SU5SCkdmcW9VWE1LQk9XR1hjWGNYK2hCQ0RH\nY1NRdVVrOGF3UHp0RWg2VXc1Qk1aNU9TeVRnajZnc2tDZ1lFQXdjYXAKRUlT\nUUN4WXpvbHE3encreHh2c25GVzRRdDN3NWtoa1M4Uyt0MzdGeUZkZXAweVlD\nSkcvL2JralVVdW5GYUFVSgoxYUtnL0hwTmVISm9GLzdOaFRVeWo5WTdhUXBQ\nRGU3QU1kWUlsczFFcXVZQXpkclV2SWVwSkczOTkvSHRWbU05Ck1OZTc1WXZk\nemEzWUJIbmtXc0NFazY2YTlheWw1V3FnMUVaTnRua0NnWUIrTitQbEUwdFEw\nZy9ZaWxGVzM0cW0KZFBQYVo1VDBMWmMvazFxNHlIZUExV1I5SjVyTUxRbjda\nMnlkSk00QVBsRkswSFB3Y0JTUFB3aVRXVk1RY2JXYgpqQWJHV1k0THQzZ2N6\nRDNzYXpISHN1N3VqWDNlVXhoZ0lQRXZqcE9mdDJpZE83VktrSXpiQVVHUGtm\nT1R2UEdBCk9USTRSNFBpeW5CdmdXb0RDUUlPc1FLQmdBTW5vOXNEL1lCZ3RT\naUFoNnhBV2ltZUx5MjNKQWlJdWpzNXMwZy8KK1htNTN0eWlMVDZsME1VZEdi\nQ0crUVg4amwwNkw4WE5wd2RWU211YW1UMUN4Yi9VZE9WSW5LRUNMUFZTSE1q\neQo3aUxlWnE3Tm5kZThKMWlHY09lSjd1ZVpoYjZ4VU82NXBIS0JTM1FzejJh\nTFFYK0V3T1BTcE8wNUNWNXAxUUovCnZvWXBBb0dCQUpUcXNPcGRSZ1JrMEhK\ncVNsWmtYdFdkS2hsc2lqZGYrYU1LdWVhaUtBOGRiTUZnV25KWHNudjEKZlhr\nSW1MZktvdW5QZWJMRGQwNnJJaGIvMy9PWFpsZUpkeHNWaUVabW9FRURBdjF1\nNE5sNlpwU2NwS24rQmJZSQp5akJoWjVrUzIyR0tnT29RQVhiMjYwZGhzc21n\nV2VsZnpTdGlSUno2Q0x1Nk5oTjdPVWY2Ci0tLS0tRU5EIFJTQSBQUklWQVRF\nIEtFWS0tLS0tCg==\n" } \ No newline at end of file