chef-dk 1.0.3 → 1.1.16

Sign up to get free protection for your applications and to get access to all the features.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +9 -2
  3. data/Gemfile.lock +81 -57
  4. data/Rakefile +1 -0
  5. data/acceptance/Gemfile.lock +29 -23
  6. data/chef-dk.gemspec +0 -1
  7. data/lib/chef-dk/command/generator_commands/cookbook.rb +1 -1
  8. data/lib/chef-dk/generator.rb +5 -5
  9. data/lib/chef-dk/skeletons/code_generator/files/default/delivery-config.json +3 -1
  10. data/lib/chef-dk/skeletons/code_generator/recipes/app.rb +2 -2
  11. data/lib/chef-dk/skeletons/code_generator/recipes/cookbook.rb +2 -2
  12. data/lib/chef-dk/skeletons/code_generator/recipes/recipe.rb +16 -5
  13. data/lib/chef-dk/skeletons/code_generator/templates/default/build_cookbook/recipe.rb.erb +1 -1
  14. data/lib/chef-dk/skeletons/code_generator/templates/default/inspec_default_test.rb.erb +1 -1
  15. data/lib/chef-dk/skeletons/code_generator/templates/default/kitchen.yml.erb +1 -1
  16. data/lib/chef-dk/skeletons/code_generator/templates/default/kitchen_policyfile.yml.erb +1 -1
  17. data/lib/chef-dk/skeletons/code_generator/templates/default/metadata.rb.erb +8 -4
  18. data/lib/chef-dk/skeletons/code_generator/templates/default/recipe.rb.erb +1 -1
  19. data/lib/chef-dk/skeletons/code_generator/templates/default/recipe_spec.rb.erb +1 -1
  20. data/lib/chef-dk/version.rb +1 -1
  21. data/spec/unit/command/generator_commands/app_spec.rb +6 -6
  22. data/spec/unit/command/generator_commands/cookbook_spec.rb +13 -11
  23. data/spec/unit/command/generator_commands/recipe_spec.rb +1 -1
  24. data/spec/unit/generator_spec.rb +1 -1
  25. data/tasks/announce.rb +58 -0
  26. data/tasks/github_changelog_generator.rb +27 -9
  27. data/tasks/templates/prerelease.md.erb +35 -0
  28. data/tasks/templates/release.md.erb +34 -0
  29. data/tasks/version.rb +6 -0
  30. metadata +5 -16
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dd414e5ce801d69ed1f78241d2e99fc3ac0c5cac
4
- data.tar.gz: fd8dc5a6813bab3ba2d66fd9dd3dd8189adb4489
3
+ metadata.gz: afccc47a23300a0cb2b6e842e38d27f15360586c
4
+ data.tar.gz: 8b1be04f2a755078caa2d95bd70e34ba798065a0
5
5
  SHA512:
6
- metadata.gz: c1c9d70a61e82174c1f138676ef3ea6df575ee1f6e63e286fbe82639da5de7f9e5b682963022ae14875ca64a6853c3f411509771693a4d429acd97502561c41c
7
- data.tar.gz: 0bb24e25cbe06011569745db1e6db2fa00ab748ed9c21da1b3cef9b274a0fd1a097172c1776c7101805178049ea1d69713759bd8274ad1b1ea1fb08035a8547c
6
+ metadata.gz: cf44e64920b4a009cf8ffc41ebd7f5ca2be7e8eae2de5617c71285773cfdc4557b3a96d027d13b7a46c57ab6d2448e0f9d0c474c60f69d662974168ffb6b55f7
7
+ data.tar.gz: c00feeb0ee230fab0cf1de8ac0f63667560c702ea4bb81572f9ea116829ee8751971ad60ddecacb3857bbb49f531429f6b4ce328400f79aab6db78214df549d6
data/Gemfile CHANGED
@@ -52,7 +52,7 @@ group(:omnibus_package) do
52
52
  gem "chef-provisioning-vagrant", ">= 0.11.0"
53
53
  gem "chef-vault"
54
54
  # The chef version is pinned by "rake dependencies", which grabs the current version from omnibus.
55
- gem "chef", github: "chef/chef", branch: "v12.16.42"
55
+ gem "chef", github: "chef/chef", branch: "v12.17.44"
56
56
  gem "cheffish", ">= 4.0"
57
57
  gem "chefspec"
58
58
  gem "fauxhai"
@@ -67,7 +67,7 @@ group(:omnibus_package) do
67
67
  gem "ohai", ">= 8.13.0"
68
68
  gem "test-kitchen"
69
69
  gem "listen"
70
- gem "mixlib-install"
70
+ gem "dco"
71
71
 
72
72
  # For Delivery build node
73
73
  gem "chef-sugar"
@@ -98,6 +98,13 @@ group(:linux, :bsd, :mac_os_x, :solaris) do
98
98
  gem "ruby-shadow", platform: :ruby
99
99
  end
100
100
 
101
+ group(:changelog) do
102
+ gem "github_changelog_generator", git: "https://github.com/tduffield/github-changelog-generator", branch: "adjust-tag-section-mapping"
103
+ end
104
+
105
+ # mixlib-install is used by two groups
106
+ gem 'mixlib-install', :group => [:changelog, :omnibus_package]
107
+
101
108
  # TODO delete this when we figure out how to include the pushy windows dependencies
102
109
  # correctly
103
110
  platforms :mswin, :mingw do
@@ -1,19 +1,19 @@
1
1
  GIT
2
2
  remote: git://github.com/chef/appbundler.git
3
- revision: 76cb17280186ba314d31cd5751e674025ec93c79
3
+ revision: 6582b68884453b5ca5c962458a0c08046c719558
4
4
  specs:
5
- appbundler (0.9.0)
5
+ appbundler (0.10.0)
6
6
  mixlib-cli (~> 1.4)
7
7
 
8
8
  GIT
9
9
  remote: git://github.com/chef/chef.git
10
- revision: fecaf2fc865e215c95154f353d5d9b3c81b2ff7c
11
- branch: v12.16.42
10
+ revision: 066935169905ad96b553520160b3678497c0284b
11
+ branch: v12.17.44
12
12
  specs:
13
- chef (12.16.42)
13
+ chef (12.17.44)
14
14
  addressable
15
15
  bundler (>= 1.10)
16
- chef-config (= 12.16.42)
16
+ chef-config (= 12.17.44)
17
17
  chef-zero (>= 4.8)
18
18
  diff-lcs (~> 1.2, >= 1.2.4)
19
19
  erubis (~> 2.7)
@@ -39,10 +39,10 @@ GIT
39
39
  specinfra (~> 2.10)
40
40
  syslog-logger (~> 1.6)
41
41
  uuidtools (~> 2.1.5)
42
- chef (12.16.42-universal-mingw32)
42
+ chef (12.17.44-universal-mingw32)
43
43
  addressable
44
44
  bundler (>= 1.10)
45
- chef-config (= 12.16.42)
45
+ chef-config (= 12.17.44)
46
46
  chef-zero (>= 4.8)
47
47
  diff-lcs (~> 1.2, >= 1.2.4)
48
48
  erubis (~> 2.7)
@@ -79,7 +79,7 @@ GIT
79
79
  win32-service (~> 0.8.7)
80
80
  windows-api (~> 0.4.4)
81
81
  wmi-lite (~> 1.0)
82
- chef-config (12.16.42)
82
+ chef-config (12.17.44)
83
83
  addressable
84
84
  fuzzyurl
85
85
  mixlib-config (~> 2.0)
@@ -96,10 +96,24 @@ GIT
96
96
  ohai
97
97
  uuidtools
98
98
 
99
+ GIT
100
+ remote: https://github.com/tduffield/github-changelog-generator
101
+ revision: 8effcdd6988617b453669965fedc1280aa84bd7a
102
+ branch: adjust-tag-section-mapping
103
+ specs:
104
+ github_changelog_generator (1.14.2)
105
+ activesupport
106
+ faraday-http-cache
107
+ multi_json
108
+ octokit (~> 4.6)
109
+ rainbow (>= 2.1)
110
+ rake (>= 10.0)
111
+ retriable (>= 1.4)
112
+
99
113
  PATH
100
114
  remote: .
101
115
  specs:
102
- chef-dk (1.0.3)
116
+ chef-dk (1.1.16)
103
117
  chef (~> 12.5)
104
118
  chef-provisioning (~> 2.0)
105
119
  cookbook-omnifetch (~> 0.2, >= 0.2.2)
@@ -114,7 +128,7 @@ PATH
114
128
  GEM
115
129
  remote: https://rubygems.org/
116
130
  specs:
117
- CFPropertyList (2.3.3)
131
+ CFPropertyList (2.3.4)
118
132
  activesupport (4.2.7.1)
119
133
  i18n (~> 0.7)
120
134
  json (~> 1.7, >= 1.7.7)
@@ -130,15 +144,17 @@ GEM
130
144
  addressable (>= 2.3.1)
131
145
  extlib (>= 0.9.15)
132
146
  multi_json (>= 1.0.0)
133
- aws-sdk (2.6.19)
134
- aws-sdk-resources (= 2.6.19)
135
- aws-sdk-core (2.6.19)
147
+ aws-sdk (2.6.35)
148
+ aws-sdk-resources (= 2.6.35)
149
+ aws-sdk-core (2.6.35)
150
+ aws-sigv4 (~> 1.0)
136
151
  jmespath (~> 1.0)
137
- aws-sdk-resources (2.6.19)
138
- aws-sdk-core (= 2.6.19)
152
+ aws-sdk-resources (2.6.35)
153
+ aws-sdk-core (= 2.6.35)
139
154
  aws-sdk-v1 (1.66.0)
140
155
  json (~> 1.4)
141
156
  nokogiri (>= 1.4.4)
157
+ aws-sigv4 (1.0.0)
142
158
  backports (3.6.8)
143
159
  berkshelf (5.2.0)
144
160
  addressable (~> 2.3, >= 2.3.4)
@@ -185,10 +201,10 @@ GEM
185
201
  net-ssh (>= 2.9, < 4.0)
186
202
  net-ssh-gateway (~> 1.2.0)
187
203
  winrm-fs (~> 1.0)
188
- chef-provisioning-aws (2.0.0)
204
+ chef-provisioning-aws (2.1.0)
189
205
  aws-sdk (>= 2.1.26, < 3.0)
190
206
  aws-sdk-v1 (>= 1.59.0)
191
- chef-provisioning (~> 2.0)
207
+ chef-provisioning (>= 1.0, < 3.0)
192
208
  retryable (~> 2.0, >= 2.0.1)
193
209
  ubuntu_ami (~> 0.4, >= 0.4.1)
194
210
  chef-provisioning-azure (0.6.0)
@@ -222,8 +238,8 @@ GEM
222
238
  coderay (1.1.1)
223
239
  cookbook-omnifetch (0.2.3)
224
240
  minitar (~> 0.5.4)
225
- cookstyle (0.0.1)
226
- rubocop (= 0.39.0)
241
+ cookstyle (1.1.0)
242
+ rubocop (= 0.46.0)
227
243
  cucumber (2.4.0)
228
244
  builder (>= 2.1.2)
229
245
  cucumber-core (~> 1.5.0)
@@ -235,6 +251,9 @@ GEM
235
251
  cucumber-core (1.5.0)
236
252
  gherkin (~> 4.0)
237
253
  cucumber-wire (0.0.1)
254
+ dco (1.0.1)
255
+ git (~> 1.3)
256
+ thor (~> 0.19)
238
257
  debug_inspector (0.0.2)
239
258
  dep-selector-libgecode (1.3.1)
240
259
  dep_selector (1.0.4)
@@ -242,7 +261,7 @@ GEM
242
261
  ffi (~> 1.9)
243
262
  diff-lcs (1.2.5)
244
263
  diffy (3.1.0)
245
- docker-api (1.32.1)
264
+ docker-api (1.33.0)
246
265
  excon (>= 0.38.0)
247
266
  json
248
267
  erubis (2.7.0)
@@ -250,6 +269,8 @@ GEM
250
269
  extlib (0.9.16)
251
270
  faraday (0.9.2)
252
271
  multipart-post (>= 1.2, < 3)
272
+ faraday-http-cache (2.0.0)
273
+ faraday (~> 0.8)
253
274
  fauxhai (3.10.0)
254
275
  net-ssh
255
276
  ffi (1.9.14)
@@ -301,7 +322,7 @@ GEM
301
322
  fog-atmos (0.1.0)
302
323
  fog-core
303
324
  fog-xml
304
- fog-aws (0.12.0)
325
+ fog-aws (1.0.0)
305
326
  fog-core (~> 1.38)
306
327
  fog-json (~> 1.0)
307
328
  fog-xml (~> 0.1)
@@ -340,7 +361,7 @@ GEM
340
361
  multi_json (~> 1.10)
341
362
  fog-local (0.3.1)
342
363
  fog-core (~> 1.27)
343
- fog-openstack (0.1.17)
364
+ fog-openstack (0.1.18)
344
365
  fog-core (>= 1.40)
345
366
  fog-json (>= 1.0)
346
367
  ipaddress (>= 0.8)
@@ -385,7 +406,7 @@ GEM
385
406
  fog-voxel (0.1.0)
386
407
  fog-core
387
408
  fog-xml
388
- fog-vsphere (1.5.1)
409
+ fog-vsphere (1.5.2)
389
410
  fog-core
390
411
  rbvmomi (~> 1.9)
391
412
  fog-xenserver (0.2.3)
@@ -442,12 +463,12 @@ GEM
442
463
  highline (1.7.8)
443
464
  hitimes (1.2.4)
444
465
  hitimes (1.2.4-x86-mingw32)
445
- httpclient (2.8.2.4)
466
+ httpclient (2.8.3)
446
467
  i18n (0.7.0)
447
468
  inflecto (0.0.2)
448
469
  inifile (3.0.0)
449
470
  iniparse (1.4.2)
450
- inspec (1.4.1)
471
+ inspec (1.7.2)
451
472
  hashie (~> 3.4)
452
473
  json (>= 1.8, < 3.0)
453
474
  method_source (~> 0.8)
@@ -457,38 +478,39 @@ GEM
457
478
  rainbow (~> 2)
458
479
  rspec (~> 3)
459
480
  rspec-its (~> 1.2)
481
+ rspec_junit_formatter (~> 0.2.3)
460
482
  rubyzip (~> 1.1)
461
483
  sslshake (~> 1)
462
484
  thor (~> 0.19)
463
- train (>= 0.20.1, < 1.0)
485
+ train (>= 0.22.0, < 1.0)
464
486
  ipaddress (0.8.3)
465
487
  jmespath (1.3.1)
466
488
  json (1.8.3)
467
489
  jwt (1.5.6)
468
- kitchen-dokken (1.0.4)
469
- docker-api (~> 1.29)
470
- test-kitchen (~> 1.5)
490
+ kitchen-dokken (1.0.9)
491
+ docker-api (~> 1.32)
492
+ test-kitchen (~> 1.13)
471
493
  kitchen-ec2 (1.2.0)
472
494
  aws-sdk (~> 2)
473
495
  excon
474
496
  multi_json
475
497
  retryable (~> 2.0)
476
498
  test-kitchen (~> 1.4, >= 1.4.1)
477
- kitchen-inspec (0.16.1)
499
+ kitchen-inspec (0.17.0)
478
500
  hashie (~> 3.4)
479
501
  inspec (>= 0.34.0, < 2.0.0)
480
502
  test-kitchen (~> 1.6)
481
- kitchen-vagrant (0.20.0)
503
+ kitchen-vagrant (0.21.1)
482
504
  test-kitchen (~> 1.4)
483
505
  knife-opc (0.3.2)
484
506
  knife-push (1.0.2)
485
507
  chef (>= 12.7.2)
486
- knife-spork (1.6.2)
508
+ knife-spork (1.6.3)
487
509
  app_conf (>= 0.4.0)
488
510
  chef (>= 11.0.0)
489
511
  diffy (>= 3.0.1)
490
512
  git (>= 1.2.5)
491
- knife-windows (1.7.0)
513
+ knife-windows (1.7.1)
492
514
  winrm (~> 2.1)
493
515
  winrm-elevated (~> 1.0)
494
516
  launchy (2.4.3)
@@ -512,14 +534,14 @@ GEM
512
534
  mime-types-data (3.2016.0521)
513
535
  mini_portile2 (2.1.0)
514
536
  minitar (0.5.4)
515
- minitest (5.9.1)
537
+ minitest (5.10.1)
516
538
  mixlib-archive (0.2.0)
517
539
  mixlib-log
518
540
  mixlib-authentication (1.4.1)
519
541
  mixlib-log
520
542
  mixlib-cli (1.7.0)
521
543
  mixlib-config (2.2.4)
522
- mixlib-install (2.1.6)
544
+ mixlib-install (2.1.9)
523
545
  artifactory
524
546
  mixlib-shellout
525
547
  mixlib-versioning
@@ -555,9 +577,9 @@ GEM
555
577
  notiffany (0.1.1)
556
578
  nenv (~> 0.1)
557
579
  shellany (~> 0.0)
558
- octokit (4.6.0)
580
+ octokit (4.6.2)
559
581
  sawyer (~> 0.8.0, >= 0.5.3)
560
- ohai (8.21.0)
582
+ ohai (8.22.1)
561
583
  chef-config (>= 12.5.0.alpha.1, < 13)
562
584
  ffi (~> 1.9)
563
585
  ffi-yajl (~> 2.2)
@@ -571,8 +593,8 @@ GEM
571
593
  wmi-lite (~> 1.0)
572
594
  os (0.9.6)
573
595
  paint (1.0.1)
574
- parallel (1.9.0)
575
- parser (2.3.1.4)
596
+ parallel (1.10.0)
597
+ parser (2.3.3.1)
576
598
  ast (~> 2.2)
577
599
  plist (3.2.0)
578
600
  polyglot (0.3.5)
@@ -582,7 +604,7 @@ GEM
582
604
  coderay (~> 1.1.0)
583
605
  method_source (~> 0.8.1)
584
606
  slop (~> 3.4)
585
- pry-byebug (3.4.0)
607
+ pry-byebug (3.4.2)
586
608
  byebug (~> 9.0)
587
609
  pry (~> 0.10)
588
610
  pry-remote (0.1.8)
@@ -594,7 +616,7 @@ GEM
594
616
  public_suffix (2.0.4)
595
617
  rack (2.0.1)
596
618
  rainbow (2.1.0)
597
- rake (11.3.0)
619
+ rake (12.0.0)
598
620
  rb-fsevent (0.9.8)
599
621
  rb-inotify (0.9.7)
600
622
  ffi (>= 0.5.0)
@@ -645,8 +667,8 @@ GEM
645
667
  rspec_junit_formatter (0.2.3)
646
668
  builder (< 4)
647
669
  rspec-core (>= 2, < 4, != 2.12.0)
648
- rubocop (0.39.0)
649
- parser (>= 2.3.0.7, < 3.0)
670
+ rubocop (0.46.0)
671
+ parser (>= 2.3.1.1, < 3.0)
650
672
  powerpack (~> 0.1)
651
673
  rainbow (>= 1.99.1, < 3.0)
652
674
  ruby-progressbar (~> 1.7)
@@ -659,9 +681,9 @@ GEM
659
681
  rubyzip (1.2.0)
660
682
  rufus-lru (1.1.0)
661
683
  safe_yaml (1.0.4)
662
- sawyer (0.8.0)
684
+ sawyer (0.8.1)
663
685
  addressable (>= 2.3.5, < 2.6)
664
- faraday (~> 0.8, < 0.10)
686
+ faraday (~> 0.8, < 1.0)
665
687
  semverse (2.0.0)
666
688
  serverspec (2.37.2)
667
689
  multi_json
@@ -676,10 +698,10 @@ GEM
676
698
  jwt (~> 1.5)
677
699
  multi_json (~> 1.10)
678
700
  slop (3.6.0)
679
- solve (3.0.1)
680
- molinillo (~> 0.4)
701
+ solve (3.1.0)
702
+ molinillo (>= 0.5)
681
703
  semverse (>= 1.1, < 3.0)
682
- specinfra (2.66.0)
704
+ specinfra (2.66.2)
683
705
  net-scp
684
706
  net-ssh (>= 2.7, < 4.0)
685
707
  net-telnet
@@ -693,7 +715,7 @@ GEM
693
715
  uuid (~> 2.0)
694
716
  syslog-logger (1.6.8)
695
717
  systemu (2.6.5)
696
- test-kitchen (1.13.2)
718
+ test-kitchen (1.14.2)
697
719
  mixlib-install (>= 1.2, < 3.0)
698
720
  mixlib-shellout (>= 1.2, < 3.0)
699
721
  net-scp (~> 1.1)
@@ -701,11 +723,11 @@ GEM
701
723
  net-ssh-gateway (~> 1.2.0)
702
724
  safe_yaml (~> 1.0)
703
725
  thor (~> 0.18)
704
- thor (0.19.1)
726
+ thor (0.19.4)
705
727
  thread_safe (0.3.5)
706
728
  timers (4.0.4)
707
729
  hitimes
708
- train (0.21.1)
730
+ train (0.22.0)
709
731
  docker-api (~> 1.26)
710
732
  json (>= 1.8, < 3.0)
711
733
  mixlib-shellout (~> 2.0)
@@ -719,7 +741,7 @@ GEM
719
741
  tzinfo (1.2.2)
720
742
  thread_safe (~> 0.1)
721
743
  ubuntu_ami (0.4.1)
722
- unicode-display_width (1.1.1)
744
+ unicode-display_width (1.1.2)
723
745
  uuid (2.3.8)
724
746
  macaddr (~> 1.0)
725
747
  uuidtools (2.1.5)
@@ -741,7 +763,7 @@ GEM
741
763
  win32-ipc (>= 0.6.0)
742
764
  win32-process (0.8.3)
743
765
  ffi (>= 1.0.0)
744
- win32-service (0.8.9)
766
+ win32-service (0.8.10)
745
767
  ffi
746
768
  ffi-win32-extensions
747
769
  windows-api (0.4.4)
@@ -758,10 +780,10 @@ GEM
758
780
  logging (>= 1.6.1, < 3.0)
759
781
  nori (~> 2.0)
760
782
  rubyntlm (~> 0.6.0, >= 0.6.1)
761
- winrm-elevated (1.0.1)
783
+ winrm-elevated (1.1.0)
762
784
  winrm (~> 2.0)
763
785
  winrm-fs (~> 1.0)
764
- winrm-fs (1.0.0)
786
+ winrm-fs (1.0.1)
765
787
  erubis (~> 2.7)
766
788
  logging (>= 1.6.1, < 3.0)
767
789
  rubyzip (~> 1.1)
@@ -792,12 +814,14 @@ DEPENDENCIES
792
814
  chefspec
793
815
  cookstyle
794
816
  cucumber
817
+ dco
795
818
  dep-selector-libgecode
796
819
  dep_selector
797
820
  fauxhai
798
821
  ffi
799
822
  ffi-rzmq-core
800
823
  foodcritic (>= 8.0)
824
+ github_changelog_generator!
801
825
  guard
802
826
  inspec (>= 0.17.1)
803
827
  kitchen-dokken
@@ -839,4 +863,4 @@ DEPENDENCIES
839
863
  yard
840
864
 
841
865
  BUNDLED WITH
842
- 1.13.3
866
+ 1.12.5
data/Rakefile CHANGED
@@ -20,3 +20,4 @@ require_relative "tasks/version"
20
20
  require_relative "tasks/bundle"
21
21
  require_relative "tasks/dependencies"
22
22
  require_relative "tasks/github_changelog_generator"
23
+ require_relative "tasks/announce"
@@ -12,12 +12,14 @@ GEM
12
12
  addressable (2.5.0)
13
13
  public_suffix (~> 2.0, >= 2.0.2)
14
14
  artifactory (2.5.1)
15
- aws-sdk (2.6.19)
16
- aws-sdk-resources (= 2.6.19)
17
- aws-sdk-core (2.6.19)
15
+ aws-sdk (2.6.35)
16
+ aws-sdk-resources (= 2.6.35)
17
+ aws-sdk-core (2.6.35)
18
+ aws-sigv4 (~> 1.0)
18
19
  jmespath (~> 1.0)
19
- aws-sdk-resources (2.6.19)
20
- aws-sdk-core (= 2.6.19)
20
+ aws-sdk-resources (2.6.35)
21
+ aws-sdk-core (= 2.6.35)
22
+ aws-sigv4 (1.0.0)
21
23
  berkshelf (5.2.0)
22
24
  addressable (~> 2.3, >= 2.3.4)
23
25
  berkshelf-api-client (>= 2.0.2, < 4.0)
@@ -52,7 +54,7 @@ GEM
52
54
  celluloid-io (0.16.2)
53
55
  celluloid (>= 0.16.0)
54
56
  nio4r (>= 1.1.0)
55
- chef-config (12.16.42)
57
+ chef-config (12.17.44)
56
58
  addressable
57
59
  fuzzyurl
58
60
  mixlib-config (~> 2.0)
@@ -60,7 +62,7 @@ GEM
60
62
  cleanroom (1.0.0)
61
63
  coderay (1.1.1)
62
64
  diff-lcs (1.2.5)
63
- docker-api (1.32.1)
65
+ docker-api (1.33.0)
64
66
  excon (>= 0.38.0)
65
67
  json
66
68
  erubis (2.7.0)
@@ -75,8 +77,8 @@ GEM
75
77
  builder (>= 2.1.2)
76
78
  hashie (3.4.6)
77
79
  hitimes (1.2.4)
78
- httpclient (2.8.2.4)
79
- inspec (1.4.1)
80
+ httpclient (2.8.3)
81
+ inspec (1.7.2)
80
82
  hashie (~> 3.4)
81
83
  json (>= 1.8, < 3.0)
82
84
  method_source (~> 0.8)
@@ -86,10 +88,11 @@ GEM
86
88
  rainbow (~> 2)
87
89
  rspec (~> 3)
88
90
  rspec-its (~> 1.2)
91
+ rspec_junit_formatter (~> 0.2.3)
89
92
  rubyzip (~> 1.1)
90
93
  sslshake (~> 1)
91
94
  thor (~> 0.19)
92
- train (>= 0.20.1, < 1.0)
95
+ train (>= 0.22.0, < 1.0)
93
96
  jmespath (1.3.1)
94
97
  json (2.0.2)
95
98
  kitchen-ec2 (1.2.0)
@@ -98,11 +101,11 @@ GEM
98
101
  multi_json
99
102
  retryable (~> 2.0)
100
103
  test-kitchen (~> 1.4, >= 1.4.1)
101
- kitchen-inspec (0.16.1)
104
+ kitchen-inspec (0.17.0)
102
105
  hashie (~> 3.4)
103
106
  inspec (>= 0.34.0, < 2.0.0)
104
107
  test-kitchen (~> 1.6)
105
- kitchen-vagrant (0.20.0)
108
+ kitchen-vagrant (0.21.1)
106
109
  test-kitchen (~> 1.4)
107
110
  little-plugger (1.1.4)
108
111
  logging (2.1.0)
@@ -132,9 +135,9 @@ GEM
132
135
  net-ssh (>= 2.6.5)
133
136
  nio4r (1.2.1)
134
137
  nori (2.6.0)
135
- octokit (4.6.0)
138
+ octokit (4.6.2)
136
139
  sawyer (~> 0.8.0, >= 0.5.3)
137
- parallel (1.9.0)
140
+ parallel (1.10.0)
138
141
  pry (0.10.4)
139
142
  coderay (~> 1.1.0)
140
143
  method_source (~> 0.8.1)
@@ -176,19 +179,22 @@ GEM
176
179
  diff-lcs (>= 1.2.0, < 2.0)
177
180
  rspec-support (~> 3.4.0)
178
181
  rspec-support (3.4.1)
182
+ rspec_junit_formatter (0.2.3)
183
+ builder (< 4)
184
+ rspec-core (>= 2, < 4, != 2.12.0)
179
185
  rubyntlm (0.6.1)
180
186
  rubyzip (1.2.0)
181
187
  safe_yaml (1.0.4)
182
- sawyer (0.8.0)
188
+ sawyer (0.8.1)
183
189
  addressable (>= 2.3.5, < 2.6)
184
- faraday (~> 0.8, < 0.10)
190
+ faraday (~> 0.8, < 1.0)
185
191
  semverse (2.0.0)
186
192
  slop (3.6.0)
187
- solve (3.0.1)
188
- molinillo (~> 0.4)
193
+ solve (3.1.0)
194
+ molinillo (>= 0.5)
189
195
  semverse (>= 1.1, < 3.0)
190
196
  sslshake (1.0.13)
191
- test-kitchen (1.13.2)
197
+ test-kitchen (1.14.2)
192
198
  mixlib-install (>= 1.2, < 3.0)
193
199
  mixlib-shellout (>= 1.2, < 3.0)
194
200
  net-scp (~> 1.1)
@@ -196,10 +202,10 @@ GEM
196
202
  net-ssh-gateway (~> 1.2.0)
197
203
  safe_yaml (~> 1.0)
198
204
  thor (~> 0.18)
199
- thor (0.19.1)
205
+ thor (0.19.4)
200
206
  timers (4.0.4)
201
207
  hitimes
202
- train (0.21.1)
208
+ train (0.22.0)
203
209
  docker-api (~> 1.26)
204
210
  json (>= 1.8, < 3.0)
205
211
  mixlib-shellout (~> 2.0)
@@ -221,10 +227,10 @@ GEM
221
227
  logging (>= 1.6.1, < 3.0)
222
228
  nori (~> 2.0)
223
229
  rubyntlm (~> 0.6.0, >= 0.6.1)
224
- winrm-elevated (1.0.1)
230
+ winrm-elevated (1.1.0)
225
231
  winrm (~> 2.0)
226
232
  winrm-fs (~> 1.0)
227
- winrm-fs (1.0.0)
233
+ winrm-fs (1.0.1)
228
234
  erubis (~> 2.7)
229
235
  logging (>= 1.6.1, < 3.0)
230
236
  rubyzip (~> 1.1)
@@ -50,7 +50,6 @@ Gem::Specification.new do |gem|
50
50
  gem.add_dependency "paint", "~> 1.0"
51
51
  gem.add_dependency "chef-provisioning", "~> 2.0"
52
52
 
53
- gem.add_development_dependency "github_changelog_generator"
54
53
  gem.add_development_dependency "rake"
55
54
 
56
55
  %w(rspec-core rspec-expectations rspec-mocks).each do |dev_gem|
@@ -105,7 +105,7 @@ module ChefDK
105
105
  msg("\nThere are several commands you can run to get started locally developing and testing your cookbook.")
106
106
  msg("Type `delivery local --help` to see a full list.")
107
107
  msg("\nWhy not start by writing a test? Tests for the default recipe are stored at:\n")
108
- msg("test/recipes/default_test.rb")
108
+ msg("test/smoke/default/default_test.rb")
109
109
  msg("\nIf you'd prefer to dive right in, the default recipe can be found at:")
110
110
  msg("\nrecipes/default.rb\n")
111
111
  end
@@ -73,10 +73,10 @@ module ChefDK
73
73
  def license_description(comment=nil)
74
74
  case license
75
75
  when 'all_rights'
76
- result = "Copyright (c) #{year} #{copyright_holder}, All Rights Reserved."
76
+ result = "Copyright:: #{year}, #{copyright_holder}, All Rights Reserved."
77
77
  when 'apachev2'
78
78
  result = <<-EOH
79
- Copyright #{year} #{copyright_holder}
79
+ Copyright:: #{year}, #{copyright_holder}
80
80
 
81
81
  Licensed under the Apache License, Version 2.0 (the "License");
82
82
  you may not use this file except in compliance with the License.
@@ -94,7 +94,7 @@ EOH
94
94
  result = <<-EOH
95
95
  The MIT License (MIT)
96
96
 
97
- Copyright (c) #{year} #{copyright_holder}
97
+ Copyright:: #{year}, #{copyright_holder}
98
98
 
99
99
  Permission is hereby granted, free of charge, to any person obtaining a copy
100
100
  of this software and associated documentation files (the "Software"), to deal
@@ -116,7 +116,7 @@ THE SOFTWARE.
116
116
  EOH
117
117
  when 'gplv2'
118
118
  result = <<-EOH
119
- Copyright (C) #{year} #{copyright_holder}
119
+ Copyright:: #{year}, #{copyright_holder}
120
120
 
121
121
  This program is free software; you can redistribute it and/or modify
122
122
  it under the terms of the GNU General Public License as published by
@@ -134,7 +134,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
134
134
  EOH
135
135
  when 'gplv3'
136
136
  result = <<-EOH
137
- Copyright (C) #{year} #{copyright_holder}
137
+ Copyright:: #{year}, #{copyright_holder}
138
138
 
139
139
  This program is free software: you can redistribute it and/or modify
140
140
  it under the terms of the GNU General Public License as published by
@@ -5,6 +5,8 @@
5
5
  "path": ".delivery/build_cookbook"
6
6
  },
7
7
  "skip_phases": [],
8
- "build_nodes": {},
8
+ "job_dispatch": {
9
+ "version": "v2"
10
+ },
9
11
  "dependencies": []
10
12
  }
@@ -17,11 +17,11 @@ template "#{app_dir}/.kitchen.yml" do
17
17
  end
18
18
 
19
19
  # Inspec
20
- directory "#{app_dir}/test/recipes" do
20
+ directory "#{app_dir}/test/smoke/default" do
21
21
  recursive true
22
22
  end
23
23
 
24
- template "#{app_dir}/test/recipes/default_test.rb" do
24
+ template "#{app_dir}/test/smoke/default/default_test.rb" do
25
25
  source 'inspec_default_test.rb.erb'
26
26
  helpers(ChefDK::Generator::TemplateHelper)
27
27
  action :create_if_missing
@@ -55,11 +55,11 @@ template "#{cookbook_dir}/.kitchen.yml" do
55
55
  end
56
56
 
57
57
  # Inspec
58
- directory "#{cookbook_dir}/test/recipes" do
58
+ directory "#{cookbook_dir}/test/smoke/default" do
59
59
  recursive true
60
60
  end
61
61
 
62
- template "#{cookbook_dir}/test/recipes/default_test.rb" do
62
+ template "#{cookbook_dir}/test/smoke/default/default_test.rb" do
63
63
  source 'inspec_default_test.rb.erb'
64
64
  helpers(ChefDK::Generator::TemplateHelper)
65
65
  action :create_if_missing
@@ -3,11 +3,23 @@ context = ChefDK::Generator.context
3
3
  cookbook_dir = File.join(context.cookbook_root, context.cookbook_name)
4
4
  recipe_path = File.join(cookbook_dir, "recipes", "#{context.new_file_basename}.rb")
5
5
  spec_helper_path = File.join(cookbook_dir, "spec", "spec_helper.rb")
6
- spec_path = File.join(cookbook_dir, "spec", "unit", "recipes", "#{context.new_file_basename}_spec.rb")
7
- inspec_path = File.join(cookbook_dir, "test", "recipes", "#{context.new_file_basename}.rb")
6
+ spec_dir = File.join(cookbook_dir, "spec", "unit", "recipes")
7
+ spec_path = File.join(spec_dir, "#{context.new_file_basename}_spec.rb")
8
+ inspec_dir = File.join(cookbook_dir, "test", "smoke", "default")
9
+ inspec_path = File.join(inspec_dir, "#{context.new_file_basename}.rb")
10
+
11
+ if File.directory?(File.join(cookbook_dir, "test", "recipes"))
12
+ Chef::Log.deprecation <<-EOH
13
+ It appears that you have Inspec tests located at "test/recipes". This location can
14
+ cause issues with Foodcritic and has been deprecated in favor of "test/smoke/default".
15
+ Please move your existing Inspec tests to the newly created "test/smoke/default"
16
+ directory, and update the 'inspec_tests' value in your .kitchen.yml file(s) to
17
+ point to "test/smoke/default".
18
+ EOH
19
+ end
8
20
 
9
21
  # Chefspec
10
- directory "#{cookbook_dir}/spec/unit/recipes" do
22
+ directory spec_dir do
11
23
  recursive true
12
24
  end
13
25
 
@@ -22,7 +34,7 @@ template spec_path do
22
34
  end
23
35
 
24
36
  # Inspec
25
- directory "#{cookbook_dir}/test/recipes" do
37
+ directory inspec_dir do
26
38
  recursive true
27
39
  end
28
40
 
@@ -37,4 +49,3 @@ template recipe_path do
37
49
  source "recipe.rb.erb"
38
50
  helpers(ChefDK::Generator::TemplateHelper)
39
51
  end
40
-
@@ -1,5 +1,5 @@
1
1
  #
2
- # Cookbook Name:: build_cookbook
2
+ # Cookbook:: build_cookbook
3
3
  # Recipe:: <%= @phase %>
4
4
  #
5
5
  <%= license_description('#') %>
@@ -3,7 +3,7 @@
3
3
  # Inspec test for recipe <%= cookbook_name %>::<%= recipe_name %>
4
4
 
5
5
  # The Inspec reference, with examples and extensive documentation, can be
6
- # found at https://docs.chef.io/inspec_reference.html
6
+ # found at http://inspec.io/docs/reference/resources/
7
7
 
8
8
  unless os.windows?
9
9
  describe user('root') do
@@ -22,5 +22,5 @@ suites:
22
22
  - recipe[<%= cookbook_name %>::default]
23
23
  verifier:
24
24
  inspec_tests:
25
- - test/recipes
25
+ - test/smoke/default
26
26
  attributes:
@@ -29,5 +29,5 @@ suites:
29
29
  - name: default
30
30
  verifier:
31
31
  inspec_tests:
32
- - test/recipes
32
+ - test/smoke/default
33
33
  attributes:
@@ -6,10 +6,14 @@ description 'Installs/Configures <%= cookbook_name %>'
6
6
  long_description 'Installs/Configures <%= cookbook_name %>'
7
7
  version '0.1.0'
8
8
 
9
- # If you upload to Supermarket you should set this so your cookbook
10
- # gets a `View Issues` link
9
+ # The `issues_url` points to the location where issues for this cookbook are
10
+ # tracked. A `View Issues` link will be displayed on this cookbook's page when
11
+ # uploaded to a Supermarket.
12
+ #
11
13
  # issues_url 'https://github.com/<insert_org_here>/<%= cookbook_name %>/issues' if respond_to?(:issues_url)
12
14
 
13
- # If you upload to Supermarket you should set this so your cookbook
14
- # gets a `View Source` link
15
+ # The `source_url` points to the development reposiory for this cookbook. A
16
+ # `View Source` link will be displayed on this cookbook's page when uploaded to
17
+ # a Supermarket.
18
+ #
15
19
  # source_url 'https://github.com/<insert_org_here>/<%= cookbook_name %>' if respond_to?(:source_url)
@@ -1,5 +1,5 @@
1
1
  #
2
- # Cookbook Name:: <%= cookbook_name %>
2
+ # Cookbook:: <%= cookbook_name %>
3
3
  # Recipe:: <%= recipe_name %>
4
4
  #
5
5
  <%= license_description('#') %>
@@ -1,5 +1,5 @@
1
1
  #
2
- # Cookbook Name:: <%= cookbook_name %>
2
+ # Cookbook:: <%= cookbook_name %>
3
3
  # Spec:: default
4
4
  #
5
5
  <%= license_description('#') %>
@@ -16,5 +16,5 @@
16
16
  #
17
17
 
18
18
  module ChefDK
19
- VERSION = "1.0.3"
19
+ VERSION = "1.1.16"
20
20
  end
@@ -31,8 +31,9 @@ describe ChefDK::Command::GeneratorCommands::App do
31
31
  .gitignore
32
32
  .kitchen.yml
33
33
  test
34
- test/recipes
35
- test/recipes/default_test.rb
34
+ test/smoke
35
+ test/smoke/default
36
+ test/smoke/default/default_test.rb
36
37
  README.md
37
38
  cookbooks/new_app/Berksfile
38
39
  cookbooks/new_app/chefignore
@@ -128,8 +129,8 @@ describe ChefDK::Command::GeneratorCommands::App do
128
129
  end
129
130
  end
130
131
 
131
- describe "test/recipes/default_test.rb" do
132
- let(:file) { File.join(tempdir, "new_app", "test", "recipes", "default_test.rb") }
132
+ describe "test/smoke/default/default_test.rb" do
133
+ let(:file) { File.join(tempdir, "new_app", "test", "smoke", "default", "default_test.rb") }
133
134
 
134
135
  include_examples "a generated file", :cookbook_name do
135
136
  let(:line) { "describe port" }
@@ -148,7 +149,7 @@ describe ChefDK::Command::GeneratorCommands::App do
148
149
  let(:file) { File.join(tempdir, "new_app", "cookbooks", "new_app", "recipes", "default.rb") }
149
150
 
150
151
  include_examples "a generated file", :cookbook_name do
151
- let(:line) { "# Cookbook Name:: new_app" }
152
+ let(:line) { "# Cookbook:: new_app" }
152
153
  end
153
154
  end
154
155
 
@@ -163,4 +164,3 @@ describe ChefDK::Command::GeneratorCommands::App do
163
164
  end
164
165
  end
165
166
  end
166
-
@@ -34,8 +34,8 @@ describe ChefDK::Command::GeneratorCommands::Cookbook do
34
34
  .gitignore
35
35
  .kitchen.yml
36
36
  test
37
- test/recipes
38
- test/recipes/default_test.rb
37
+ test/smoke
38
+ test/smoke/default/default_test.rb
39
39
  Berksfile
40
40
  chefignore
41
41
  metadata.rb
@@ -65,7 +65,7 @@ Type `delivery local --help` to see a full list.
65
65
 
66
66
  Why not start by writing a test? Tests for the default recipe are stored at:
67
67
 
68
- test/recipes/default_test.rb
68
+ test/smoke/default/default_test.rb
69
69
 
70
70
  If you'd prefer to dive right in, the default recipe can be found at:
71
71
 
@@ -226,7 +226,9 @@ cleanup = "chef exec kitchen destroy"
226
226
  "path": ".delivery/build_cookbook"
227
227
  },
228
228
  "skip_phases": [],
229
- "build_nodes": {},
229
+ "job_dispatch": {
230
+ "version": "v2"
231
+ },
230
232
  "dependencies": []
231
233
  }
232
234
  CONFIG_DOT_JSON
@@ -247,10 +249,10 @@ cleanup = "chef exec kitchen destroy"
247
249
  let(:expected_content) do
248
250
  <<-CONFIG_DOT_JSON
249
251
  #
250
- # Cookbook Name:: build_cookbook
252
+ # Cookbook:: build_cookbook
251
253
  # Recipe:: publish
252
254
  #
253
- # Copyright (c) 2016 The Authors, All Rights Reserved.
255
+ # Copyright:: 2016, The Authors, All Rights Reserved.
254
256
  include_recipe 'delivery-truck::publish'
255
257
  CONFIG_DOT_JSON
256
258
  end
@@ -458,8 +460,8 @@ OUTPUT
458
460
 
459
461
  end
460
462
 
461
- describe "test/recipes/default_test.rb" do
462
- let(:file) { File.join(tempdir, "new_cookbook", "test", "recipes", "default_test.rb") }
463
+ describe "test/smoke/default/default_test.rb" do
464
+ let(:file) { File.join(tempdir, "new_cookbook", "test", "smoke", "default", "default_test.rb") }
463
465
 
464
466
  include_examples "a generated file", :cookbook_name do
465
467
  let(:line) { "describe port" }
@@ -568,7 +570,7 @@ suites:
568
570
  - name: default
569
571
  verifier:
570
572
  inspec_tests:
571
- - test/recipes
573
+ - test/smoke/default
572
574
  attributes:
573
575
  KITCHEN_YML
574
576
  end
@@ -645,7 +647,7 @@ suites:
645
647
  - recipe[new_cookbook::default]
646
648
  verifier:
647
649
  inspec_tests:
648
- - test/recipes
650
+ - test/smoke/default
649
651
  attributes:
650
652
  KITCHEN_YML
651
653
  end
@@ -677,7 +679,7 @@ SPEC_HELPER
677
679
  let(:file) { File.join(tempdir, "new_cookbook", "recipes", "default.rb") }
678
680
 
679
681
  include_examples "a generated file", :cookbook_name do
680
- let(:line) { "# Cookbook Name:: new_cookbook" }
682
+ let(:line) { "# Cookbook:: new_cookbook" }
681
683
  end
682
684
  end
683
685
 
@@ -27,7 +27,7 @@ describe ChefDK::Command::GeneratorCommands::Recipe do
27
27
  let(:generated_files) { [ "recipes/new_recipe.rb",
28
28
  "spec/spec_helper.rb",
29
29
  "spec/unit/recipes/new_recipe_spec.rb",
30
- "test/recipes/new_recipe.rb"
30
+ "test/smoke/default/new_recipe.rb"
31
31
  ] }
32
32
  let(:new_file_name) { "new_recipe" }
33
33
 
@@ -63,7 +63,7 @@ describe ChefDK::Generator::TemplateHelper do
63
63
  let(:license) { "all_rights" }
64
64
  context "all_rights" do
65
65
  it "should match the license" do
66
- expect(helper.license_description).to match(/^Copyright \(c\)/)
66
+ expect(helper.license_description).to match(/^Copyright:: /)
67
67
  end
68
68
 
69
69
  it "should comment if requested" do
@@ -0,0 +1,58 @@
1
+ #
2
+ # Copyright:: Copyright (c) 2016 Chef Software Inc.
3
+ # License:: Apache License, Version 2.0
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+ #
17
+
18
+ require "date"
19
+ require "erb"
20
+
21
+ class ReleaseAnnouncement
22
+ include ERB::Util
23
+ attr_accessor :type, :version, :maj_minor, :date, :release_notes
24
+
25
+ def initialize(version, date, type)
26
+ @version = version
27
+ @maj_minor = version.split(".")[0..1].join(".")
28
+ @date = Date.parse(date) unless date.nil?
29
+ @release_notes = release_notes_from_file
30
+ @type = type
31
+ end
32
+
33
+ def render
34
+ puts "-" * 30
35
+ puts ERB.new(template_for(@type)).result(binding)
36
+ puts "-" * 30
37
+ end
38
+
39
+ def template_for(type)
40
+ File.read("tasks/templates/#{type}.md.erb")
41
+ end
42
+
43
+ def release_notes_from_file
44
+ File.read("RELEASE_NOTES.md").match(/^# ChefDK #{@maj_minor} Release notes\n\n(.*)/m)[1]
45
+ end
46
+ end
47
+
48
+ namespace :announce do
49
+ desc "Generate the Prerelease Announcement (version: X.Y.Z, release_date: YYYY-MM-DD)"
50
+ task :prerelease, :version, :release_date do |t, args|
51
+ ReleaseAnnouncement.new(args[:version], args[:release_date], "prerelease").render
52
+ end
53
+
54
+ desc "Generate the Release Announcement (version: X.Y.Z)"
55
+ task :release, :version do |t, args|
56
+ ReleaseAnnouncement.new(args[:version], nil, "release").render
57
+ end
58
+ end
@@ -17,17 +17,35 @@
17
17
 
18
18
  begin
19
19
  require "github_changelog_generator/task"
20
+ require "mixlib/install"
20
21
 
21
- GitHubChangelogGenerator::RakeTask.new :changelog do |config|
22
- config.user = "chef"
23
- config.project = "chef-dk"
24
- config.future_release = ChefDK::VERSION
25
- config.enhancement_labels = "enhancement,Enhancement,New Feature,Feature".split(",")
26
- config.bug_labels = "bug,Bug,Improvement,Upstream Bug".split(",")
27
- config.exclude_labels = "duplicate,question,invalid,wontfix,no_changelog,Exclude From Changelog,Question,Discussion".split(",")
28
- # Makes life easier by only generating changelogs between said tags.
29
- # config.between_tags = "v0.15.15,v0.16.28".split(",")
22
+ namespace :changelog do
23
+ # Fetch the latest version from mixlib-install
24
+ latest_stable_version = Mixlib::Install.available_versions("chefdk", "stable").last
25
+
26
+ # Take the changelog from the latest stable release and put it into history.
27
+ desc "Archive current CHANGELOG to HISTORY"
28
+ task :archive do
29
+ changelog = Net::HTTP.get(URI("https://raw.githubusercontent.com/chef/chef-dk/v#{latest_stable_version}/CHANGELOG.md")).chomp.split("\n")
30
+ File.open("HISTORY.md", "w+") { |f| f.write(changelog[2..-4].join("\n")) }
31
+ end
32
+
33
+ # Run this to just update the changelog for the current release. This will
34
+ # take what is in HISTORY and generate a changelog of PRs between the most
35
+ # recent stable version and HEAD.
36
+ GitHubChangelogGenerator::RakeTask.new :update do |config|
37
+ config.future_release = "v#{ChefDK::VERSION}"
38
+ config.between_tags = ["v#{latest_stable_version}", "v#{ChefDK::VERSION}"]
39
+ config.max_issues = 0
40
+ config.add_issues_wo_labels = false
41
+ config.enhancement_labels = "enhancement,Enhancement,New Feature,Feature".split(",")
42
+ config.bug_labels = "bug,Bug,Improvement,Upstream Bug".split(",")
43
+ config.exclude_labels = "duplicate,question,invalid,wontfix,no_changelog,Exclude From Changelog,Question,Discussion".split(",")
44
+ config.header = "This changelog reflects the current state of chef-dk's master branch on github and may not reflect the current released version of chef-dk, which is [![Gem Version](https://badge.fury.io/rb/chef-dk.svg)](https://badge.fury.io/rb/chef-dk)."
45
+ end
30
46
  end
47
+
48
+ task :changelog => "changelog:update"
31
49
  rescue LoadError
32
50
  puts "github_changelog_generator is not available. gem install github_changelog_generator to generate changelogs"
33
51
  end
@@ -0,0 +1,35 @@
1
+ Ohai Chefs!
2
+
3
+ We have selected <%= @version %> as our ChefDK v<%= @maj_minor %> release candidate which is scheduled for release on <%= @date.strftime('%A %B %-d, %Y') %>.
4
+
5
+ # Release Highlights
6
+
7
+ <%= @release_notes %>
8
+
9
+ Please see the [CHANGELOG](https://github.com/chef/chef-dk/blob/master/CHANGELOG.md) for the complete list of changes.
10
+
11
+ # Get the Build
12
+ As always, you can download binaries directly from [downloads.chef.io](https://downloads.chef.io/chefdk/current/<%= @version %>) or by using the new `mixlib-install` command line utility available in ChefDK 0.19.6 or greater.
13
+
14
+ ```shell
15
+ $ mixlib-install download chefdk -v <%= @version %> -c current
16
+ ```
17
+
18
+ Alternatively, you can install ChefDK using one of the following command options:
19
+
20
+ ```shell
21
+ # In Shell
22
+ $ curl https://omnitruck.chef.io/install.sh | sudo bash -s -- -P chefdk -v <%= @version %> -c current
23
+
24
+ # In Windows Powershell
25
+ . { iwr -useb https://omnitruck.chef.io/install.ps1 } | iex; install -project chefdk -version <%= @version %> -channel current
26
+ ```
27
+
28
+ If you want to give this version a spin in Test Kitchen, create or add the following to a `.kitchen.local.yml` file:
29
+
30
+ ```yaml
31
+ provisioner:
32
+ product_name: chefdk
33
+ channel: current
34
+ product_version: <%= @version %>
35
+ ```
@@ -0,0 +1,34 @@
1
+ Ohai Chefs!
2
+
3
+ We're happy to announce the release of ChefDK v<%= @maj_minor %>!
4
+
5
+ # Release Highlights
6
+
7
+ <%= @release_notes %>
8
+
9
+ Please see the [CHANGELOG](https://github.com/chef/chef-dk/blob/master/CHANGELOG.md) for the complete list of changes.
10
+
11
+ # Get the Build
12
+ As always, you can download binaries directly from [downloads.chef.io](https://downloads.chef.io/chefdk/<%= @version %>) or by using the new `mixlib-install` command line utility available in ChefDK 0.19.6 or greater.
13
+
14
+ ```shell
15
+ $ mixlib-install download chefdk -v <%= @version %>
16
+ ```
17
+
18
+ Alternatively, you can install ChefDK using one of the following command options:
19
+
20
+ ```shell
21
+ # In Shell
22
+ $ curl https://omnitruck.chef.io/install.sh | sudo bash -s -- -P chefdk -v <%= @version %>
23
+
24
+ # In Windows Powershell
25
+ . { iwr -useb https://omnitruck.chef.io/install.ps1 } | iex; install -project chefdk -version <%= @version %>
26
+ ```
27
+
28
+ If you want to give this version a spin in Test Kitchen, create or add the following to a `.kitchen.local.yml` file:
29
+
30
+ ```yaml
31
+ provisioner:
32
+ product_name: chefdk
33
+ product_version: <%= @version %>
34
+ ```
@@ -40,6 +40,10 @@ namespace :version do
40
40
  File.expand_path("../../Gemfile.lock", __FILE__)
41
41
  end
42
42
 
43
+ def release_notes_path
44
+ File.expand_path("../../RELEASE_NOTES.md", __FILE__)
45
+ end
46
+
43
47
  # Add 1 to the current patch version in the VERSION file, and write it back out.
44
48
  desc "Bump the patch version in lib/chef-dk/version.rb."
45
49
  task :bump_patch do
@@ -63,6 +67,7 @@ namespace :version do
63
67
  end
64
68
  puts "Updating version in #{version_rb_path} from #{version} to #{new_version.chomp}"
65
69
  IO.write(version_rb_path, new_version_file)
70
+ IO.write(release_notes_path, "# ChefDK #{$2}.#{$3.to_i + 1} Release Notes")
66
71
  Rake::Task["version:update_gemfile_lock"].invoke
67
72
  Rake::Task["bundle:install"].invoke
68
73
  end
@@ -77,6 +82,7 @@ namespace :version do
77
82
  end
78
83
  puts "Updating version in #{version_rb_path} from #{version} to #{new_version.chomp}"
79
84
  IO.write(version_rb_path, new_version_file)
85
+ IO.write(release_notes_path, "# ChefDK #{$2.to_i + 1}.0 Release Notes")
80
86
  Rake::Task["version:update_gemfile_lock"].invoke
81
87
  Rake::Task["bundle:install"].invoke
82
88
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-dk
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.1.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel DeLeo
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2016-11-14 00:00:00.000000000 Z
13
+ date: 2016-12-15 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: mixlib-cli
@@ -164,20 +164,6 @@ dependencies:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
166
  version: '2.0'
167
- - !ruby/object:Gem::Dependency
168
- name: github_changelog_generator
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - ">="
172
- - !ruby/object:Gem::Version
173
- version: '0'
174
- type: :development
175
- prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
178
- - - ">="
179
- - !ruby/object:Gem::Version
180
- version: '0'
181
167
  - !ruby/object:Gem::Dependency
182
168
  name: rake
183
169
  requirement: !ruby/object:Gem::Requirement
@@ -603,6 +589,7 @@ files:
603
589
  - spec/unit/service_exception_inspectors/http_spec.rb
604
590
  - spec/unit/shell_out_spec.rb
605
591
  - spec/unit/tasks/helpers_spec.rb
592
+ - tasks/announce.rb
606
593
  - tasks/bin/bundle-platform
607
594
  - tasks/bin/bundle-platform.bat
608
595
  - tasks/bin/create-override-gemfile
@@ -612,6 +599,8 @@ files:
612
599
  - tasks/gemfile_util.rb
613
600
  - tasks/github_changelog_generator.rb
614
601
  - tasks/helpers.rb
602
+ - tasks/templates/prerelease.md.erb
603
+ - tasks/templates/release.md.erb
615
604
  - tasks/version.rb
616
605
  - version_policy.rb
617
606
  - warning.txt