forked from rubber/rubber
-
Notifications
You must be signed in to change notification settings - Fork 2
/
CHANGELOG
1600 lines (1217 loc) · 66.5 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2.10.2 (07/07/2014)
Improvements:
============
[base] Upgraded from ruby-build 20140225 to 20140702 to get newer definitions. <65f6900>
[base] Upgraded default Ruby from 2.0.0-p451 to 2.0.0-p481 to get latest security fixes. <6f268ea>
[graphite] Clean up after the graphite installation. <46b243d>
[graphite] Upgraded from graphite 0.9.10 to 0.9.12. <c951c4d>
Bug Fixes:
=========
[graphite] Use different download URLs for graphite because GitHub has an SSL bug preventing downloads on Ubuntu 12.04. <1cf6790>
2.10.1 (07/01/2014)
Improvements:
============
[core] Validate the SSH key configuration. <c6bb4af>
Bug Fixes:
=========
[core] Fixed syncing security group rules with default VPC. <f4f073a, 1a527bf, 60ff192>
[core] Fixed a compatibility problem with Ubuntu 10.04 due to an incompatible core package. <ba6e656>
[passenger_nginx] Fixed a problem with a template due to random characters at the end of a line. <fa480ca>
2.10.0 (06/20/2014)
Improvements:
============
[delayed_job] Added :kill and :status tasks. <52b593e>
[delayed_job] Run in bundle exec context. <52b593e>
[delayed_job] Move monit-delayed_job.conf inside the monit vulcanizer, as is the standard for all other templates. <52b593e>
[delayed_job] Added PID file control. <52b593e>
[delayed_job] Monit now has a 10-minute timeout because the PID file being monitored is not generated until after delayed_job daemonizes. <52b593e>
[graylog] Upgraded to graylog 0.2.2. <51d9b26, 30fbbbc, fb0cff8, 8a72986, 0785b66>
[graylog] Added a tools proxy for the graylog server API browser. <899555a>
[graylog] Configured the mail transport. <686ce6b>
[passenger_nginx] Install Passenger/Nginx from packages instead of building by hand. <103feee, 0c6eb6a, 499c08c, 9a88ffe>
[passenger_nginx] Remove unneeded deploy.task blocks. <1b9b252>
[passenger_nginx] Removed munin passenger plugins. <a91f837>
[unicorn] Standardized Rake names with init script names (use terms "upgrade" and "kill"). <4c616ba>
[unicorn] Increased Unicorn upgrade timeout to 10 mins. <4c616ba>
[unicorn] Clarified log messages. <4c616ba>
[unicorn] Allow setting PID file and number of workers from Rubber config. <4c616ba>
Bug Fixes:
=========
[core] Fixed template calls to rubber.run_config (a regression introduced in 2.9.0). <66310a5>
[graylog] Prevent creating the same graylog inputs twice. <ad8a177>
[unicorn] Fixed unicorn init script. <4c616ba>
2.9.0 (06/02/2014)
New Features:
============
[core] Added support for private networking in Digital Ocean. <aee6114, c2c2059, 83fa02e, dbced9d, b1c9564, 54d6405, 55f7e13, bc1a05a>
[core, local_windows] Support for using rubber on Windows. <738cd3f, dd049bf, bd82f2a, 6bd51e7, f199cad, cfa3012, 329acad, 0b0afa3, 86bf2d0>
Improvements:
============
[delayed_job] Added Rails 4 compatibility. <c374142, 982f08b, 2f49cf7>
Bug Fixes:
=========
[base] Updated the Digital Ocean image to one that works. <48f7984>
2.8.1 (05/01/2014)
Bug Fixes:
=========
[core] Detect alternate location of secret file when it is moved into the /config/rubber dir on remote servers. <9bd12ad>
[core] Make sure add-apt-repository is available on Ubuntu > 12.04. <36c423d>
[core] Fixed compatibility with Vagrant 1.5.x. <55416f8>
[selenium_grid_hub] Replaced hard-coded app user with app_user variable. <afc7e9c>
[selenium_grid_hub] Fixed dynamic MaxPermSize. <abd46cd>
[web_tools] Underscores aren't valid in hostname, so convert to hyphens like we do everywhere else. <bbe0b81>
2.8.0 (03/30/2014)
New Features:
============
[base, core] Added the ability to specify a package manager mirror for faster package installation. <a127846>
Improvements:
============
[base] Use binstubs if available in the rubber script since it can be much faster, particularly on JRuby. <eefa30e>
[core] Suppress dpkg output to cut down on noise in setting up iptables firewall rules. <59997aa>
[core] Only upload the rubber config once, rather than everytime run_config is called. <1b14e73>
[core] There's no need to specially upload rubber config files when using a non-SCM deploy strategy. <3227440>
[core] Prevent tasks from running multiple times if mounting a volume to a location that would blow away the deploy directory. <c222684>
[core] Sped up config file transformation a bit by cutting down on file system operations. <5623fac>
[core] Defer loading of rubber encryption code until it's actually needed.
Bug Fixes:
=========
[core] Fixed a bad env var reference in setting up iptables firewall rules. <1dc844a>
2.7.5 (03/28/2014)
Improvements:
============
[base] Upgraded ruby-build from 20140210 to 20140225 and bumped the default ruby version from 1.9.3-p484 to 2.0.0-p451. <396b72e>
[core] Install iptables if it's not already installed and it's needed to set up (non-EC2) firewall rules. <581c2e0>
[redis] Upgraded from redis 2.8.7 to 2.8.8. <8775a76>
Bug Fixes:
=========
[core] Fixed a problem whereby if a part of the :deploy_to path (e.g., /mnt) is remounted with an attached volume, the code may not deploy properly. <a98edcc>
2.7.4 (03/13/2014)
Improvements:
============
[graylog] Upgraded from Graylog 0.20.0 RC1 to 0.20.1. <67c3c77, 726b00a>
[redis] Upgraded from redis 2.8.5 to 2.8.7. <60e2e2b, 20ea7bc>
Bug Fixes:
=========
[core] Only upload the iptables persistence scripts to the host that the rules are being generated for. <f6db5ed>
2.7.3 (02/12/2014)
Improvements:
============
[core] Be more aggressive about saving iptables rules to guard against unexpected shutdowns. <9c62aa1>
2.7.2 (02/12/2014)
*SECURITY WARNING*: Versions of rubber prior to this release will not save your iptables rules. Upon reboot of your
server, it will load with a clear set of rules, effectively making every port on your server publicly accessible.
Who is affected?
Anyone not using EC2. The EC2 code path uses EC2 security groups. All other providers use iptables.
How do I fix it?
Upgrade to rubber 2.7.2 and run `cap rubber:setup_security_groups`, which will both refresh the iptables rules and
set up the files needed to persist and releoad rules.
Improvements:
============
[base] Upgraded from ruby-build 20131220.1 to 20140210. <a1288ac>
Bug Fixes:
=========
[core] Save and restore iptables rules upon reboot. <72526aa>
2.7.1 (02/04/2014)
Improvements:
============
[redis] Upgraded from redis 2.8.4 to 2.8.5. <630c671>
Bug Fixes:
=========
[core] Fixed a permissions problem with some files in the gem.
2.7.0 (02/03/2014)
New Features:
============
[core] Added a new @delayed_post option to template preambles to defer executing a command until all templates have been processed. <41cae48>
[delay_job] Added a new Delayed::Job role. <c7e33f5>
[discourse] Added a new Discourse role that will take care of deploying the Discourse forum software and dependencies. <f01eeac>
[ffmpeg] Added a new ffmpeg role. <23ba011>
[newrelic] Added a new role for setting up the NewRelic system daemons. <7bc89ce>
Improvements:
============
[core] Force shut down vSphere VMs when destroying an instance so the process isn't blocked if the machine doesn't shut down gracefully. <12bf770>
[elasticsearch] Upgraded ElasticSearch from 0.19.12 to 0.90.10 and switched to the official deb packages. <a399316, 804bd1f, 4ca29e2>
[graylog] Upgraded from graylog 0.9.6p1 to 0.20.0-rc1.1 <3476003, 4ca29e2>
[memcached] Added a monit template. <87763e9>
[memcached] Allow specifying the location of the PID file. <31bc9fb>
[memcached] Major overhaul of the memcached template to modernize it. <8757cf8, 4307270, 8cebb56, ae8d89a>
[mongodb] Monit will restart mongodb if the PID file doesn't exist. <7a57c3e>
[redis] Upgraded from redis 2.6.16 to 2.8.4 <3877205, 644e6ee>
[solr] Major overhaul of the solr template to modernize it. <a45046d, 2fc4779, 02e04b0, 676256d>
Bug Fixes:
=========
[core] Fixed issue with calling cap rubber:setup_security_groups on multiple hosts. <bb17621>
[core] Fixed volume creation on non-EC2 providers. <c49df54>
[elasticsearch] Remove the elasticsearch-head plugin before attempting to reinstall it. <6438b68>
[mysql] Delete all blank users initially to prevent issues with using a host value of '%'. <e75974a>
[passenger_nginx] Added missing 'nginx_log_dir' setting to rubber-passenger_nginx.yml. <e6c3cdf>
[passenger_nginx] Rebuild Passenger/Nginx when Ruby version changes. <fbb1e54>
[solr] Fixed some typos in the Solr configuration. <a45046d>
[unicorn] Fixed unicorn process management script. <c56a93c>
2.6.5 (01/07/2014)
Bug Fixes:
=========
[base] Update instance name for DigitalOcean: Ubuntu 12.04.3 x64. <0d57e12>
[core] Fix vagrant 1.4.x sending array of ssh keys. <70fe6b6>
2.6.4 (12/23/2013)
Improvements:
============
[base] Upgraded ruby-build from 20131122.1 to 20131220.1. <c869c00>
[base] Upgraded default ruby from 1.9.3-p448 to 1.9.3-p484. <d843c0c>
Bug Fixes:
=========
[core] :only => { :primary => true } getting clobbered <a9814c9>
[core] Clear out potentially cached state upon initialization if initializing Rubber twice in the same runtime. <1d9fe51>
2.6.3 (11/19/2013)
Improvements:
============
[core] Drastically improved the speed of repeated configuration lookups.
[core] Fixed a potential issue uploading backups to S3 if the bucket name contains the '.' character. <7ea9f39>
Bug Fixes:
=========
[core] Fixed creating EBS volumes (issue #417). <a7d47c5>
2.6.2 (11/07/2013)
Improvements:
============
[memcached] Added configuration of max memcached memory size through rubber var 'memcached_max_mem'. <ba28c39>
[cassandra] Quote all `rubber_env.host` in Monit config template in case hostname conflicts with monit keyword. <61bd9b1>
[graphite] Quote all `rubber_env.host` in Monit config template in case hostname conflicts with monit keyword. <61bd9b1>
[elasticsearch] Quote all `rubber_env.host` in Monit config template in case hostname conflicts with monit keyword. <61bd9b1>
[graylog] Quote all `rubber_env.host` in Monit config template in case hostname conflicts with monit keyword. <61bd9b1>
[jetty] Quote all `rubber_env.host` in Monit config template in case hostname conflicts with monit keyword. <61bd9b1>
[mongrel] Quote all `rubber_env.host` in Monit config template in case hostname conflicts with monit keyword. <61bd9b1>
[redis] Quote all `rubber_env.host` in Monit config template in case hostname conflicts with monit keyword. <61bd9b1>
[sphinx] Quote all `rubber_env.host` in Monit config template in case hostname conflicts with monit keyword. <61bd9b1>
[torquebox] Quote all `rubber_env.host` in Monit config template in case hostname conflicts with monit keyword. <61bd9b1>
[zookeeper] Quote all `rubber_env.host` in Monit config template in case hostname conflicts with monit keyword. <61bd9b1>
Bug Fixes:
=========
[base] Fixed unknown method 'known_roles' when running create_staging. <44167c4>
[core] Fixed ip_address deprecation for digital ocean. <62d2e90>
[core] Fixed a thread safety issue in Capistrano via a monkey-patch. <f3f9086>
2.6.1 (11/06/2013)
Improvements:
============
[core] Don't try to connect to the fog compute or storage providers until we actually need them. <5536511>
Bug Fixes:
=========
[core] Fixed a bug attaching EBS volumes, introduced by a recent refactoring. <51d2619>
[core] Fixed setup_remote_aliases to work when an SSH gateway is in place. <3a776f9>
2.6.0 (11/05/2013)
New Features:
============
[core] Added a new provider for vSphere. See https://github.com/rubber/rubber/wiki/Providers for configuration details.
Improvements:
============
[base] Upgraded to ruby-build 20131030 <214423d>
[base] Enhances database.yml to respond to active environment, not just 'production' <3843caf>
2.5.5 (10/16/2013)
New Features:
============
[base, core, postgresql] Added a uniform way of handling private network address blocks <61c5e0c>
[core] Added cleanup hook for 'vagrant destroy' for Vagrant version >= 1.3.0. <2a3c441>
Improvements:
============
[base] Vagrant base config now sets up key file for rubber to SSH into the machine <40c6c3c>
[base] Default staging_roles config now reflects the cluster more accurately <255a8e9>
[core] Only modify /etc/hosts on rubber:refresh if an IP address has actually changed <fe5e28e>
[core] Support iptables rules without port definitions <de744c1>
Bug Fixes:
=========
[core] Fixed a problem with tasks using the `:only` option being overwritten by rubber internally (#397) <d3ae2fa>
[core] Don't install fog 1.16.0 until we're able to sort out API compatiblities with it <346c99b>
[core] Presen the $REBOOT value across multiple calls to `maybe_reboot` <f03dc22>
[web_tools] Proxied service hostnames should not have underscores since that would be an invalid hostname <055919f>
2.5.4 (09/26/2013)
Improvements:
============
[base] Upgdate AWS region options <9857010>
[base] Upgrade ruby-build to 20130923 <5c053cb>
[core] Far more efficient multi-port IPTables rules <1b13728, e15eb86>
[core] Handle new platforms, such as Mac, more gracefully <74d5831>
[redis] Upgraded redis from 2.6.13 to 2.6.16 <b18a89f>
[web_tools] Handle more redirect scenarios for proxied services <c73bcce>
Bug Fixes:
=========
[core] Fixed fail-fast behavior with nohup on AWS operations <cc1e299>
[core] Wait up until 2 minutes for EC2 tag creation <3b6819a>
[core] Set AWS region options for S3 <3bd20cd>
[passenger_nginx] Removed conflicting passenger_min_instances configuration <cd7b006>
[passenger_nginx] Added missing nginx_log_dir config <4684b26>
[redis] Fixed redis download link <8a2a47d>
2.5.3 (07/11/2013)
Improvements:
============
[base] Upgraded to ruby-build 20130628 and Ruby 1.9.3-p448. <caa9e06>
[base] Updated Digitial Ocean default zone info and image_id. <11502d2>
[base, core] Re-install the VirtualBox add-ons when upgrading the kernel in a Vagrant instance so you can package VMs properly.
[core] Ensure the SSH public key is installed for the user account if one is set. <75e7f20>
Bug Fixes:
=========
[core] Allow the Vagrant plugin to interact with the local ruby installation when RVM is used. <98a061a>
[core] Make sure we note the Vagrant provider was used in the instance file. <d1573fe>
2.5.2 (06/13/2013)
Bug Fixes:
=========
[core] Do not use the embedded Vagrant ruby installation by default.
2.5.1 (06/09/2013)
-----------------
New Features:
============
[browsermob_proxy] Added a BrowserMob Proxy template.
[selenium_grid_hub] Added a Selenium Grid hub template.
Improvements:
============
[graylog] Use JDK 7 instead of JDK 6.
[jetty] Use JDK 7 instead of JDK 6.
Bug Fixes:
=========
[core] Refresh already created instances in Vagrant so firewall rules are adjusted for any modified roles.
[core] Better handling of serial_tasks when no instances have a defined role.
[graylog] Fixed loading graylog-web in any environment other than "production."
2.5.0 (06/03/2013)
-----------------
New Features:
============
[core] Added support for using Rubber as a Vagrant provisioner. Now you can run Rubber easily against local VMs.
[core] Don't pass nil SSH key file entries to Capistrano because it hides the error message and makes things really hard to track down.
2.4.2 (06/01/2013)
------------------
Bug Fixes:
=========
[core, base] Tweaked the asset precompilation interop code to work in all cases now <c24b72e>
2.4.1 (05/30/2013)
------------------
Bug Fixes:
=========
[core] Fixed a problem with transforming templates that reference the "current" directory as part of a deploy <21e3b92>
[sidekiq] Only try to silence sidekiq if current_path actually exists <f20bd94>
2.4.0 (05/24/2013)
------------------
New Features:
============
[core] DigitalOcean is now supported as a cloud provider
[core] Added a "generic" cloud provider for connecting to dedicated hardware, VMs, and otherwise unsupported cloud providers
Bug Fixes:
=========
[core] Trigger rubber:config after deploy:update_code so machines with both a DB and the asset pipeline can bootstrap properly <dc5d0b2>
2.3.1 (05/12/2013)
------------------
Bug Fixes:
=========
[mysql] Use more common percona-toolkit package. <e40b323>
2.3.0 (05/11/2013)
------------------
New Features:
============
[core] Added a --fakeroot option to rake rubber:config task to aid in debbugging rubber templates. <20e3fb0>
[collectd] Added a :status task to check the status of a remote service. <55f593a>
[graphite] Added a :status task to check the status of a remote service. <55f593a>
[memcached] Added a :status task to check the status of a remote service. <55f593a>
[mongodb] Added a :status task to check the status of a remote service. <55f593a>
[monit] Added a :status task to check the status of a remote service. <55f593a>
[nginx] Added a :status task to check the status of a remote service. <55f593a>
[unicorn] Added a :status task to check the status of a remote service. <55f593a>
Improvements:
============
[base] Upgraded from ruby-build 20130222 to 20130501. <4ea28f8>
[base] Configure Capistrano to compile assets on the `app` role, not the `web` one, in order to better match a typical Rubber project layout. <9c8096e>
[core] Allow customizing Capistrano config that rubber has traditionally taken ownership of. <ff69b52>
[graphite] Removed redundant ping check. <9950dc4>
[memcached] Added a rotate_logs cron job for memached. <f4d49ac>
[mongodb] Added a rotate_logs cron job for MongoDB. <b93665d>
[nginx] Allow configuration of the nginx log directory. <f4ef26f>
[nginx] Removed "text/html" from the gzip config to get rid of a warning message. <2429a7d>
[passenger_nginx] Upgraded to Passenger 3.0.19 and nginx 1.2.8. <48fd214, 9a8d81c>
[passenger_nginx] Added HTTP_X_QUEUE_START CGI param to work better with NewRelic. <48fd214>
[redis] Upgrade to redis 2.6.13 <9fb33e2>
Bug Fixes:
=========
[base] Fixed a typo in the cloud storage example configuration. <409137b>
[core] Honor the `host` option in the rubber:config rake task. <9477b8b>
[core] Fixed an issue with `symbolize_keys` and nested hashes that was resulting in broken MX record requests for Route 53. <13fdffd>
[core] Fixed an issue with vulcanizing multiple templates at once. <abca6e3>
[core] Fixed a problem with newer Capistrano/HighLine causing role names to be serialized incorrectly in an instance file. <9ea1fa6>
[elasticsearch] The upstart script lies about the service status, causing us to think the service is running when it isn't and thus preventing proper start up. <81aab0e>
[graphite] The upstart script lies about the service status, causing us to think the service is running when it isn't and thus preventing proper start up. <d92f077>
[mongodb] The upstart script lies about the service status, causing us to think the service is running when it isn't and thus preventing proper start up. <d92f077>
[mysql] Maatkit is now part of percona-tools, so our package name was outdated. <2e8d5f6>
[redis] The upstart script lies about the service status, causing us to think the service is running when it isn't and thus preventing proper start up. <d92f077>
[torquebox] The upstart script lies about the service status, causing us to think the service is running when it isn't and thus preventing proper start up. <d92f077>
2.2.4 (03/05/2013)
------------------
Bug Fixes:
=========
[mysql] Reverted the service status check since it returns a success status code even if MySQL isn't running.
2.2.3 (03/04/2013)
------------------
Improvements:
============
[base] Updated the default set of gemsources
[base] Updated to the latest Ubuntu 12.0.4 LTS AMI
Bug Fixes:
=========
[all] Don't fail starting a service if it's already running.
2.2.2 (02/22/2013)
------------------
Improvements:
============
[base] Updated to ruby-build 20130222 to get the latest MRI and JRuby security releases <401da62>
[memcached] Switched from memcache-client to dalli for the client gem, as dalli is actually maintained and overall better <2cfc235>
Bug Fixes:
=========
[base] Fixed #287: Failure converting from RVM to ruby-build <c787fdf>
[sidekiq] Fixed #281: sidekiq refuses to run with stdin: is not a tty error <45697bf>
[sidekiq] Fixed monit config for Sidekiq, which shouldn't be using binstubs <3f28b6d>
2.2.1 (02/11/2013)
------------------
Improvements:
============
[core] Push alias changes in local instance.yml files to cloud tags <1adebd0>
[core] Namespaced capistrano role tasks <48fb78e>
[base] Moved security group configuration to rubber.yml <ccc9f3e>
Bug Fixes:
=========
[core] Added support for lambdas in role options for optional tasks <72ff4b9>
[core] Added support for lambdas in role options for serial tasks <35716a6>
2.2.0 (02/08/2013)
------------------
New Features:
============
[core] Switched license to Apache Software License version 2
[base] Replaced RVM with ruby-build.
[base] Add ability to obfuscate rubber secret file (MRI only) <c9d8aac>
[postgresql] basic slave promotion for postgresql <8b96f71>
[sidekiq] Added a sidekiq template. <bc31d00>
[solr] Added a Solr 4 template <8a5b041>
[torquebox] Added support for logging to Graylog2 from TorqueBox. <b2685d5>
Improvements:
============
[core] Upgraded to net-ssh 2.6, as it supposedly fixes all the connection problems we've been seeing with 2.5.x. <9b32ecb>
[core] Allow the rubber:start task to start multiple instances <432f95e>
[core] Allow rubber:stop to manage multiple instances <7dd6ea2>
[core] Improve logging and handling of instance validation <c3e5e9b>
[base] Bumped up to the latest Ruby 1.9.3-p385 release. <140abd1>
[base] update ubuntu ami to latest 12.04, make default instance size c1.medium to improve initial user experience <a270c7b>
[complete_passenger, complete_passenger_nginx, complete_unicorn_nginx] remove db template dependancy from complete_* templates <5be6300>
[complete_unicorn_nginx] complete_unicorn_nginx template doesn't need haproxy <54faef3>
[elasticsearch] Upgraded Elastic Search from 0.19.3 to 0.19.12. <96e5aa0>
[graphite] Added a monit file for graphite. <87eafab>
[graphite] Added more control to graphite config. <8a2b84e>
[graphite] Allow re-mounting the graphite storage directory elsewhere since it can fill the root store rather quickly. <80f5527>
[graphite] Hook up ping data from collectd to graphite. <e8d466b>
[graphite] Migrate graphite_web to uwsgi <aaebea8>
[graphite] Upgraded graphite from 0.9.9 to 0.9.10. <733937f>
[passenger, torquebox] Be a bit safer about assets & CDNs by default. <197eb93>
[passenger] bump passenger version <9fde4bf>
[redis] Upgrade redis from 2.4.16 to 2.4.18. <d1a9e06>
[sphinx] Updated sphinx custom_install task to use correct download url and changed version to latest stable release <b61df24>
[torquebox] We no longer need to restart TorqueBox completely on deploy, since the memory leak & deploy race condition requiring it have been removed. <636c78f>
[torquebox] Upgraded from TorqueBox 2.2.0 to 2.3.0. <a95554c>
Bug Fixes:
=========
[core] Set up the elastic IP when it doesn't match the instance's current external IP <ea960c9>
[core] Fix reboot behavior so SSH connections are re-established upon reboot. <d77ce29>
[core] Fixed some Ruby 1.8.7 compatibility issues.
[core] Fix syntax error in start_instances() <d23ad3c>
[core] Clean up broken method call in stopping instances <dd90c5f>
[core] Bugfix: net-ssh requires :keys to be an array, not string <74f10d3>
[core] Fix threading for start_instances() <a0c3930>
[apache] Added missing packages to make SendFile work on Apache. <6c7f84e>
[base] quote account number to allow for leading 0s in rubber.yml<b46b674>
[complete_unicorn_nginx] unicorn_nginx template does not exist <52953fa>
[graphite] Bugfix: Graphite depends on collectd. <5f7de4a>
[graphite] Move graphite nginx config to nginx role <c92e8d3>
[resque] resque only has its own roles now, so fix to make sure resque_worker role gets vulcanized <7dbca27>
[torquebox] TorqueBox should not reference Passenger at all. <9db2dff>
2.1.2 (10/05/2012)
------------------
New Features:
============
[core] Allowing marking of a config variable as overriding the ones that come before it, so that non-scalar values (lists/maps) get overridden instead of combined <3d66fc8>
[core] Allow erb in rubber*.yml <60e6394>
2.1.1 (10/02/2012)
------------------
New Features:
============
[base] add ability to override by environment in rubber*.yml <f4c4af3>
[couchbase, monit] add couchbase template <550dff4>
Improvements:
============
[core] Updated sudo_script to sudo to any user. <288ef5d>
[apache, jenkins] create an apache bootstrap so jenkins template doesn't have to duplicate logic <5862791>
[complete_passenger, passenger] do a rolling passenger restart by tieing into apache rolling restart <065d757>
[complete_passenger] dont do health check over ssl by default (Fails with self signed cert) <a5a8da7>
[graylog] Updated graylog from 0.9.6 to 0.9.6p1. <864795c>
[graylog] Use puma instead of passenger for graylog-web, since it works much better with JRuby. <7419705>
[jenkins] Added support for backing up Jenkins. <a44162d>
[jenkins] Fixed Jenkins config. <bbaa6f4>
[jenkins] Make sure we have the header module enabled for the config to work. <93d03d8>
[passenger] Bumped rubber from 3.0.12 to 3.0.15. <bc408f1>
[passenger_nginx] Updated Nginx config to improve performance of asset pipeline. <7184327>
[torquebox] Updated TorqueBox config from 2.0.3 to 2.1.0. <13a0268>
Bug Fixes:
=========
[core] fix merging of alias records <d314857>
[core] Refactor to avoid fog deprecation, fixes #222 <43ea42f>
[core] assign defaults for partial records in rubber-dns.yml when running setup_dns_records <a72a701>
[monit] monit check for resque scheduler - fixes #221 <34a4fde>
[mysql] Delete anonymous MySQL user when bootstrapping the db. Fixes #185 (pull request #212) <ce84ff2>
[torquebox] Always use the rubber system JRuby with Torquebox. <9c03a02>
2.1.0 (08/20/2012)
------------------
New Features:
============
[unicorn] Added unicorn, complete_unicorn template, thanks messick!
Improvements:
============
[redis] Bumped the redis version from 2.4.12 to 2.4.16. <ab6923e>
[zookeeper] bumped up zookeeper to 3.3.6 <409dbac>
[nginx, passenger_nginx, resque] Add nginx web_tools proxies with same strategy as apache, thanks messick!
[core] updated fog ~> 1.5
Bug Fixes:
=========
[base] allow port specific source_group rules in security_groups, allow source_groups to refer to groups in other projects <b6dba33>
[postgresql] Added sudo flag to change $HOME when running Postgresql commands, thanks infamouse <b3ff1ff>
[core] Handle finding a host for an empty domain, fixes #199 <6ba2181>
[core] with stopping exec queue, mdadm will not be able to create RAID array, thanks messick! <5662653>
[core] more friendly split for arguments, fixes #196 <5af6777>
[core] We need to close a file before we can unlink it in JRuby >= 1.7. <beb7bf0>
[core] call fatal, not fail method - fixes #204 <56fb7dd>
2.0.8 (08/01/2012)
------------------
[core] fix update of dns for instances <f57145c>
[core] Merge commits shouldn't be in the changelog. <bdff81a>
[core] Another typo fix. <bcc2381>
[core] Fixed a typo. <2c8ec30>
[core] Simplified new features in 2.0.6 release to highlight what was added. <a9a1ba1>
2.0.7 (08/01/2012)
------------------
[core] remove useless log msg <09c1a16>
[core] fix deprecation msg <c52c35f>
[core] uncomment the code that updates dns <df46f39>
2.0.6 (08/01/2012)
------------------
New Features:
============
Added a template for resque-scheduler.
Improvements:
============
[core] multi-host rubber:reboot <56ef06f>
[core] update nettica to work with new rubber-dns.yml format <1bfa525>
[base] format change to better support multi-value records like MX, round robin A, etc refactor to better handle route53/zerigo differences in fog add export_dns_records to allow dumping from provider to a rubber-dns.yml format <7c806cf>
[base] update base ami <be8c0f4>
Bug Fixes:
=========
[core] isolate security groups from global namespace so having a key with the same name as a capistrano role doesn't cause problems <41ba2cf>
[core] make cron logs more user friendly and prevent exponential explosion of files in log dir due to interaction with rubber:util:rotate_logs <7e11a7f>
[core] fix nettica support (fix super call, credentials) <14fd048>
[core] don't attempt to read a non-existant instance file in cloud storage <c4d11ac>
[core] Avoid error if localtime file already exists <cff1fb4>
[base] whitelist ssh-related variables in sudoers so capistrano tasks can take advantage of ssh-agent forwarding <1009e7b>
[collectd] add to env variable whitelist rather than overwrite it <dff23f7>
[elasticsearch] Ensure unzip package present for elasticsearch <40af636>
[graphite] fix for multiple targets in graph defn <b72c469>
[jenkins] removed hardcoded application, thanks to scotterc for finding this <b5b26b4>
[jenkins] sun-java6 fails on Ubuntu 10.04 <88779a9>
[passenger] Removed the code to remove config.ru from Rails apps as it's no longer needed in Passenger 3. <517d23e>
[postgresql] Fixed an issue with PostgreSQL messing with casing on us. <72e63b5>
[resque] connect to redis_master role, rather than just redis <f778dc8>
[resque] explicitly make Rubber.root a string <c0852b2>
[resque] placeholder config for dev <d855381>
[resque] rails_env was changed to Rubber.env a while ago I believe <2376db2>
[torquebox] Ensure unzip package present for torquebox <7f4d7aa>
[zookeeper] fix zookeeper server ids <3273b53>
2.0.5 (06/12/2012)
------------------
New Features:
============
[torquebox] Initial work on a TorqueBox template. <160557b>
[torquebox] Merge pull request #154 from wr0ngway/add_torquebox <d750ecb>
[torquebox] [torquebox] Bumped to TorqueBox 2.0.3 from 2.0.2. <2851768>
[torquebox] [torquebox] Do rolling deploys with TorqueBox so the site doesn't go down when deploying. <8582889>
Bug Fixes:
=========
[core] force older version of net-ssh till issues get resolved <5b8c2f7>
[core] Fix typo causing Ubuntu 11+ to time out waiting for incorrect volume id <cf1dfa4>
[core] Merge pull request #168 from akremer/fstab_fix <9d2e6fc>
[core] Restore fstab.bak if EBS times out <b27cc79>
[apache] use dash instead of another subdomain level for web tool proxy hosts to prevent ssl complaints with wildcard certs <8237bac>
[cassandra, collectd, elasticsearch, graphite, graylog, jenkins, mongodb, mysql_cluster, redis, zookeeper] be more strict in selecting role directory during bootstrap <f8818e4>
[complete_passenger_nginx] Changed passenger_nginx role dependencies so that web_tools can be run on a separate instance. <8a3cefb>
[complete_passenger_nginx] Merge pull request #166 from rwc9u/web_tools_nginx_multi_instance <44ec7e1>
[passenger_nginx] Changed nginx.conf to only include the tools.conf on an instance that has the web_tools role. See the following thread where this change was discussed: <376428f>
[passenger_nginx] Merge pull request #165 from rwc9u/web_tools_nginx <88ab69a>
2.0.4 (05/15/2012)
------------------
Bug Fixes:
=========
[apache] make sure admin uis know we are ssl so they generate correct urls <b6409da>
[collectd] fix syntax error <205a07a>
[resque] use puma to run resque server as a rackup with rails environment loaded so resque-retry can find job classes <518eb27>
2.0.3 (05/11/2012)
------------------
New Features:
============
[core] Support for Route53 ALIAS records so the zone apex can be pointed at ELB groups
Improvements:
============
[core] Auto-add domain name to host records in Route 53 so user-facing config is much simpler
[passenger] Upgraded to Passenger 3.0.12 from 3.0.11
Bug Fixes:
=========
[core] Fixed an issue with wildcard hosts in Route 53.
[core] Fixed an issue with creating an MX record in Route 53 (NB: we still cannot create multiple MX records).
[collect] Fixed an issue deploying if a graphite_server doesn't exist in the cluster
2.0.2 (05/08/2012)
------------------
New Features:
============
[graylog] Added an admin UI for ElasticSearch
Improvements:
============
[base] Use ntpd instead of cron for syncing time
[core] Auto-reboot for kernel updates on initial instance bootstrap rather than prompting the user to reboot
[redis] Upgraded to redis 2.4.12 from 2.4.11
Bug Fixes:
=========
[core] Fixed issue with Route 53 DNS not updating records properly
[core] Wait for EBS volumes to be fully attached before trying to format them
[core] Fixed issue with running `rubber config` locally
[collectd] Made the runner executable
[graphite] Fixed some broken URLs in the dashboard
[passenger] Fixed issue with using a path to config.ru before capistrano completed setting it up.
[resque] Replaced a hard-coded reference to the resque-pool PID file with the rubber configured one
[resque] Append to the resque-pool.log file rather than overwrite it
[zookeeper] Fixed the detection of an existing zookeeper installation
2.0.1 (04/29/2012)
------------------
New Features:
============
[base] Added the ability to supply additional arguments to RVM (e.g., to install additional patches or modify compile arguments)
[graphite] Added a simple graphite dashboard suitable for TV display
Improvements:
============
[redis] Upgraded to redis 2.4.11 from 2.4.6
[base] Upgraded to RVM 1.13.0 from 1.10.2
[base] Upgraded to Ubuntu 12.04
Bug Fixes:
=========
[base] Assorted fixes/workarounds for 12.04
[collectd] Fixed an issue with libperl and collectd
[redis] Fixed an issue with the redis role not installing the zip packaged, needed for backup
2.0.0 (04/24/2012)
------------------
New Features:
============
Refactored cloud layer to use fog, implement rubber use of aws/s3 with fog
Abstract out s3 to go through rubber cloud layer (fog)
Allow simpledb, s3 or alternate file for instance storage, with backups to same
Added Graylog recipe
Added Elasticsearch recipe
Added Unicorn recipe [Thanks Alex Kremer]
Added Graphite recipe
Added Collectd recipe
Added Graylog to complete_passenger template
Make collectd/graphite default instead of munin
Use resque-pool to manage resque workers
Option to reboot if neccessary after package update
Added a rubber binary and used it for running everything (cron, etc, removed dependency on rake)
Added JRuby support
Improvements:
============
Start using upstart for all daemons (complete_passenger_postgresql, resque, graylog)
Better discovery of roles, default staging instance to these roles
Replace global RUBBER_* vars in ruby with Rubber.*
Bump image to latest 10.04
check harder when determining project roles <7570d47> [Matt Conway]
Cleanup crosscutting templates (monit, munin, collectd) to be self contained
Remove hard dependency on nettica and lazy load it
Upgraded config for PostgreSQL 9.1. [Thanks Kevin Menard]
Upgraded to redis 2.4. [Thanks Kevin Menard]
Bump rvm/ruby/rake/rubygems versions
Bump passenger version
Asset pipeline support for rails 3.1, cleanup some rails detection issues
Extract fog dns from zerigo to allow other providers
Respawn cap/rake with bundler if needed
Proxy services on their own tools subhost to avoid issues with rewriting paths in CSS and JS [Thanks Kevin Menard]
Automate web tools proxy mappings for IP aliases in /etc/host, dns, and web_tools index and vhosts files
Added a rails template for creating a rails app to test rubber
Include instance_type in rubber:describe
Replaced zerigo_dns gem usage with fog [Thanks Kevin Menard]
Changed PostgreSQL defaults to make better use of memory for shared_buffers
Bug Fixes:
==========
fix mongo monit to remove pidfile or mongo won't start
fix mongo bootstrap
make start/stop consistent, only restart when bootstrap necessary
fix redis bootstrap
fix resque_web bootstrap
update redis to use upstart, thereby removing hackish dual install
fix rvm installer url
add back in base postgresql role
fix db backup host
validate config set, create image bucket on bundle
made setup_remote_aliases update /etc/hosts for each host directly, preserve ordering to be consistent with setup_local_aliases
Fix volume mounting [Thanks Alex Kremer]
We shouldn't have a dependency on plpythonu. [Thanks Kevin Menard]
Fixes to nginx/passenger [Thanks Ajay Kumar G]
make sure open4 gets bundled
fix create_staging for pre-existing instance
Ensure Zerigo makes calls using XML in 3.1 [Thanks Alex Kremer]
Fix suggestion in rubber.yml on how to list availability zones. [Thanks Maxim Chernyak aka hakunin]
Locked the default version of Ruby down to a particular patch release so by default an entire cluster will use the same ruby [Thanks Kevin Menard]
Ruby 1.9.3 fixes with nginx
1.15.0 (09/13/2011)
-------------------
New Features:
============
Added PostgreSQL streaming replication configuration (thanks Kevin Menard)
Added the ability to specify mount options for volumes (thanks Alex Kremer)
Added a minimal Passenger nginx configuration (thanks Will Koehler)
Added SSL support for nginx-passenger (thanks Michael Glass)
Added staging environment support fon nginx-passenger (thanks Michael Glass)
Improvements:
============
Resque-web now runs as an unpriviliged user (thanks Scott Carleton)
Better error message when having issues loading the Zerigo gem (thanks Rupert Meese)
Upgraded Passenger to 3.0.9 (thanks Kevin Menard)
Upgraded Redis to 2.2.13 (thanks Kevin Menard)
Better .gemrc file setup (thanks Kevin Menard)
Bug Fixes:
==========
Fixed an issue with setting up redis on Ubuntu 11.04 (thanks Kevin Menard)
Fixed an issue with mysql-proxy not being added to the correct run level (thanks Alex Kremer)
Fixed a typo in the passenger_nginx module name (thanks Alex Kremer)
Fixed an issue with the munin generated Web site location (thanks Will Koehler)
Fixed the open4 require issue (thanks Will Koehler)w
Fixed a bunch of nginx-related issues (thanks Will Koehler)
Fixed an environmental issue running ntpdate (thanks Will Koehler)
Fixed compatibility issues with the Psych parser used in Ruby 1.9.2 (thanks Kevin Menard)
Fixed timing issue with multiple resque workers starting (thanks Matt Conway)
Fixed an issue with hostnames that happen to be monit commands (thanks Michael Glass)
1.14.1 (06/02/2011)
-------------------
Upgraded the version of RVM installed by default
Switched from using our own installation method to using the new RVM installer
1.14.0 (06/02/2011)
-------------------
Projects using bundler will now run rake with bundle exec
Added ability to lockdown the version of rake that RVM will install (vulcanize base for the changes)
Added the image type and ID for each instance to the instance file
Fixed an issue with LVM groups keeping physical volumes in /etc/fstab
Fixed an issue using the mysql2 adapter with the stock MySQL config
Disable ri and rdoc generation on new hosts
1.13.2
-----
fix npe <184cbac> [Matt Conway]
Merge pull request #61 from dzinevich/e173588f4018bc118785bd3806d262ce3bdd033d <0bfb5c2> [Kevin Menard]
make workaround so ebs works with 11.04 <e173588> [Denis Zinevich]
1.13.1
-----
allow specifying a common role dependency for all instances <f49b662> [Matt Conway]
allow one to specify HOSTand ROLES when testing rake rubber:config in dev <56b3c8c> [Matt Conway]
Merged pull request #57 from drync/no_rvmrc. <9aee319> [Matt Conway]
Exclude .rvmrc from NO_SCM deploys <3fa1502> [Savanah Cummings]