idcfcloud 1.0.0 → 1.1.2
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 +5 -5
- data/CHANGELOG.md +5 -0
- data/README.md +16 -9
- data/idcfcloud.gemspec +6 -5
- data/lib/idcf/cli/conf/conf.yml +6 -6
- data/lib/idcf/cli/conf/const.rb +3 -3
- data/lib/idcf/cli/controller/compute.rb +1 -2
- data/lib/idcf/cli/controller/ilb.rb +1 -1
- data/lib/idcf/cli/extend/update.rb +1 -1
- data/lib/idcf/cli/extend/update_file.rb +18 -7
- data/lib/idcf/cli/lib/document.rb +7 -4
- data/lib/idcf/cli/version.rb +1 -1
- metadata +17 -30
- data/lib/idcf/cli/controller/cdn.rb +0 -40
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: c426a591993dc4f91689733ed42dd7b74fa318997b7bd10e2aed2e79419de34b
|
4
|
+
data.tar.gz: cbb9b32e9562df3117435d076667ca8900c07f1916f6d68fb970f8f48ca44696
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8cc9e4688089eba3db58999522f1d1020b3c95ef42ae202f2633b263dd2b7b44ebff927c27a761f721d569e4abfa7951f19cdaf9f3ba0958d5739a349b59c66e
|
7
|
+
data.tar.gz: 9f7265ea8993df575d658e336ae13dab0afebf02fd092e048f2deb5eae370f9a50896edb10aa3013ca037d3543def691b7f23ed458dc9fae018547dba86ea06e
|
data/CHANGELOG.md
ADDED
data/README.md
CHANGED
@@ -70,8 +70,6 @@ idcfcloud your list_billing_history --json-path '$.data[?(@.month=="2017-10")]'
|
|
70
70
|
|
71
71
|
[ILB](#ilb)
|
72
72
|
|
73
|
-
[CDN](#cdn)
|
74
|
-
|
75
73
|
[DNS](#dns)
|
76
74
|
|
77
75
|
[Your](#your)
|
@@ -80,7 +78,7 @@ idcfcloud your list_billing_history --json-path '$.data[?(@.month=="2017-10")]'
|
|
80
78
|
|
81
79
|
versions
|
82
80
|
|
83
|
-
Get a supported API version.
|
81
|
+
Get a supported API version.
|
84
82
|
|
85
83
|
```code
|
86
84
|
$ idcfcloud your versions
|
@@ -126,10 +124,6 @@ sslalgorithms_ids
|
|
126
124
|
$ idcfcloud ilb sslalgorithms_ids
|
127
125
|
```
|
128
126
|
|
129
|
-
### CDN<a name="cdn"></a>
|
130
|
-
|
131
|
-
https://www.idcf.jp/help/cache/docs/pdf/cache_api.pdf?cl=rd_0046
|
132
|
-
|
133
127
|
### DNS<a name="dns"></a>
|
134
128
|
|
135
129
|
http://docs.idcf.jp/cloud/dns/#s_fid=4FEB16B56007BA5C-0BFB42ABA668ADA8
|
@@ -138,16 +132,29 @@ http://docs.idcf.jp/cloud/dns/#s_fid=4FEB16B56007BA5C-0BFB42ABA668ADA8
|
|
138
132
|
|
139
133
|
http://docs.idcf.jp/cloud/billing/
|
140
134
|
|
141
|
-
## Development
|
135
|
+
## Development && Test
|
142
136
|
|
143
137
|
Running the following test code is possible, but not recommended nor supported. Run only a code of a target.
|
144
138
|
|
139
|
+
🚨NOTE 🚨
|
140
|
+
|
141
|
+
- Be sure to specify `test/run_test.rb` before the test target.
|
142
|
+
- The test environment is not standalone. You need to apply for services and prepare your own environment.
|
143
|
+
At least an [ILB](https://www.idcf.jp/cloud/ilb/) is required to pass all tests.
|
144
|
+
- If you do not specify the region properly with the environment variable `TEST_REGION (default: jp-east)`, the test will not pass.
|
145
|
+
|
145
146
|
```code
|
146
|
-
$ bundle exec ruby test/run_test.rb idcf/cli/controller/test_your.rb
|
147
|
+
$ TEST_REGION=your_region bundle exec ruby test/run_test.rb idcf/cli/controller/test_your.rb
|
147
148
|
```
|
148
149
|
|
149
150
|
In order to avoid collapsed setting in ILB, make sure you understand how things work before running a code.
|
150
151
|
|
152
|
+
#### environments
|
153
|
+
|
154
|
+
|name|description|
|
155
|
+
|----|-----------|
|
156
|
+
|`TEST_REGION`|Region used in the test. (jp-east・jp-east-2・jp-west)|
|
157
|
+
|
151
158
|
## Contributing
|
152
159
|
|
153
160
|
1. Fork it ( https://github.com/idcf/idcfcloud-cli/fork )
|
data/idcfcloud.gemspec
CHANGED
@@ -22,19 +22,20 @@ Gem::Specification.new do |spec|
|
|
22
22
|
spec.bindir = 'exe'
|
23
23
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
24
24
|
spec.require_paths = ['lib']
|
25
|
+
spec.required_ruby_version = '>= 2.5.0'
|
25
26
|
|
26
|
-
spec.add_development_dependency 'bundler', '
|
27
|
-
spec.add_development_dependency 'rake', '
|
27
|
+
spec.add_development_dependency 'bundler', '>= 1.14'
|
28
|
+
spec.add_development_dependency 'rake', '>= 10.0'
|
28
29
|
spec.add_development_dependency 'test-unit', '~> 3.2', '>= 3.2.5'
|
29
30
|
spec.add_development_dependency 'test-unit-notify', '~> 1.0', '>= 1.0.4'
|
30
31
|
|
31
|
-
spec.add_dependency 'activemodel', '
|
32
|
-
spec.add_dependency 'activesupport', '
|
32
|
+
spec.add_dependency 'activemodel', '>= 5.2.4.1'
|
33
|
+
spec.add_dependency 'activesupport', '>= 5.2.4.1'
|
33
34
|
spec.add_dependency 'builder', '~> 3.1'
|
34
35
|
spec.add_dependency 'CFPropertyList', '~> 2.3.5'
|
35
36
|
spec.add_dependency 'facter', '~> 2.5.1'
|
36
37
|
spec.add_dependency 'idcf-faraday_middleware', '~> 0.0.2'
|
37
|
-
spec.add_dependency 'idcf-json_hyper_schema', '~> 0.
|
38
|
+
spec.add_dependency 'idcf-json_hyper_schema', '~> 0.3.1'
|
38
39
|
spec.add_dependency 'inifile', '~> 3.0', '>= 3.0.0'
|
39
40
|
spec.add_dependency 'jsonpath', '~> 0.8.10'
|
40
41
|
spec.add_dependency 'kosi', '~> 1.0', '>= 1.0.0'
|
data/lib/idcf/cli/conf/conf.yml
CHANGED
@@ -9,6 +9,9 @@ ilb:
|
|
9
9
|
jp-east-2:
|
10
10
|
schema: https://ilb.jp-east-2.idcfcloud.com/api/v1/schema
|
11
11
|
host: ilb.jp-east-2.idcfcloud.com
|
12
|
+
jp-east-3:
|
13
|
+
schema: https://ilb.jp-east-3.idcfcloud.com/api/v1/schema
|
14
|
+
host: ilb.jp-east-3.idcfcloud.com
|
12
15
|
jp-west:
|
13
16
|
schema: https://ilb.jp-west.idcfcloud.com/api/v1/schema
|
14
17
|
host: ilb.jp-west.idcfcloud.com
|
@@ -18,12 +21,6 @@ your:
|
|
18
21
|
default:
|
19
22
|
schema: https://your.idcfcloud.com/api/v1/schema
|
20
23
|
host: your.idcfcloud.com
|
21
|
-
cdn:
|
22
|
-
v0:
|
23
|
-
region:
|
24
|
-
default:
|
25
|
-
schema: https://cdn.idcfcloud.com/api/v1/schema
|
26
|
-
host: cdn.idcfcloud.com
|
27
24
|
dns:
|
28
25
|
v1:
|
29
26
|
region:
|
@@ -39,6 +36,9 @@ compute:
|
|
39
36
|
jp-east-2:
|
40
37
|
schema: https://compute.jp-east-2.idcfcloud.com/api/v1/schema
|
41
38
|
host: compute.jp-east-2.idcfcloud.com
|
39
|
+
jp-east-3:
|
40
|
+
schema: https://compute.jp-east-3.idcfcloud.com/api/v1/schema
|
41
|
+
host: compute.jp-east-3.idcfcloud.com
|
42
42
|
jp-west:
|
43
43
|
schema: https://compute.jp-west.idcfcloud.com/api/v1/schema
|
44
44
|
host: compute.jp-west.idcfcloud.com
|
data/lib/idcf/cli/conf/const.rb
CHANGED
@@ -5,10 +5,10 @@ module Idcf
|
|
5
5
|
module Conf
|
6
6
|
# const
|
7
7
|
class Const
|
8
|
-
DOCUMENT_URL = 'https://www.idcf.jp/api-docs/'.freeze
|
9
|
-
DOCUMENT_ID_PREFIX = 'reference'.freeze
|
8
|
+
DOCUMENT_URL = 'https://www.idcf.jp/api-docs/apis/'.freeze
|
10
9
|
DOCUMENT_ID_SEP = '_'.freeze
|
11
10
|
DOCUMENT_SPACE_CONVERSION = '-'.freeze
|
11
|
+
DOCUMENT_ID_PREFIX_FORMAT = 'docs_%<service>s_reference%<version>s'.freeze
|
12
12
|
VERSION_STR = "idcfcloud version #{Idcf::Cli::VERSION}".freeze
|
13
13
|
now = Time.now.strftime('%Y%m%d%H%M%S%6N')
|
14
14
|
dir_path = File.dirname(__FILE__)
|
@@ -23,7 +23,7 @@ module Idcf
|
|
23
23
|
CODE_CONF_PATH = "#{BASE_PATH}/idcf/cli/conf/conf.yml".freeze
|
24
24
|
USER_CONF_PATH = "#{USER_DIR_PATH}/config.ini".freeze
|
25
25
|
USER_CONF_GLOBAL = "#{BASE_PATH}/../config/config.ini".freeze
|
26
|
-
REGIONS = %w[jp-east jp-east-2 jp-west].freeze
|
26
|
+
REGIONS = %w[jp-east jp-east-2 jp-east-3 jp-west].freeze
|
27
27
|
GLOBAL_CONF_ITEMS =
|
28
28
|
{
|
29
29
|
output_log: {
|
@@ -1,5 +1,4 @@
|
|
1
1
|
require_relative './base'
|
2
|
-
require 'idcf/faraday_middleware/cdn_signature'
|
3
2
|
|
4
3
|
module Idcf
|
5
4
|
module Cli
|
@@ -12,7 +11,7 @@ module Idcf
|
|
12
11
|
type: :string,
|
13
12
|
aliases: '-r',
|
14
13
|
require: true,
|
15
|
-
desc: 'region: jp-east/jp-east-2/jp-west'
|
14
|
+
desc: 'region: jp-east/jp-east-2/jp-east-3/jp-west'
|
16
15
|
|
17
16
|
class << self
|
18
17
|
def description
|
@@ -7,8 +7,17 @@ module Idcf
|
|
7
7
|
module Extend
|
8
8
|
# update file
|
9
9
|
module UpdateFile
|
10
|
-
BROKEN_UPDATE_FILE =
|
11
|
-
|
10
|
+
BROKEN_UPDATE_FILE = <<-TEXT.strip_heredoc.freeze
|
11
|
+
The update file is damaged.
|
12
|
+
Please consult with the administrator.
|
13
|
+
TEXT
|
14
|
+
BROKEN_JSON_SCHEMA = <<-TEXT.strip_heredoc.freeze
|
15
|
+
Failed to verify the update file.
|
16
|
+
Use the following commands to try updating the gem.
|
17
|
+
|
18
|
+
# gem update idcfcloud
|
19
|
+
# idcfcloud init
|
20
|
+
TEXT
|
12
21
|
|
13
22
|
protected
|
14
23
|
|
@@ -51,13 +60,13 @@ module Idcf
|
|
51
60
|
analyst.schema_links(j)
|
52
61
|
rescue StandardError => e
|
53
62
|
Idcf::Cli::Lib::Util::CliLogger.info('json-schema format error')
|
54
|
-
log_msg = "#{
|
63
|
+
log_msg = "#{BROKEN_JSON_SCHEMA}:#{e.message}"
|
55
64
|
Idcf::Cli::Lib::Util::CliLogger.error(log_msg)
|
56
|
-
raise Idcf::Cli::Error::CliError,
|
65
|
+
raise Idcf::Cli::Error::CliError, BROKEN_JSON_SCHEMA
|
57
66
|
end
|
58
67
|
|
59
68
|
def file_load(path)
|
60
|
-
open(path).read
|
69
|
+
URI.open(path).read
|
61
70
|
rescue StandardError => _e
|
62
71
|
nil
|
63
72
|
end
|
@@ -66,8 +75,10 @@ module Idcf
|
|
66
75
|
{}.tap do |result|
|
67
76
|
Idcf::Cli::Lib::Configure.get_code_conf(cls.service_name).each do |k, v|
|
68
77
|
regions = {}
|
69
|
-
v['region'].
|
70
|
-
|
78
|
+
v['region'].each_key do |region|
|
79
|
+
target = "#{cls.service_name}.#{k}.region.#{region}.schema"
|
80
|
+
url = Idcf::Cli::Lib::Configure.get_code_conf(target)
|
81
|
+
regions[region] = create_schema_url(url)
|
71
82
|
end
|
72
83
|
|
73
84
|
result[k] = regions
|
@@ -27,10 +27,13 @@ module Idcf
|
|
27
27
|
end
|
28
28
|
|
29
29
|
def make_document_id(link)
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
30
|
+
titles = link.parent_titles
|
31
|
+
service_str = titles.shift.downcase
|
32
|
+
version_str = "#{Idcf::Cli::Conf::Const::DOCUMENT_SPACE_CONVERSION}#{@version}"
|
33
|
+
version_str = (@region.present? && @region != 'default' ? '' : version_str)
|
34
|
+
id_format = Idcf::Cli::Conf::Const::DOCUMENT_ID_PREFIX_FORMAT
|
35
|
+
prefix = format(id_format, service: service_str, version: version_str)
|
36
|
+
results = [prefix]
|
34
37
|
results.concat(titles)
|
35
38
|
result = results.join(Idcf::Cli::Conf::Const::DOCUMENT_ID_SEP)
|
36
39
|
result.gsub(/ /, Idcf::Cli::Conf::Const::DOCUMENT_SPACE_CONVERSION)
|
data/lib/idcf/cli/version.rb
CHANGED
metadata
CHANGED
@@ -1,41 +1,41 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: idcfcloud
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- IDC Frontier Inc.
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-09-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.14'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.14'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '10.0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '10.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
@@ -82,42 +82,30 @@ dependencies:
|
|
82
82
|
name: activemodel
|
83
83
|
requirement: !ruby/object:Gem::Requirement
|
84
84
|
requirements:
|
85
|
-
- - "~>"
|
86
|
-
- !ruby/object:Gem::Version
|
87
|
-
version: '4.2'
|
88
85
|
- - ">="
|
89
86
|
- !ruby/object:Gem::Version
|
90
|
-
version:
|
87
|
+
version: 5.2.4.1
|
91
88
|
type: :runtime
|
92
89
|
prerelease: false
|
93
90
|
version_requirements: !ruby/object:Gem::Requirement
|
94
91
|
requirements:
|
95
|
-
- - "~>"
|
96
|
-
- !ruby/object:Gem::Version
|
97
|
-
version: '4.2'
|
98
92
|
- - ">="
|
99
93
|
- !ruby/object:Gem::Version
|
100
|
-
version:
|
94
|
+
version: 5.2.4.1
|
101
95
|
- !ruby/object:Gem::Dependency
|
102
96
|
name: activesupport
|
103
97
|
requirement: !ruby/object:Gem::Requirement
|
104
98
|
requirements:
|
105
|
-
- - "~>"
|
106
|
-
- !ruby/object:Gem::Version
|
107
|
-
version: '4.2'
|
108
99
|
- - ">="
|
109
100
|
- !ruby/object:Gem::Version
|
110
|
-
version:
|
101
|
+
version: 5.2.4.1
|
111
102
|
type: :runtime
|
112
103
|
prerelease: false
|
113
104
|
version_requirements: !ruby/object:Gem::Requirement
|
114
105
|
requirements:
|
115
|
-
- - "~>"
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '4.2'
|
118
106
|
- - ">="
|
119
107
|
- !ruby/object:Gem::Version
|
120
|
-
version:
|
108
|
+
version: 5.2.4.1
|
121
109
|
- !ruby/object:Gem::Dependency
|
122
110
|
name: builder
|
123
111
|
requirement: !ruby/object:Gem::Requirement
|
@@ -180,14 +168,14 @@ dependencies:
|
|
180
168
|
requirements:
|
181
169
|
- - "~>"
|
182
170
|
- !ruby/object:Gem::Version
|
183
|
-
version: 0.
|
171
|
+
version: 0.3.1
|
184
172
|
type: :runtime
|
185
173
|
prerelease: false
|
186
174
|
version_requirements: !ruby/object:Gem::Requirement
|
187
175
|
requirements:
|
188
176
|
- - "~>"
|
189
177
|
- !ruby/object:Gem::Version
|
190
|
-
version: 0.
|
178
|
+
version: 0.3.1
|
191
179
|
- !ruby/object:Gem::Dependency
|
192
180
|
name: inifile
|
193
181
|
requirement: !ruby/object:Gem::Requirement
|
@@ -280,6 +268,7 @@ files:
|
|
280
268
|
- ".codeclimate.yml"
|
281
269
|
- ".gitignore"
|
282
270
|
- ".rubocop.yml"
|
271
|
+
- CHANGELOG.md
|
283
272
|
- Gemfile
|
284
273
|
- LICENSE.txt
|
285
274
|
- README.md
|
@@ -292,7 +281,6 @@ files:
|
|
292
281
|
- lib/idcf/cli/conf/conf.yml
|
293
282
|
- lib/idcf/cli/conf/const.rb
|
294
283
|
- lib/idcf/cli/controller/base.rb
|
295
|
-
- lib/idcf/cli/controller/cdn.rb
|
296
284
|
- lib/idcf/cli/controller/compute.rb
|
297
285
|
- lib/idcf/cli/controller/dns.rb
|
298
286
|
- lib/idcf/cli/controller/extend/command.rb
|
@@ -364,16 +352,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
364
352
|
requirements:
|
365
353
|
- - ">="
|
366
354
|
- !ruby/object:Gem::Version
|
367
|
-
version:
|
355
|
+
version: 2.5.0
|
368
356
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
369
357
|
requirements:
|
370
358
|
- - ">="
|
371
359
|
- !ruby/object:Gem::Version
|
372
360
|
version: '0'
|
373
361
|
requirements: []
|
374
|
-
|
375
|
-
|
376
|
-
signing_key:
|
362
|
+
rubygems_version: 3.1.4
|
363
|
+
signing_key:
|
377
364
|
specification_version: 4
|
378
365
|
summary: IDCF Cli tools
|
379
366
|
test_files: []
|
@@ -1,40 +0,0 @@
|
|
1
|
-
require_relative './base'
|
2
|
-
require 'idcf/faraday_middleware/cdn_signature'
|
3
|
-
|
4
|
-
module Idcf
|
5
|
-
module Cli
|
6
|
-
module Controller
|
7
|
-
# CDN
|
8
|
-
class Cdn < Base
|
9
|
-
default_command :help
|
10
|
-
|
11
|
-
class_option :version,
|
12
|
-
desc: 'API Version'
|
13
|
-
|
14
|
-
class << self
|
15
|
-
def description
|
16
|
-
'Contents Cache Service'
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
protected
|
21
|
-
|
22
|
-
# signeture
|
23
|
-
#
|
24
|
-
# @return String
|
25
|
-
def signature
|
26
|
-
Idcf::FaradayMiddleware::CdnSignature
|
27
|
-
end
|
28
|
-
|
29
|
-
# raise api error msg
|
30
|
-
#
|
31
|
-
# @param res [Faraday::Responce]
|
32
|
-
# @return [String]
|
33
|
-
def raise_api_error_msg(res)
|
34
|
-
"HTTP status code: #{res.status}, " \
|
35
|
-
"Error message: #{res.body['messages']}, "
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|