cuber 1.1.0 → 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE +202 -0
- data/README.md +79 -2
- data/cuber.gemspec +1 -2
- data/lib/cuber/cli.rb +0 -2
- data/lib/cuber/commands/deploy.rb +5 -2
- data/lib/cuber/commands/run.rb +1 -1
- data/lib/cuber/cuberfile_parser.rb +2 -2
- data/lib/cuber/cuberfile_validator.rb +1 -25
- data/lib/cuber/version.rb +1 -1
- metadata +11 -25
- data/LICENSE.md +0 -56
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0add7f37510059cb9a362057cdd2ea0ebb65129d3c1c815752115d5a8ebb02c9
|
4
|
+
data.tar.gz: 6b1ac7715d12bc056a6cafc0bee58aa4562a7799961e41c9fdcb06b6e8c429bb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a90bcaaf29ef7712335afcb9cc85f1dc4f46def0d8bd8e8d271faeb62b76bf12de2fee9b03a74c057f128617fad3c55d3009ef3a4bebd78732fc290e9305e882
|
7
|
+
data.tar.gz: af8612ca5c3728b37b999148daa69986ea29b683968aa724e480ce11fd3181dd8847c107a58275984a7f697bf8314d7a1bfc4b7ccd558d39c5b4ef33991dbbe6
|
data/LICENSE
ADDED
@@ -0,0 +1,202 @@
|
|
1
|
+
|
2
|
+
Apache License
|
3
|
+
Version 2.0, January 2004
|
4
|
+
http://www.apache.org/licenses/
|
5
|
+
|
6
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
7
|
+
|
8
|
+
1. Definitions.
|
9
|
+
|
10
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
11
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
12
|
+
|
13
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
14
|
+
the copyright owner that is granting the License.
|
15
|
+
|
16
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
17
|
+
other entities that control, are controlled by, or are under common
|
18
|
+
control with that entity. For the purposes of this definition,
|
19
|
+
"control" means (i) the power, direct or indirect, to cause the
|
20
|
+
direction or management of such entity, whether by contract or
|
21
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
22
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
23
|
+
|
24
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
25
|
+
exercising permissions granted by this License.
|
26
|
+
|
27
|
+
"Source" form shall mean the preferred form for making modifications,
|
28
|
+
including but not limited to software source code, documentation
|
29
|
+
source, and configuration files.
|
30
|
+
|
31
|
+
"Object" form shall mean any form resulting from mechanical
|
32
|
+
transformation or translation of a Source form, including but
|
33
|
+
not limited to compiled object code, generated documentation,
|
34
|
+
and conversions to other media types.
|
35
|
+
|
36
|
+
"Work" shall mean the work of authorship, whether in Source or
|
37
|
+
Object form, made available under the License, as indicated by a
|
38
|
+
copyright notice that is included in or attached to the work
|
39
|
+
(an example is provided in the Appendix below).
|
40
|
+
|
41
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
42
|
+
form, that is based on (or derived from) the Work and for which the
|
43
|
+
editorial revisions, annotations, elaborations, or other modifications
|
44
|
+
represent, as a whole, an original work of authorship. For the purposes
|
45
|
+
of this License, Derivative Works shall not include works that remain
|
46
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
47
|
+
the Work and Derivative Works thereof.
|
48
|
+
|
49
|
+
"Contribution" shall mean any work of authorship, including
|
50
|
+
the original version of the Work and any modifications or additions
|
51
|
+
to that Work or Derivative Works thereof, that is intentionally
|
52
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
53
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
54
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
55
|
+
means any form of electronic, verbal, or written communication sent
|
56
|
+
to the Licensor or its representatives, including but not limited to
|
57
|
+
communication on electronic mailing lists, source code control systems,
|
58
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
59
|
+
Licensor for the purpose of discussing and improving the Work, but
|
60
|
+
excluding communication that is conspicuously marked or otherwise
|
61
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
62
|
+
|
63
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
64
|
+
on behalf of whom a Contribution has been received by Licensor and
|
65
|
+
subsequently incorporated within the Work.
|
66
|
+
|
67
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
68
|
+
this License, each Contributor hereby grants to You a perpetual,
|
69
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
70
|
+
copyright license to reproduce, prepare Derivative Works of,
|
71
|
+
publicly display, publicly perform, sublicense, and distribute the
|
72
|
+
Work and such Derivative Works in Source or Object form.
|
73
|
+
|
74
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
75
|
+
this License, each Contributor hereby grants to You a perpetual,
|
76
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
77
|
+
(except as stated in this section) patent license to make, have made,
|
78
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
79
|
+
where such license applies only to those patent claims licensable
|
80
|
+
by such Contributor that are necessarily infringed by their
|
81
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
82
|
+
with the Work to which such Contribution(s) was submitted. If You
|
83
|
+
institute patent litigation against any entity (including a
|
84
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
85
|
+
or a Contribution incorporated within the Work constitutes direct
|
86
|
+
or contributory patent infringement, then any patent licenses
|
87
|
+
granted to You under this License for that Work shall terminate
|
88
|
+
as of the date such litigation is filed.
|
89
|
+
|
90
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
91
|
+
Work or Derivative Works thereof in any medium, with or without
|
92
|
+
modifications, and in Source or Object form, provided that You
|
93
|
+
meet the following conditions:
|
94
|
+
|
95
|
+
(a) You must give any other recipients of the Work or
|
96
|
+
Derivative Works a copy of this License; and
|
97
|
+
|
98
|
+
(b) You must cause any modified files to carry prominent notices
|
99
|
+
stating that You changed the files; and
|
100
|
+
|
101
|
+
(c) You must retain, in the Source form of any Derivative Works
|
102
|
+
that You distribute, all copyright, patent, trademark, and
|
103
|
+
attribution notices from the Source form of the Work,
|
104
|
+
excluding those notices that do not pertain to any part of
|
105
|
+
the Derivative Works; and
|
106
|
+
|
107
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
108
|
+
distribution, then any Derivative Works that You distribute must
|
109
|
+
include a readable copy of the attribution notices contained
|
110
|
+
within such NOTICE file, excluding those notices that do not
|
111
|
+
pertain to any part of the Derivative Works, in at least one
|
112
|
+
of the following places: within a NOTICE text file distributed
|
113
|
+
as part of the Derivative Works; within the Source form or
|
114
|
+
documentation, if provided along with the Derivative Works; or,
|
115
|
+
within a display generated by the Derivative Works, if and
|
116
|
+
wherever such third-party notices normally appear. The contents
|
117
|
+
of the NOTICE file are for informational purposes only and
|
118
|
+
do not modify the License. You may add Your own attribution
|
119
|
+
notices within Derivative Works that You distribute, alongside
|
120
|
+
or as an addendum to the NOTICE text from the Work, provided
|
121
|
+
that such additional attribution notices cannot be construed
|
122
|
+
as modifying the License.
|
123
|
+
|
124
|
+
You may add Your own copyright statement to Your modifications and
|
125
|
+
may provide additional or different license terms and conditions
|
126
|
+
for use, reproduction, or distribution of Your modifications, or
|
127
|
+
for any such Derivative Works as a whole, provided Your use,
|
128
|
+
reproduction, and distribution of the Work otherwise complies with
|
129
|
+
the conditions stated in this License.
|
130
|
+
|
131
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
132
|
+
any Contribution intentionally submitted for inclusion in the Work
|
133
|
+
by You to the Licensor shall be under the terms and conditions of
|
134
|
+
this License, without any additional terms or conditions.
|
135
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
136
|
+
the terms of any separate license agreement you may have executed
|
137
|
+
with Licensor regarding such Contributions.
|
138
|
+
|
139
|
+
6. Trademarks. This License does not grant permission to use the trade
|
140
|
+
names, trademarks, service marks, or product names of the Licensor,
|
141
|
+
except as required for reasonable and customary use in describing the
|
142
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
143
|
+
|
144
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
145
|
+
agreed to in writing, Licensor provides the Work (and each
|
146
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
147
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
148
|
+
implied, including, without limitation, any warranties or conditions
|
149
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
150
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
151
|
+
appropriateness of using or redistributing the Work and assume any
|
152
|
+
risks associated with Your exercise of permissions under this License.
|
153
|
+
|
154
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
155
|
+
whether in tort (including negligence), contract, or otherwise,
|
156
|
+
unless required by applicable law (such as deliberate and grossly
|
157
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
158
|
+
liable to You for damages, including any direct, indirect, special,
|
159
|
+
incidental, or consequential damages of any character arising as a
|
160
|
+
result of this License or out of the use or inability to use the
|
161
|
+
Work (including but not limited to damages for loss of goodwill,
|
162
|
+
work stoppage, computer failure or malfunction, or any and all
|
163
|
+
other commercial damages or losses), even if such Contributor
|
164
|
+
has been advised of the possibility of such damages.
|
165
|
+
|
166
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
167
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
168
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
169
|
+
or other liability obligations and/or rights consistent with this
|
170
|
+
License. However, in accepting such obligations, You may act only
|
171
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
172
|
+
of any other Contributor, and only if You agree to indemnify,
|
173
|
+
defend, and hold each Contributor harmless for any liability
|
174
|
+
incurred by, or claims asserted against, such Contributor by reason
|
175
|
+
of your accepting any such warranty or additional liability.
|
176
|
+
|
177
|
+
END OF TERMS AND CONDITIONS
|
178
|
+
|
179
|
+
APPENDIX: How to apply the Apache License to your work.
|
180
|
+
|
181
|
+
To apply the Apache License to your work, attach the following
|
182
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
183
|
+
replaced with your own identifying information. (Don't include
|
184
|
+
the brackets!) The text should be enclosed in the appropriate
|
185
|
+
comment syntax for the file format. We also recommend that a
|
186
|
+
file or class name and description of purpose be included on the
|
187
|
+
same "printed page" as the copyright notice for easier
|
188
|
+
identification within third-party archives.
|
189
|
+
|
190
|
+
Copyright 2022 Cuber (AbstractBrain srls)
|
191
|
+
|
192
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
193
|
+
you may not use this file except in compliance with the License.
|
194
|
+
You may obtain a copy of the License at
|
195
|
+
|
196
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
197
|
+
|
198
|
+
Unless required by applicable law or agreed to in writing, software
|
199
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
200
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
201
|
+
See the License for the specific language governing permissions and
|
202
|
+
limitations under the License.
|
data/README.md
CHANGED
@@ -1,5 +1,82 @@
|
|
1
|
-
|
1
|
+
<a href="https://cuber.cloud"><img src="https://cuber.cloud/assets/images/logo.svg" alt="Cuber" height="80" width="80"></a>
|
2
|
+
|
3
|
+
# CUBER
|
4
|
+
|
5
|
+
[![Gem Version](https://badge.fury.io/rb/cuber.svg)](https://badge.fury.io/rb/cuber)
|
2
6
|
|
3
7
|
Deploy your apps on Kubernetes easily.
|
4
8
|
|
5
|
-
|
9
|
+
## What is Cuber?
|
10
|
+
|
11
|
+
Cuber is an automation tool (written in Ruby) that can package and deploy your apps (written in any language and framework) on Kubernetes.
|
12
|
+
|
13
|
+
Unlike other tools that add more options and more complexity to Kubernetes, Cuber is made to simplify and reduce the complexity, thus making the deployment process more standardized and reliable.
|
14
|
+
|
15
|
+
You just need to create a `Cuberfile`, with ~10 lines of code, and then type `cuber deploy` to package and deploy your app on any Kubernetes cluster.
|
16
|
+
|
17
|
+
Kubernetes is up to 80% cheaper compared to PaaS like Heroku and you can choose between different cloud providers (no lock-in).
|
18
|
+
It is also reliable and it can scale applications of any size.
|
19
|
+
The only downside is that it's complex and requires many steps and configurations, even if most applications share the same needs...
|
20
|
+
Cuber makes Kubernetes simple and more concise.
|
21
|
+
In this way you have the simplicity of a PaaS, at the cost of bare infrastructure.
|
22
|
+
|
23
|
+
[Read more](https://cuber.cloud/docs/overview)
|
24
|
+
|
25
|
+
## Installation
|
26
|
+
|
27
|
+
First you need to [install the prerequisites](https://cuber.cloud/docs/installation): `ruby`, `git`, `docker`, `pack`, `kubectl`.
|
28
|
+
|
29
|
+
Then install Cuber:
|
30
|
+
|
31
|
+
```
|
32
|
+
$ gem install cuber
|
33
|
+
```
|
34
|
+
|
35
|
+
## Quickstart
|
36
|
+
|
37
|
+
Open your application folder and create a `Cuberfile`, for example:
|
38
|
+
|
39
|
+
```ruby
|
40
|
+
# Give a name to your app
|
41
|
+
app 'myapp'
|
42
|
+
|
43
|
+
# Get the code from this Git repository
|
44
|
+
repo '.'
|
45
|
+
|
46
|
+
# Build the Docker image automatically (or provide a Dockerfile)
|
47
|
+
buildpacks 'heroku/buildpacks:20'
|
48
|
+
|
49
|
+
# Publish the Docker image in a registry
|
50
|
+
image 'username/myapp'
|
51
|
+
|
52
|
+
# Connect to this Kubernetes cluster
|
53
|
+
kubeconfig 'path/to/kubeconfig.yml'
|
54
|
+
|
55
|
+
# Run and scale any command on Kubernetes
|
56
|
+
proc :web, 'your web server command'
|
57
|
+
```
|
58
|
+
|
59
|
+
You can also see [a more complete example](https://cuber.cloud/docs/quickstart).
|
60
|
+
|
61
|
+
Then in your terminal:
|
62
|
+
|
63
|
+
```
|
64
|
+
$ cuber deploy
|
65
|
+
```
|
66
|
+
|
67
|
+
Finally you can also monitor the status of your application:
|
68
|
+
|
69
|
+
```
|
70
|
+
$ cuber info
|
71
|
+
```
|
72
|
+
|
73
|
+
Check out the [Cuberfile configuration](https://cuber.cloud/docs/cuberfile) and the [Cuber CLI commands](https://cuber.cloud/docs/cli) for more information.
|
74
|
+
|
75
|
+
## License
|
76
|
+
|
77
|
+
Cuber is released under the [Apache-2.0 license](https://opensource.org/licenses/Apache-2.0).
|
78
|
+
|
79
|
+
## Learn more
|
80
|
+
|
81
|
+
You can find more information and documentation on [cuber.cloud](https://cuber.cloud).
|
82
|
+
|
data/cuber.gemspec
CHANGED
@@ -6,8 +6,7 @@ Gem::Specification.new do |s|
|
|
6
6
|
s.summary = 'Deploy your apps on Kubernetes easily.'
|
7
7
|
s.author = 'Cuber'
|
8
8
|
s.homepage = 'https://cuber.cloud'
|
9
|
-
s.license = '
|
9
|
+
s.license = 'Apache-2.0'
|
10
10
|
s.executables = ['cuber']
|
11
11
|
s.files = `git ls-files`.split("\n")
|
12
|
-
s.add_dependency 'jwt'
|
13
12
|
end
|
data/lib/cuber/cli.rb
CHANGED
@@ -36,7 +36,10 @@ module Cuber::Commands
|
|
36
36
|
path = '.cuber/repo'
|
37
37
|
FileUtils.mkdir_p path
|
38
38
|
FileUtils.rm_rf path, secure: true
|
39
|
-
|
39
|
+
cmd = ['git', 'clone']
|
40
|
+
cmd += ['--branch', @options[:repo][:branch]] if @options[:repo][:branch]
|
41
|
+
cmd += ['--depth', '1', @options[:repo][:url], path]
|
42
|
+
system(*cmd) || abort('Cuber: git clone failed')
|
40
43
|
end
|
41
44
|
|
42
45
|
def commit_hash
|
@@ -63,7 +66,7 @@ module Cuber::Commands
|
|
63
66
|
tag = "#{@options[:image]}:#{@options[:release]}"
|
64
67
|
cmd = ['docker', 'build']
|
65
68
|
cmd += ['--pull', '--no-cache'] if @options[:cache] == false
|
66
|
-
cmd += ['--progress', 'plain', '-f', dockerfile, '-t', tag, '.']
|
69
|
+
cmd += ['--platform', 'linux/amd64', '--progress', 'plain', '-f', dockerfile, '-t', tag, '.']
|
67
70
|
system(*cmd, chdir: '.cuber/repo') || abort('Cuber: docker build failed')
|
68
71
|
end
|
69
72
|
|
data/lib/cuber/commands/run.rb
CHANGED
@@ -35,7 +35,7 @@ module Cuber::Commands
|
|
35
35
|
@options[:pod] = "pod-#{command.downcase.gsub(/[^a-z0-9]+/, '-')}-#{Time.now.utc.iso8601.delete('^0-9')}"
|
36
36
|
path = ".cuber/kubernetes/#{@options[:pod]}.yml"
|
37
37
|
full_command = command.shellsplit
|
38
|
-
full_command.unshift 'launcher'
|
38
|
+
full_command.unshift 'launcher' unless @options[:buildpacks].to_s.strip.empty?
|
39
39
|
render 'pod.yml', path
|
40
40
|
kubectl 'apply', '-f', path
|
41
41
|
kubectl 'wait', '--for', 'condition=ready', "pod/#{@options[:pod]}"
|
@@ -23,8 +23,6 @@ module Cuber
|
|
23
23
|
validate_lb
|
24
24
|
validate_ingress
|
25
25
|
validate_ssl
|
26
|
-
validate_key
|
27
|
-
validate_limits
|
28
26
|
@errors
|
29
27
|
end
|
30
28
|
|
@@ -41,7 +39,7 @@ module Cuber
|
|
41
39
|
end
|
42
40
|
|
43
41
|
def validate_repo
|
44
|
-
@errors << 'repo must be present' if @options[:repo].to_s.strip.empty?
|
42
|
+
@errors << 'repo must be present' if @options[:repo].nil? || @options[:repo][:url].to_s.strip.empty?
|
45
43
|
end
|
46
44
|
|
47
45
|
def validate_buildpacks
|
@@ -119,28 +117,6 @@ module Cuber
|
|
119
117
|
@errors << 'ssl crt must be a file' unless File.exists? @options[:ssl][:crt]
|
120
118
|
@errors << 'ssl key must be a file' unless File.exists? @options[:ssl][:key]
|
121
119
|
end
|
122
|
-
|
123
|
-
def validate_key
|
124
|
-
return unless File.exists? File.expand_path '~/.cuber.key'
|
125
|
-
token = File.read File.expand_path '~/.cuber.key'
|
126
|
-
ecdsa_public = OpenSSL::PKey.read <<~PEM
|
127
|
-
-----BEGIN PUBLIC KEY-----
|
128
|
-
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAERAh4uT9yojc06y5wgU6CY6sr0Hrv
|
129
|
-
P8AUw6uw2PgUdbm7DKkJwFvQYMj3g+TmrxmPV3KQ8uzegfYRbHr6DyonNQ==
|
130
|
-
-----END PUBLIC KEY-----
|
131
|
-
PEM
|
132
|
-
JWT.decode token, ecdsa_public, true, { iss: 'Cuber', verify_iss: true, algorithm: 'ES256' }
|
133
|
-
rescue JWT::DecodeError
|
134
|
-
@errors << 'your license key is invalid or expired'
|
135
|
-
end
|
136
|
-
|
137
|
-
def validate_limits
|
138
|
-
return if File.exists? File.expand_path '~/.cuber.key'
|
139
|
-
scale = @options[:procs].collect { |procname, proc| proc[:scale].to_i }.sum
|
140
|
-
@errors << 'please purchase a license key or reduce the number of procs' if scale > 5
|
141
|
-
end
|
142
120
|
|
143
121
|
end
|
144
122
|
end
|
145
|
-
|
146
|
-
Cuber::CuberfileValidator.freeze
|
data/lib/cuber/version.rb
CHANGED
metadata
CHANGED
@@ -1,37 +1,23 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cuber
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cuber
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
12
|
-
dependencies:
|
13
|
-
|
14
|
-
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - ">="
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '0'
|
20
|
-
type: :runtime
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - ">="
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '0'
|
27
|
-
description:
|
28
|
-
email:
|
11
|
+
date: 2022-08-31 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description:
|
14
|
+
email:
|
29
15
|
executables:
|
30
16
|
- cuber
|
31
17
|
extensions: []
|
32
18
|
extra_rdoc_files: []
|
33
19
|
files:
|
34
|
-
- LICENSE
|
20
|
+
- LICENSE
|
35
21
|
- README.md
|
36
22
|
- bin/cuber
|
37
23
|
- cuber.gemspec
|
@@ -51,9 +37,9 @@ files:
|
|
51
37
|
- lib/cuber/version.rb
|
52
38
|
homepage: https://cuber.cloud
|
53
39
|
licenses:
|
54
|
-
-
|
40
|
+
- Apache-2.0
|
55
41
|
metadata: {}
|
56
|
-
post_install_message:
|
42
|
+
post_install_message:
|
57
43
|
rdoc_options: []
|
58
44
|
require_paths:
|
59
45
|
- lib
|
@@ -68,8 +54,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
68
54
|
- !ruby/object:Gem::Version
|
69
55
|
version: '0'
|
70
56
|
requirements: []
|
71
|
-
rubygems_version: 3.
|
72
|
-
signing_key:
|
57
|
+
rubygems_version: 3.0.3.1
|
58
|
+
signing_key:
|
73
59
|
specification_version: 4
|
74
60
|
summary: Deploy your apps on Kubernetes easily.
|
75
61
|
test_files: []
|
data/LICENSE.md
DELETED
@@ -1,56 +0,0 @@
|
|
1
|
-
# Cuber License
|
2
|
-
|
3
|
-
Copyright 2021 Cuber (AbstractBrain srls)
|
4
|
-
|
5
|
-
*This software end-user license agreement (EULA) is a legal agreement between you, the customer who has obtained a copy of the software, as an individual or as an organization, and Cuber (AbstractBrain srls).*
|
6
|
-
|
7
|
-
## License Grant
|
8
|
-
This EULA grants you a non-exclusive, non-transferable, limited license to install and use this software. You can use any number of copies of this software inside your organization.
|
9
|
-
|
10
|
-
## Ownership
|
11
|
-
The ownership and copyright of the software belongs to Cuber and is not transferred in any way by this license.
|
12
|
-
|
13
|
-
## Restricted Uses
|
14
|
-
You are not allowed to distribute, publish, sublicense or sell copies of this software.
|
15
|
-
It is your responsibility to never share your license key.
|
16
|
-
You are also not allowed to use the software as part of a product or service that provides similar functionality to the software itself.
|
17
|
-
|
18
|
-
## Modifications
|
19
|
-
You are allowed to inspect and make changes to this software for private use, excluding any modification made to circumvent licenses or copyright. You are also allowed to make temporary forks of the project in order to contribute to it. This EULA also applies to modified versions of the software.
|
20
|
-
|
21
|
-
## Contributions and Copyright Transfer
|
22
|
-
In case you contribute to the project, for example with suggestions or pull requests, you assign all rights, including copyright, from yourself to Cuber. You also confirm that your employer, if you have one, has given you the right to do so.
|
23
|
-
|
24
|
-
## No Warranty
|
25
|
-
This software is provided “as is” without warranty of any kind, either express or implied.
|
26
|
-
|
27
|
-
## Limitation of Liability
|
28
|
-
In no event shall the author of this software be liable for any damages (including, without limitation, damages for loss of business profits, business interruption, loss of data, or any other pecuniary loss), even if the author of this software is aware of the possibility of such damages and known defects.
|
29
|
-
In no event will Cuber liability exceed the software license price as indicated in the invoice.
|
30
|
-
|
31
|
-
## Use of Data
|
32
|
-
Cuber does not collect any kind of data, except for what is strictly necessary for billing purposes.
|
33
|
-
|
34
|
-
## Software Updates
|
35
|
-
You can receive software updates, if any, for the duration of the license that you have purchased.
|
36
|
-
|
37
|
-
## Fees and Payment
|
38
|
-
You can use this software for free, within the limits of the free tier, if present. When you purchase a license key, the software license fees will be due and payable in full at the time of purchase or when you decide to renew the license because it is expiring.
|
39
|
-
|
40
|
-
## Expiration of License Key
|
41
|
-
A license key has a limited duration and must be renewed after that billing period if you want to continue to use the software with all its functionalities.
|
42
|
-
|
43
|
-
## Termination
|
44
|
-
If the license expires or it is terminated due to violation of these terms or because one of the parties requests the termination of this contract, you must destroy all the copies of the software, including any modified version.
|
45
|
-
|
46
|
-
## Third Party Software
|
47
|
-
Third party software that is used by this software is subject to the respective license and is not subject to this EULA.
|
48
|
-
|
49
|
-
## Governing Law
|
50
|
-
This agreement is governed by the Italian law and you agree that any dispute arising from or relating to the subject matter of this EULA shall be governed by the exclusive jurisdiction and venue of the Italian courts.
|
51
|
-
|
52
|
-
## Amendment
|
53
|
-
Cuber reserves the right, in its sole discretion, to amend this EULA. You can find an updated version of this EULA by visiting <https://github.com/cuber-cloud/cuber-gem/blob/master/LICENSE.md>
|
54
|
-
|
55
|
-
## License and Copyright Notice
|
56
|
-
This license and the copyright notice must be retained on any copy of the software.
|