cloudkeeper-one 1.1.0 → 1.1.1

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: 9d4f43bd15b32c1d02aae284b97d12baafb1491e
4
- data.tar.gz: 06c4f1b3c6ad21c30bf71477b0b44b571ce69240
3
+ metadata.gz: a3a8034b098bd2fd514fba0a0ac02ecad46e4527
4
+ data.tar.gz: 123f8f7a3674a1fe519c0ff51677ba939cf8116c
5
5
  SHA512:
6
- metadata.gz: af3ffac5e682f97bfb76ac273d0a27c58900560c62291cf739f0506d27b691dcb28ae31fa357278c21cb87d48b69bea8be1aa668c5548d31b7ee78311b564fa3
7
- data.tar.gz: d9bcce658d11f698a58873c1645fae55a00a0ad829d0b88a5efb5069fcfd92b7a5a336230cc33cc163850db6c5f52c6c5145726ec92f39c09989d3bb6e36f8ad
6
+ metadata.gz: 7f120cf958e3cd395bd115a481f919114a69cab5a58354cb3751beb948d5a2a0c17a02864d2ab64b64bb04fa6989fd8ceaf4aa24fcf52c00a0e293ac945859a7
7
+ data.tar.gz: 9ab783048ce97d88adbd05afe13fdc7ec9fe6f802ea5fc2520befbe0c72e2c6f31c9771eec109fbd9f2ad5852a7d7581be4c2fee0e79bbbffdd217ca6f5fa293
@@ -16,6 +16,18 @@ Gem::Specification.new do |spec|
16
16
  spec.license = 'Apache License, Version 2.0'
17
17
 
18
18
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
19
+ # get an array of submodule dirs by executing 'pwd' inside each submodule
20
+ gem_dir = File.expand_path(File.dirname(__FILE__)) + '/'
21
+ `git submodule --quiet foreach --recursive pwd`.split($OUTPUT_RECORD_SEPARATOR).each do |submodule_path|
22
+ Dir.chdir(submodule_path) do
23
+ submodule_relative_path = submodule_path.sub gem_dir, ''
24
+ # issue git ls-files in submodule's directory and
25
+ # prepend the submodule path to create absolute file paths
26
+ `git ls-files`.split($OUTPUT_RECORD_SEPARATOR).each do |filename|
27
+ spec.files << "#{submodule_relative_path}/#{filename}"
28
+ end
29
+ end
30
+ end
19
31
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
20
32
  spec.require_paths = ['lib']
21
33
 
@@ -1,5 +1,5 @@
1
1
  module Cloudkeeper
2
2
  module One
3
- VERSION = '1.1.0'.freeze
3
+ VERSION = '1.1.1'.freeze
4
4
  end
5
5
  end
@@ -0,0 +1,6 @@
1
+ [submodule "protos"]
2
+ path = protos
3
+ url = https://github.com/the-cloudkeeper-project/cloudkeeper-proto.git
4
+ [submodule "metadata"]
5
+ path = metadata
6
+ url = https://github.com/the-cloudkeeper-project/cloudkeeper-metadata.git
@@ -0,0 +1,49 @@
1
+ # Contributor Code of Conduct
2
+
3
+ As contributors and maintainers of this project, and in the interest of
4
+ fostering an open and welcoming community, we pledge to respect all people who
5
+ contribute through reporting issues, posting feature requests, updating
6
+ documentation, submitting pull requests or patches, and other activities.
7
+
8
+ We are committed to making participation in this project a harassment-free
9
+ experience for everyone, regardless of level of experience, gender, gender
10
+ identity and expression, sexual orientation, disability, personal appearance,
11
+ body size, race, ethnicity, age, religion, or nationality.
12
+
13
+ Examples of unacceptable behavior by participants include:
14
+
15
+ * The use of sexualized language or imagery
16
+ * Personal attacks
17
+ * Trolling or insulting/derogatory comments
18
+ * Public or private harassment
19
+ * Publishing other's private information, such as physical or electronic
20
+ addresses, without explicit permission
21
+ * Other unethical or unprofessional conduct
22
+
23
+ Project maintainers have the right and responsibility to remove, edit, or
24
+ reject comments, commits, code, wiki edits, issues, and other contributions
25
+ that are not aligned to this Code of Conduct, or to ban temporarily or
26
+ permanently any contributor for other behaviors that they deem inappropriate,
27
+ threatening, offensive, or harmful.
28
+
29
+ By adopting this Code of Conduct, project maintainers commit themselves to
30
+ fairly and consistently applying these principles to every aspect of managing
31
+ this project. Project maintainers who do not follow or enforce the Code of
32
+ Conduct may be permanently removed from the project team.
33
+
34
+ This code of conduct applies both within project spaces and in public spaces
35
+ when an individual is representing the project or its community.
36
+
37
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
38
+ reported by contacting a project maintainer at kimle.michal@gmail.com. All
39
+ complaints will be reviewed and investigated and will result in a response that
40
+ is deemed necessary and appropriate to the circumstances. Maintainers are
41
+ obligated to maintain confidentiality with regard to the reporter of an
42
+ incident.
43
+
44
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage],
45
+ version 1.3.0, available at
46
+ [http://contributor-covenant.org/version/1/3/0/][version]
47
+
48
+ [homepage]: http://contributor-covenant.org
49
+ [version]: http://contributor-covenant.org/version/1/3/0/
@@ -0,0 +1,17 @@
1
+ The work represented by this source file was partially or entirely
2
+ funded by the EGI-Engage project co-funded by the European Union (EU)
3
+ Horizon 2020 program under Grant number 654142.
4
+
5
+ Copyright (c) 2017 CESNET
6
+
7
+ Licensed under the Apache License, Version 2.0 (the "License");
8
+ you may not use this file except in compliance with the License.
9
+ You may obtain a copy of the License at
10
+
11
+ http://www.apache.org/licenses/LICENSE-2.0
12
+
13
+ Unless required by applicable law or agreed to in writing, software
14
+ distributed under the License is distributed on an "AS IS" BASIS,
15
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ See the License for the specific language governing permissions and
17
+ limitations under the License.
@@ -0,0 +1,3 @@
1
+ ## cloudkeeper gRPC generated classes for Ruby
2
+
3
+ This repository contains Ruby classes generated for gRPC communication within the [cloudkeeper](https://github.com/the-cloudkeeper-project/cloudkeeper) project.
@@ -0,0 +1,56 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: cloudkeeper.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/protobuf/empty_pb'
7
+ Google::Protobuf::DescriptorPool.generated_pool.build do
8
+ add_message "cloudkeeper_grpc.Appliance" do
9
+ optional :identifier, :string, 1
10
+ optional :title, :string, 2
11
+ optional :description, :string, 3
12
+ optional :mpuri, :string, 4
13
+ optional :group, :string, 5
14
+ optional :ram, :int64, 6
15
+ optional :core, :int32, 7
16
+ optional :version, :string, 8
17
+ optional :architecture, :string, 9
18
+ optional :operating_system, :string, 10
19
+ optional :vo, :string, 11
20
+ optional :expiration_date, :int64, 12
21
+ optional :image_list_identifier, :string, 13
22
+ optional :image, :message, 14, "cloudkeeper_grpc.Image"
23
+ map :attributes, :string, :string, 15
24
+ end
25
+ add_message "cloudkeeper_grpc.Image" do
26
+ optional :mode, :enum, 1, "cloudkeeper_grpc.Image.Mode"
27
+ optional :location, :string, 2
28
+ optional :format, :enum, 3, "cloudkeeper_grpc.Image.Format"
29
+ optional :uri, :string, 4
30
+ optional :checksum, :string, 5
31
+ optional :size, :int64, 6
32
+ optional :username, :string, 7
33
+ optional :password, :string, 8
34
+ end
35
+ add_enum "cloudkeeper_grpc.Image.Mode" do
36
+ value :LOCAL, 0
37
+ value :REMOTE, 1
38
+ end
39
+ add_enum "cloudkeeper_grpc.Image.Format" do
40
+ value :RAW, 0
41
+ value :OVA, 1
42
+ value :QCOW2, 2
43
+ value :VMDK, 3
44
+ end
45
+ add_message "cloudkeeper_grpc.ImageListIdentifier" do
46
+ optional :image_list_identifier, :string, 1
47
+ end
48
+ end
49
+
50
+ module CloudkeeperGrpc
51
+ Appliance = Google::Protobuf::DescriptorPool.generated_pool.lookup("cloudkeeper_grpc.Appliance").msgclass
52
+ Image = Google::Protobuf::DescriptorPool.generated_pool.lookup("cloudkeeper_grpc.Image").msgclass
53
+ Image::Mode = Google::Protobuf::DescriptorPool.generated_pool.lookup("cloudkeeper_grpc.Image.Mode").enummodule
54
+ Image::Format = Google::Protobuf::DescriptorPool.generated_pool.lookup("cloudkeeper_grpc.Image.Format").enummodule
55
+ ImageListIdentifier = Google::Protobuf::DescriptorPool.generated_pool.lookup("cloudkeeper_grpc.ImageListIdentifier").msgclass
56
+ end
@@ -0,0 +1,29 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: cloudkeeper.proto for package 'cloudkeeper_grpc'
3
+
4
+ require 'grpc'
5
+ # require 'cloudkeeper_pb'
6
+
7
+ module CloudkeeperGrpc
8
+ module Communicator
9
+ class Service
10
+
11
+ include GRPC::GenericService
12
+
13
+ self.marshal_class_method = :encode
14
+ self.unmarshal_class_method = :decode
15
+ self.service_name = 'cloudkeeper_grpc.Communicator'
16
+
17
+ rpc :PreAction, Google::Protobuf::Empty, Google::Protobuf::Empty
18
+ rpc :PostAction, Google::Protobuf::Empty, Google::Protobuf::Empty
19
+ rpc :AddAppliance, Appliance, Google::Protobuf::Empty
20
+ rpc :UpdateAppliance, Appliance, Google::Protobuf::Empty
21
+ rpc :RemoveAppliance, Appliance, Google::Protobuf::Empty
22
+ rpc :RemoveImageList, ImageListIdentifier, Google::Protobuf::Empty
23
+ rpc :ImageLists, Google::Protobuf::Empty, stream(ImageListIdentifier)
24
+ rpc :Appliances, ImageListIdentifier, stream(Appliance)
25
+ end
26
+
27
+ Stub = Service.rpc_stub_class
28
+ end
29
+ end
@@ -0,0 +1,12 @@
1
+ require 'yaml'
2
+
3
+ module CloudkeeperGrpc
4
+ class Constants
5
+ metadata = YAML.load_file(File.join(File.dirname(__FILE__), 'metadata', 'metadata.yml'))
6
+ metadata['keys'].each do |key|
7
+ upcase_key = key.upcase
8
+ const_set("KEY_#{upcase_key}", key)
9
+ metadata[key].each { |value| const_set("#{upcase_key}_#{value.upcase}", value)} if metadata.has_key? key
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,49 @@
1
+ # Contributor Code of Conduct
2
+
3
+ As contributors and maintainers of this project, and in the interest of
4
+ fostering an open and welcoming community, we pledge to respect all people who
5
+ contribute through reporting issues, posting feature requests, updating
6
+ documentation, submitting pull requests or patches, and other activities.
7
+
8
+ We are committed to making participation in this project a harassment-free
9
+ experience for everyone, regardless of level of experience, gender, gender
10
+ identity and expression, sexual orientation, disability, personal appearance,
11
+ body size, race, ethnicity, age, religion, or nationality.
12
+
13
+ Examples of unacceptable behavior by participants include:
14
+
15
+ * The use of sexualized language or imagery
16
+ * Personal attacks
17
+ * Trolling or insulting/derogatory comments
18
+ * Public or private harassment
19
+ * Publishing other's private information, such as physical or electronic
20
+ addresses, without explicit permission
21
+ * Other unethical or unprofessional conduct
22
+
23
+ Project maintainers have the right and responsibility to remove, edit, or
24
+ reject comments, commits, code, wiki edits, issues, and other contributions
25
+ that are not aligned to this Code of Conduct, or to ban temporarily or
26
+ permanently any contributor for other behaviors that they deem inappropriate,
27
+ threatening, offensive, or harmful.
28
+
29
+ By adopting this Code of Conduct, project maintainers commit themselves to
30
+ fairly and consistently applying these principles to every aspect of managing
31
+ this project. Project maintainers who do not follow or enforce the Code of
32
+ Conduct may be permanently removed from the project team.
33
+
34
+ This code of conduct applies both within project spaces and in public spaces
35
+ when an individual is representing the project or its community.
36
+
37
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
38
+ reported by contacting a project maintainer at kimle.michal@gmail.com. All
39
+ complaints will be reviewed and investigated and will result in a response that
40
+ is deemed necessary and appropriate to the circumstances. Maintainers are
41
+ obligated to maintain confidentiality with regard to the reporter of an
42
+ incident.
43
+
44
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage],
45
+ version 1.3.0, available at
46
+ [http://contributor-covenant.org/version/1/3/0/][version]
47
+
48
+ [homepage]: http://contributor-covenant.org
49
+ [version]: http://contributor-covenant.org/version/1/3/0/
@@ -0,0 +1,17 @@
1
+ The work represented by this source file was partially or entirely
2
+ funded by the EGI-Engage project co-funded by the European Union (EU)
3
+ Horizon 2020 program under Grant number 654142.
4
+
5
+ Copyright (c) 2017 CESNET
6
+
7
+ Licensed under the Apache License, Version 2.0 (the "License");
8
+ you may not use this file except in compliance with the License.
9
+ You may obtain a copy of the License at
10
+
11
+ http://www.apache.org/licenses/LICENSE-2.0
12
+
13
+ Unless required by applicable law or agreed to in writing, software
14
+ distributed under the License is distributed on an "AS IS" BASIS,
15
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ See the License for the specific language governing permissions and
17
+ limitations under the License.
@@ -0,0 +1,3 @@
1
+ ## cloudkeeper metadata file
2
+
3
+ This repository contains potential metadata transfered during the gRPC communication within [cloudkeeper](https://github.com/the-cloudkeeper-project/cloudkeeper) project.
@@ -0,0 +1,13 @@
1
+ keys:
2
+ - status
3
+ - message
4
+ status:
5
+ - SUCCESS
6
+ - ERROR
7
+ - ERROR_APPLIANCE_NOT_FOUND
8
+ - ERROR_APPLIANCE_TRANSFER
9
+ - ERROR_AUTHENTICATION
10
+ - ERROR_USER_NOT_AUTHORIZED
11
+ - ERROR_RESOURCE_NOT_FOUND
12
+ - ERROR_RESOURCE_RETRIEVAL
13
+ - ERROR_RESOURCE_STATE
@@ -0,0 +1,49 @@
1
+ # Contributor Code of Conduct
2
+
3
+ As contributors and maintainers of this project, and in the interest of
4
+ fostering an open and welcoming community, we pledge to respect all people who
5
+ contribute through reporting issues, posting feature requests, updating
6
+ documentation, submitting pull requests or patches, and other activities.
7
+
8
+ We are committed to making participation in this project a harassment-free
9
+ experience for everyone, regardless of level of experience, gender, gender
10
+ identity and expression, sexual orientation, disability, personal appearance,
11
+ body size, race, ethnicity, age, religion, or nationality.
12
+
13
+ Examples of unacceptable behavior by participants include:
14
+
15
+ * The use of sexualized language or imagery
16
+ * Personal attacks
17
+ * Trolling or insulting/derogatory comments
18
+ * Public or private harassment
19
+ * Publishing other's private information, such as physical or electronic
20
+ addresses, without explicit permission
21
+ * Other unethical or unprofessional conduct
22
+
23
+ Project maintainers have the right and responsibility to remove, edit, or
24
+ reject comments, commits, code, wiki edits, issues, and other contributions
25
+ that are not aligned to this Code of Conduct, or to ban temporarily or
26
+ permanently any contributor for other behaviors that they deem inappropriate,
27
+ threatening, offensive, or harmful.
28
+
29
+ By adopting this Code of Conduct, project maintainers commit themselves to
30
+ fairly and consistently applying these principles to every aspect of managing
31
+ this project. Project maintainers who do not follow or enforce the Code of
32
+ Conduct may be permanently removed from the project team.
33
+
34
+ This code of conduct applies both within project spaces and in public spaces
35
+ when an individual is representing the project or its community.
36
+
37
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
38
+ reported by contacting a project maintainer at kimle.michal@gmail.com. All
39
+ complaints will be reviewed and investigated and will result in a response that
40
+ is deemed necessary and appropriate to the circumstances. Maintainers are
41
+ obligated to maintain confidentiality with regard to the reporter of an
42
+ incident.
43
+
44
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage],
45
+ version 1.3.0, available at
46
+ [http://contributor-covenant.org/version/1/3/0/][version]
47
+
48
+ [homepage]: http://contributor-covenant.org
49
+ [version]: http://contributor-covenant.org/version/1/3/0/
@@ -0,0 +1,17 @@
1
+ The work represented by this source file was partially or entirely
2
+ funded by the EGI-Engage project co-funded by the European Union (EU)
3
+ Horizon 2020 program under Grant number 654142.
4
+
5
+ Copyright (c) 2017 CESNET
6
+
7
+ Licensed under the Apache License, Version 2.0 (the "License");
8
+ you may not use this file except in compliance with the License.
9
+ You may obtain a copy of the License at
10
+
11
+ http://www.apache.org/licenses/LICENSE-2.0
12
+
13
+ Unless required by applicable law or agreed to in writing, software
14
+ distributed under the License is distributed on an "AS IS" BASIS,
15
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ See the License for the specific language governing permissions and
17
+ limitations under the License.
@@ -0,0 +1,3 @@
1
+ ## cloudkeeper proto file
2
+
3
+ This repository contains gRPC communication specification for [cloudkeeper](https://github.com/the-cloudkeeper-project/cloudkeeper) project.
@@ -0,0 +1,59 @@
1
+ syntax = "proto3";
2
+
3
+ import public "google/protobuf/empty.proto";
4
+
5
+ package cloudkeeper_grpc;
6
+
7
+ message Appliance {
8
+ string identifier = 1;
9
+ string title = 2;
10
+ string description = 3;
11
+ string mpuri = 4;
12
+ string group = 5;
13
+ int64 ram = 6;
14
+ int32 core = 7;
15
+ string version = 8;
16
+ string architecture = 9;
17
+ string operating_system = 10;
18
+ string vo = 11;
19
+ int64 expiration_date = 12;
20
+ string image_list_identifier = 13;
21
+ Image image = 14;
22
+ map<string, string> attributes = 15;
23
+ }
24
+
25
+ message Image {
26
+ enum Mode {
27
+ LOCAL = 0;
28
+ REMOTE = 1;
29
+ }
30
+ Mode mode = 1;
31
+ string location = 2;
32
+ enum Format {
33
+ RAW = 0;
34
+ OVA = 1;
35
+ QCOW2 = 2;
36
+ VMDK = 3;
37
+ }
38
+ Format format = 3;
39
+ string uri = 4;
40
+ string checksum = 5;
41
+ int64 size = 6;
42
+ string username = 7;
43
+ string password = 8;
44
+ }
45
+
46
+ message ImageListIdentifier {
47
+ string image_list_identifier = 1;
48
+ }
49
+
50
+ service Communicator {
51
+ rpc PreAction(google.protobuf.Empty) returns (google.protobuf.Empty) {}
52
+ rpc PostAction(google.protobuf.Empty) returns (google.protobuf.Empty) {}
53
+ rpc AddAppliance(Appliance) returns (google.protobuf.Empty) {}
54
+ rpc UpdateAppliance(Appliance) returns (google.protobuf.Empty) {}
55
+ rpc RemoveAppliance(Appliance) returns (google.protobuf.Empty) {}
56
+ rpc RemoveImageList(ImageListIdentifier) returns (google.protobuf.Empty) {}
57
+ rpc ImageLists(google.protobuf.Empty) returns (stream ImageListIdentifier) {}
58
+ rpc Appliances(ImageListIdentifier) returns (stream Appliance) {}
59
+ }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cloudkeeper-one
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michal Kimle
@@ -359,6 +359,21 @@ files:
359
359
  - lib/cloudkeeper/one/settings.rb
360
360
  - lib/cloudkeeper/one/version.rb
361
361
  - lib/cloudkeeper_grpc.rb
362
+ - lib/cloudkeeper_grpc/.gitmodules
363
+ - lib/cloudkeeper_grpc/CODE_OF_CONDUCT.md
364
+ - lib/cloudkeeper_grpc/LICENSE.txt
365
+ - lib/cloudkeeper_grpc/README.md
366
+ - lib/cloudkeeper_grpc/cloudkeeper_pb.rb
367
+ - lib/cloudkeeper_grpc/cloudkeeper_services_pb.rb
368
+ - lib/cloudkeeper_grpc/constants.rb
369
+ - lib/cloudkeeper_grpc/metadata/CODE_OF_CONDUCT.md
370
+ - lib/cloudkeeper_grpc/metadata/LICENSE.txt
371
+ - lib/cloudkeeper_grpc/metadata/README.md
372
+ - lib/cloudkeeper_grpc/metadata/metadata.yml
373
+ - lib/cloudkeeper_grpc/protos/CODE_OF_CONDUCT.md
374
+ - lib/cloudkeeper_grpc/protos/LICENSE.txt
375
+ - lib/cloudkeeper_grpc/protos/README.md
376
+ - lib/cloudkeeper_grpc/protos/cloudkeeper.proto
362
377
  homepage: https://github.com/the-cloudkeeper-project/cloudkeeper-one
363
378
  licenses:
364
379
  - Apache License, Version 2.0