fog-openstack 0.1.23 → 0.1.24
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 +4 -4
- data/.rubocop.yml +12 -0
- data/.travis.yml +1 -1
- data/README.md +24 -6
- data/docker-compose.yml +44 -0
- data/lib/fog/compute/openstack.rb +1 -1
- data/lib/fog/openstack/core.rb +1 -1
- data/lib/fog/openstack/version.rb +1 -1
- data/lib/fog/storage/openstack.rb +18 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 77699371cb9d1cea2f5ced1bc246594c70b412da
|
4
|
+
data.tar.gz: 875158fd7550f7714b0f4082ec8e7a9a0b4684ef
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 46745f15db6c180aa55ead7a7ae8246b73bfcd489c54feb8f929b5678b9dfb9b74a0a9ecbec18697c9e70d72fce98519e8df4a017cd7638f132e0a74dda3cfba
|
7
|
+
data.tar.gz: 2a683b1003fbfd0dc25f22e59be0c7c02acdc615bb1fbffc8cccf66991162d6ff849d776aa75d6955d6ed823ecc72869212fd33dffe2637096012f11bdd570a3
|
data/.rubocop.yml
CHANGED
@@ -9,6 +9,7 @@ AlignHash:
|
|
9
9
|
BlockNesting:
|
10
10
|
Severity: refactor
|
11
11
|
ClassLength:
|
12
|
+
Max: 150
|
12
13
|
Severity: refactor
|
13
14
|
ClassCheck:
|
14
15
|
EnforcedStyle: kind_of?
|
@@ -30,6 +31,17 @@ LineLength:
|
|
30
31
|
MethodLength:
|
31
32
|
Max: 25
|
32
33
|
Severity: refactor
|
34
|
+
# Exclude test methods from BlockLength.
|
35
|
+
Metrics/BlockLength:
|
36
|
+
ExcludedMethods:
|
37
|
+
- after
|
38
|
+
- before
|
39
|
+
- context
|
40
|
+
- describe
|
41
|
+
- it
|
42
|
+
- model_tests
|
43
|
+
- namespace
|
44
|
+
- draw
|
33
45
|
ParameterLists:
|
34
46
|
Severity: refactor
|
35
47
|
PerceivedComplexity:
|
data/.travis.yml
CHANGED
data/README.md
CHANGED
@@ -113,7 +113,7 @@ p compute.flavors
|
|
113
113
|
# disk=1,
|
114
114
|
# vcpus=1,
|
115
115
|
# ...
|
116
|
-
# >,
|
116
|
+
# >,
|
117
117
|
# <Fog::Compute::OpenStack::Flavor
|
118
118
|
# id="2",
|
119
119
|
# name="m1.small",
|
@@ -182,7 +182,7 @@ security_group = compute.security_groups.create name: "Test SSH",
|
|
182
182
|
# description="Allow access to port 22",
|
183
183
|
# security_group_rules= <Fog::Compute::OpenStack::SecurityGroupRules
|
184
184
|
# [
|
185
|
-
|
185
|
+
|
186
186
|
# ]
|
187
187
|
# >,
|
188
188
|
# tenant_id="06a9a90c60074cdeae5f7fdd0048d9ac"
|
@@ -418,7 +418,7 @@ identity.projects
|
|
418
418
|
# description="Project 1",
|
419
419
|
# enabled=true,
|
420
420
|
# name="project_1",
|
421
|
-
# >,
|
421
|
+
# >,
|
422
422
|
# ...
|
423
423
|
# ]
|
424
424
|
|
@@ -539,9 +539,28 @@ neutron.add_router_interface router.id, subnet.id
|
|
539
539
|
|
540
540
|
## Development
|
541
541
|
|
542
|
-
|
542
|
+
```
|
543
|
+
$ git clone https://github.com/fog/fog-openstack.git # Clone repository
|
544
|
+
$ cd fog-openstack; bin/setup # Install dependencies from project directory
|
545
|
+
$ bundle exec rake test # Run tests
|
546
|
+
$ bundle exec rake spec # Run tests
|
547
|
+
$ bin/console # Run interactive prompt that allows you to experiment (optional)
|
548
|
+
$ bundle exec rake install # Install gem to your local machine (optional)
|
549
|
+
```
|
550
|
+
|
551
|
+
You can also use a docker image for development and running tests. Once you have
|
552
|
+
cloned the repository, it can be run with:
|
553
|
+
```
|
554
|
+
$ docker-compose up test
|
555
|
+
$ docker-compose up ruby # Start a container with the ruby environment
|
556
|
+
```
|
543
557
|
|
544
|
-
|
558
|
+
In order to release a new version, perform the following steps:
|
559
|
+
|
560
|
+
1. Update version number in `version.rb`.
|
561
|
+
2. Run `bundle exec rake release`, which will create a git tag for the version.
|
562
|
+
3. Push git commits and tags.
|
563
|
+
4. Push the `.gem` file to [rubygems.org](https://rubygems.org).
|
545
564
|
|
546
565
|
## Contributing
|
547
566
|
|
@@ -551,4 +570,3 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/fog/fo
|
|
551
570
|
## License
|
552
571
|
|
553
572
|
The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
|
554
|
-
|
data/docker-compose.yml
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
#
|
2
|
+
# This file allows to:
|
3
|
+
# - create a ruby docker environment for development
|
4
|
+
# - run a testsuite from scratch like .travis.yml
|
5
|
+
#
|
6
|
+
# Run all tests with
|
7
|
+
#
|
8
|
+
# $ docker-compose up test
|
9
|
+
#
|
10
|
+
# Create the develompent environment with
|
11
|
+
#
|
12
|
+
# $ docker-compose up -d ruby
|
13
|
+
# $ docker exec -ti fogopenstack_ruby_1 /bin/bash
|
14
|
+
#
|
15
|
+
version: '2'
|
16
|
+
|
17
|
+
services:
|
18
|
+
|
19
|
+
ruby:
|
20
|
+
image: ruby:2.4-stretch
|
21
|
+
cap_add:
|
22
|
+
- SYS_PTRACE
|
23
|
+
volumes:
|
24
|
+
- .:/code:z
|
25
|
+
- .:/home/travis/build/fog/fog-openstack:z
|
26
|
+
entrypoint: tail -f /etc/hosts
|
27
|
+
|
28
|
+
test:
|
29
|
+
image: ruby:2.4-stretch
|
30
|
+
cap_add:
|
31
|
+
- SYS_PTRACE
|
32
|
+
volumes:
|
33
|
+
- .:/code:z
|
34
|
+
- .:/home/travis/build/fog/fog-openstack:z
|
35
|
+
environment:
|
36
|
+
- JRUBY_OPTS=--debug
|
37
|
+
working_dir: /home/travis/build/fog/fog-openstack
|
38
|
+
entrypoint: |
|
39
|
+
bash -c '
|
40
|
+
gem update bundler --verbose
|
41
|
+
bundle install --verbose
|
42
|
+
bundle exec rake test
|
43
|
+
bundle exec rake spec
|
44
|
+
'
|
data/lib/fog/openstack/core.rb
CHANGED
@@ -145,7 +145,7 @@ module Fog
|
|
145
145
|
|
146
146
|
def headers(additional_headers)
|
147
147
|
additional_headers ||= {}
|
148
|
-
|
148
|
+
unless @microversion.nil? || @microversion.empty?
|
149
149
|
microversion_value = if @microversion_key == 'Openstack-API-Version'
|
150
150
|
"#{@microversion_service_type} #{@microversion}"
|
151
151
|
else
|
@@ -44,7 +44,22 @@ module Fog
|
|
44
44
|
request :post_set_meta_temp_url_key
|
45
45
|
request :public_url
|
46
46
|
|
47
|
+
module Utils
|
48
|
+
def require_mime_types
|
49
|
+
# Use mime/types/columnar if available, for reduced memory usage
|
50
|
+
require 'mime/types/columnar'
|
51
|
+
rescue LoadError
|
52
|
+
begin
|
53
|
+
require 'mime/types'
|
54
|
+
rescue LoadError
|
55
|
+
Fog::Logger.warning("'mime-types' missing, please install and try again.")
|
56
|
+
exit(1)
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
47
61
|
class Mock
|
62
|
+
include Utils
|
48
63
|
def self.data
|
49
64
|
@data ||= Hash.new do |hash, key|
|
50
65
|
hash[key] = {}
|
@@ -56,6 +71,7 @@ module Fog
|
|
56
71
|
end
|
57
72
|
|
58
73
|
def initialize(options = {})
|
74
|
+
require_mime_types
|
59
75
|
@openstack_api_key = options[:openstack_api_key]
|
60
76
|
@openstack_username = options[:openstack_username]
|
61
77
|
@path = '/v1/AUTH_1234'
|
@@ -81,6 +97,7 @@ module Fog
|
|
81
97
|
end
|
82
98
|
|
83
99
|
class Real
|
100
|
+
include Utils
|
84
101
|
include Fog::OpenStack::Core
|
85
102
|
|
86
103
|
def self.not_found_class
|
@@ -88,6 +105,7 @@ module Fog
|
|
88
105
|
end
|
89
106
|
|
90
107
|
def initialize(options = {})
|
108
|
+
require_mime_types
|
91
109
|
initialize_identity options
|
92
110
|
|
93
111
|
@openstack_service_type = options[:openstack_service_type] || ['object-store']
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fog-openstack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.24
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Darby
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-02-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fog-core
|
@@ -214,6 +214,7 @@ files:
|
|
214
214
|
- Rakefile
|
215
215
|
- bin/console
|
216
216
|
- bin/setup
|
217
|
+
- docker-compose.yml
|
217
218
|
- docs/common/connection_params.md
|
218
219
|
- docs/common/resources.md
|
219
220
|
- docs/compute.md
|