zendesk_apps_tools 1.19.0 → 1.20.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 218892c47df72fde58c138380d018a29ba6163c2
4
- data.tar.gz: aafaf350cbd99f8c150a57a4192c3acc34b0d1ba
3
+ metadata.gz: 7f59a2d6a2b6db4e5c6b32bd5a2e88ac2f258d57
4
+ data.tar.gz: 81d6ac4cbb8393781e046b7f20fc97f43d51a338
5
5
  SHA512:
6
- metadata.gz: dffdcadb0e6a137b34f3635695eb4cf9717ecac1f2ec655f8c1d1fe92eb1d286f6c7cd74cecec14bd254a0c7e7012c3bf6ece4195b6b19a7b785c2cf5ea701e8
7
- data.tar.gz: 426348f984de10bfcf290073a1b9727cb3bfd5b62842fe66116b6a7f3251caf828655f3b53bfbec4f360f2e1dfc95f78f4f9363ad76e9ba21f6d49ea9bd8f841
6
+ metadata.gz: 74f1ff6f06fc42f4ecf02a89b0a2497aa7b6ac637eee1164f0513b1ed3c0549972a0ae5c3d5014dbe94321d857a141c99af062f2a0f7763e2a33ddbd7ecbf3d5
7
+ data.tar.gz: 202b2e65c2102498834ca34b7c15f02d14460b5dfebce76c1441d189c01c70980de6168734f5ff3391b3574cbcfc8104616ae5bd2128d43f2dbde18f8fbfab47
@@ -88,17 +88,23 @@ module ZendeskAppsTools
88
88
  end
89
89
 
90
90
  DEFAULT_SERVER_PATH = "./"
91
+ DEFAULT_CONFIG_PATH = "./settings.yml"
91
92
  DEFAULT_SERVER_PORT = 4567
92
93
 
93
94
  desc "server", "Run a http server to serve the local app"
94
95
  method_option :path, :default => DEFAULT_SERVER_PATH, :required => false, :aliases => "-p"
96
+ method_option :config, :default => DEFAULT_CONFIG_PATH, :required => false, :aliases => "-c"
95
97
  method_option :port, :default => DEFAULT_SERVER_PORT, :required => false
96
98
  def server
97
99
  setup_path(options[:path])
98
100
  manifest = app_package.manifest_json
99
101
 
100
102
  settings_helper = ZendeskAppsTools::Settings.new
101
- settings = settings_helper.get_settings_from(self, manifest[:parameters])
103
+
104
+ settings = settings_helper.get_settings_yaml options[:config], manifest[:parameters]
105
+ unless settings
106
+ settings = settings_helper.get_settings_from self, manifest[:parameters]
107
+ end
102
108
 
103
109
  require 'zendesk_apps_tools/server'
104
110
  ZendeskAppsTools::Server.tap do |server|
@@ -1,4 +1,5 @@
1
1
  require 'zendesk_apps_tools/common'
2
+ require 'yaml'
2
3
 
3
4
  module ZendeskAppsTools
4
5
  class Settings
@@ -25,6 +26,43 @@ module ZendeskAppsTools
25
26
  end
26
27
  end
27
28
 
29
+ def get_settings_yaml(filepath, parameters)
30
+ return {} if parameters.nil?
31
+ return nil unless File.exists? filepath
32
+
33
+ begin
34
+ settings_file = File.read(filepath)
35
+ settings_yml = YAML::load(settings_file)
36
+ settings_yml.each do |index, setting|
37
+ if (setting.is_a?(Hash) || setting.is_a?(Array))
38
+ settings_yml[index] = JSON.dump(setting)
39
+ end
40
+ end
41
+ rescue => err
42
+ return nil
43
+ end
44
+
45
+ parameters.inject({}) do |settings, param|
46
+ input = settings_yml[param[:name]]
47
+
48
+ if !input && param[:default]
49
+ input = param[:default]
50
+ end
51
+
52
+ if !input && param[:required]
53
+ puts "'#{param[:name]}' is required but not specified in the yaml file.\n"
54
+ return nil
55
+ end
56
+
57
+ if param[:type] == 'checkbox'
58
+ input = convert_to_boolean_for_checkbox(input)
59
+ end
60
+
61
+ settings[param[:name]] = input if input != ''
62
+ settings
63
+ end
64
+ end
65
+
28
66
  private
29
67
 
30
68
  def convert_to_boolean_for_checkbox(input)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zendesk_apps_tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.19.0
4
+ version: 1.20.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James A. Rosen
@@ -11,146 +11,146 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2014-06-30 00:00:00.000000000 Z
14
+ date: 2014-08-26 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: thor
18
18
  requirement: !ruby/object:Gem::Requirement
19
19
  requirements:
20
- - - ~>
20
+ - - "~>"
21
21
  - !ruby/object:Gem::Version
22
22
  version: 0.18.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
- - - ~>
27
+ - - "~>"
28
28
  - !ruby/object:Gem::Version
29
29
  version: 0.18.0
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: rubyzip
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  requirements:
34
- - - ~>
34
+ - - "~>"
35
35
  - !ruby/object:Gem::Version
36
36
  version: 0.9.1
37
37
  type: :runtime
38
38
  prerelease: false
39
39
  version_requirements: !ruby/object:Gem::Requirement
40
40
  requirements:
41
- - - ~>
41
+ - - "~>"
42
42
  - !ruby/object:Gem::Version
43
43
  version: 0.9.1
44
44
  - !ruby/object:Gem::Dependency
45
45
  name: sinatra
46
46
  requirement: !ruby/object:Gem::Requirement
47
47
  requirements:
48
- - - ~>
48
+ - - "~>"
49
49
  - !ruby/object:Gem::Version
50
50
  version: 1.3.4
51
51
  type: :runtime
52
52
  prerelease: false
53
53
  version_requirements: !ruby/object:Gem::Requirement
54
54
  requirements:
55
- - - ~>
55
+ - - "~>"
56
56
  - !ruby/object:Gem::Version
57
57
  version: 1.3.4
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: faraday
60
60
  requirement: !ruby/object:Gem::Requirement
61
61
  requirements:
62
- - - ~>
62
+ - - "~>"
63
63
  - !ruby/object:Gem::Version
64
64
  version: 0.8.7
65
65
  type: :runtime
66
66
  prerelease: false
67
67
  version_requirements: !ruby/object:Gem::Requirement
68
68
  requirements:
69
- - - ~>
69
+ - - "~>"
70
70
  - !ruby/object:Gem::Version
71
71
  version: 0.8.7
72
72
  - !ruby/object:Gem::Dependency
73
73
  name: zendesk_apps_support
74
74
  requirement: !ruby/object:Gem::Requirement
75
75
  requirements:
76
- - - ~>
76
+ - - "~>"
77
77
  - !ruby/object:Gem::Version
78
78
  version: 1.15.0
79
79
  type: :runtime
80
80
  prerelease: false
81
81
  version_requirements: !ruby/object:Gem::Requirement
82
82
  requirements:
83
- - - ~>
83
+ - - "~>"
84
84
  - !ruby/object:Gem::Version
85
85
  version: 1.15.0
86
86
  - !ruby/object:Gem::Dependency
87
87
  name: cucumber
88
88
  requirement: !ruby/object:Gem::Requirement
89
89
  requirements:
90
- - - '>='
90
+ - - ">="
91
91
  - !ruby/object:Gem::Version
92
92
  version: '0'
93
93
  type: :development
94
94
  prerelease: false
95
95
  version_requirements: !ruby/object:Gem::Requirement
96
96
  requirements:
97
- - - '>='
97
+ - - ">="
98
98
  - !ruby/object:Gem::Version
99
99
  version: '0'
100
100
  - !ruby/object:Gem::Dependency
101
101
  name: aruba
102
102
  requirement: !ruby/object:Gem::Requirement
103
103
  requirements:
104
- - - '>='
104
+ - - ">="
105
105
  - !ruby/object:Gem::Version
106
106
  version: '0'
107
107
  type: :development
108
108
  prerelease: false
109
109
  version_requirements: !ruby/object:Gem::Requirement
110
110
  requirements:
111
- - - '>='
111
+ - - ">="
112
112
  - !ruby/object:Gem::Version
113
113
  version: '0'
114
114
  - !ruby/object:Gem::Dependency
115
115
  name: rspec
116
116
  requirement: !ruby/object:Gem::Requirement
117
117
  requirements:
118
- - - '>='
118
+ - - ">="
119
119
  - !ruby/object:Gem::Version
120
120
  version: '0'
121
121
  type: :development
122
122
  prerelease: false
123
123
  version_requirements: !ruby/object:Gem::Requirement
124
124
  requirements:
125
- - - '>='
125
+ - - ">="
126
126
  - !ruby/object:Gem::Version
127
127
  version: '0'
128
128
  - !ruby/object:Gem::Dependency
129
129
  name: bump
130
130
  requirement: !ruby/object:Gem::Requirement
131
131
  requirements:
132
- - - '>='
132
+ - - ">="
133
133
  - !ruby/object:Gem::Version
134
134
  version: '0'
135
135
  type: :development
136
136
  prerelease: false
137
137
  version_requirements: !ruby/object:Gem::Requirement
138
138
  requirements:
139
- - - '>='
139
+ - - ">="
140
140
  - !ruby/object:Gem::Version
141
141
  version: '0'
142
142
  - !ruby/object:Gem::Dependency
143
143
  name: webmock
144
144
  requirement: !ruby/object:Gem::Requirement
145
145
  requirements:
146
- - - '>='
146
+ - - ">="
147
147
  - !ruby/object:Gem::Version
148
148
  version: '0'
149
149
  type: :development
150
150
  prerelease: false
151
151
  version_requirements: !ruby/object:Gem::Requirement
152
152
  requirements:
153
- - - '>='
153
+ - - ">="
154
154
  - !ruby/object:Gem::Version
155
155
  version: '0'
156
156
  description: Tools to help you develop Zendesk Apps.
@@ -205,12 +205,12 @@ require_paths:
205
205
  - lib
206
206
  required_ruby_version: !ruby/object:Gem::Requirement
207
207
  requirements:
208
- - - '>='
208
+ - - ">="
209
209
  - !ruby/object:Gem::Version
210
210
  version: '0'
211
211
  required_rubygems_version: !ruby/object:Gem::Requirement
212
212
  requirements:
213
- - - '>='
213
+ - - ">="
214
214
  - !ruby/object:Gem::Version
215
215
  version: 1.3.6
216
216
  requirements: []