chef-apply 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 78cfb13251efb35ca0a4d877a247d9cfd0713ab1f84f38c6a0c803dab2fd26bd
4
- data.tar.gz: 5cfb2e46208a350661604ff1a6f582f667ad7c0907b8f0d9da20cd9c3fa593e9
3
+ metadata.gz: 11e436ae814ec9510c2a984a971cbe7854314eb79c0ab08aeac72fcba2858e18
4
+ data.tar.gz: f3ecae1562b74d61990aba202af58a8e3a39061308e40539ade9d4b1c8e71aaf
5
5
  SHA512:
6
- metadata.gz: 5d5ad586d99a1a628f779725203c295d759fa39c45d0e7776b2fa6df2e94807494c442022afd06530b71473fe87243ae45bc318025a8c6e306699a029f80a4da
7
- data.tar.gz: 0e574e691b8d6f0684cf6e8d6d270c72ae4f671f0f20064359a5f59843b0ef0f41c76311780feecda74f7a42fca201b781b7b6d8dc631474fbe2542e593dd855
6
+ metadata.gz: eb0ce1d7c7657f99623d1f3e088f6d0ea7985b90df3fe3893a483e81cbcb8507b66d21db333d65c23a16571809e24fd669a8f45347296917d97cce54000de2d8
7
+ data.tar.gz: 60ebda06d54c11d8cd70f1e2d062fdc2276cd56d4f9ee4633eaada392981c03163fe96541ed14888c789fd0690f566b2016241319f89248534f78c17c86849af
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- chef-apply (0.2.0)
4
+ chef-apply (0.2.1)
5
5
  chef (>= 14.0)
6
6
  chef-dk (>= 3.0)
7
7
  chef-telemetry
@@ -21,13 +21,13 @@ GEM
21
21
  addressable (2.5.2)
22
22
  public_suffix (>= 2.0.2, < 4.0)
23
23
  ast (2.4.0)
24
- aws-sdk (2.11.150)
25
- aws-sdk-resources (= 2.11.150)
26
- aws-sdk-core (2.11.150)
24
+ aws-sdk (2.11.151)
25
+ aws-sdk-resources (= 2.11.151)
26
+ aws-sdk-core (2.11.151)
27
27
  aws-sigv4 (~> 1.0)
28
28
  jmespath (~> 1.0)
29
- aws-sdk-resources (2.11.150)
30
- aws-sdk-core (= 2.11.150)
29
+ aws-sdk-resources (2.11.151)
30
+ aws-sdk-core (= 2.11.151)
31
31
  aws-sigv4 (1.0.3)
32
32
  azure_graph_rbac (0.17.0)
33
33
  ms_rest_azure (~> 0.11.0)
@@ -16,6 +16,7 @@
16
16
  #
17
17
 
18
18
  require "tty-spinner"
19
+ require "tty-cursor"
19
20
  require "chef_apply/status_reporter"
20
21
  require "chef_apply/config"
21
22
  require "chef_apply/log"
@@ -49,7 +50,10 @@ module ChefApply
49
50
  # @option options [Hash] :style
50
51
  # keys :top :middle and :bottom can contain Strings that are used to
51
52
  # indent the spinners. Ignored if message is blank
52
- multispinner = get_multispinner.new("[:spinner] #{header}", output: @location, hide_cursor: true, style: indent_style)
53
+ multispinner = get_multispinner.new("[:spinner] #{header}",
54
+ output: @location,
55
+ hide_cursor: true,
56
+ style: indent_style)
53
57
  jobs.each do |job|
54
58
  multispinner.register(spinner_prefix(job.prefix), hide_cursor: true) do |spinner|
55
59
  reporter = StatusReporter.new(spinner, prefix: job.prefix, key: :status)
@@ -57,6 +61,10 @@ module ChefApply
57
61
  end
58
62
  end
59
63
  multispinner.auto_spin
64
+ ensure
65
+ # Spinners hide the cursor for better appearance, so we need to make sure
66
+ # we always bring it back
67
+ show_cursor
60
68
  end
61
69
 
62
70
  def render_job(initial_msg, job)
@@ -81,6 +89,10 @@ module ChefApply
81
89
  def get_spinner
82
90
  ChefApply::Config.dev.spinner ? TTY::Spinner : PlainTextElement
83
91
  end
92
+
93
+ def show_cursor
94
+ TTY::Cursor.show()
95
+ end
84
96
  end
85
97
  end
86
98
  end
@@ -16,5 +16,5 @@
16
16
  #
17
17
 
18
18
  module ChefApply
19
- VERSION = "0.2.0"
19
+ VERSION = "0.2.1"
20
20
  end
@@ -54,6 +54,13 @@ RSpec.describe ChefApply::UI::Terminal do
54
54
  expect(@job1ran).to eq true
55
55
  expect(@job2ran).to eq true
56
56
  end
57
+ it "always resets the cursor to visible" do
58
+ job1 = Terminal::Job.new("prefix", nil) do
59
+ raise "Cursor should be set visible"
60
+ end
61
+ expect(Terminal).to receive(:show_cursor)
62
+ Terminal.render_parallel_jobs("a message", [job1])
63
+ end
57
64
  end
58
65
 
59
66
  describe ChefApply::UI::Terminal::Job do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-apply
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chef Software, Inc
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-16 00:00:00.000000000 Z
11
+ date: 2018-10-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mixlib-cli