vidar 0.13.1 → 1.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.dependabot/config.yml +18 -0
- data/.github/ISSUE_TEMPLATE/bug_report.md +33 -0
- data/.github/ISSUE_TEMPLATE/config.yml +1 -0
- data/.github/ISSUE_TEMPLATE/story.md +22 -0
- data/.github/PULL_REQUEST_TEMPLATE.md +18 -0
- data/.github/workflows/auto-approve.yml +16 -0
- data/.travis.yml +5 -4
- data/Gemfile.lock +29 -23
- data/README.md +40 -4
- data/Rakefile +1 -1
- data/lib/vidar/cli.rb +5 -3
- data/lib/vidar/config.rb +6 -1
- data/lib/vidar/k8s/container.rb +19 -9
- data/lib/vidar/k8s/pod_set.rb +5 -5
- data/lib/vidar/log.rb +1 -1
- data/lib/vidar/slack_notification.rb +20 -14
- data/lib/vidar/version.rb +1 -1
- data/vidar.gemspec +11 -10
- metadata +27 -19
- data/.rubocop.yml +0 -8
- data/.ruby-version +0 -1
- data/bin/console +0 -8
- data/bin/release +0 -10
- data/bin/setup +0 -8
- data/bin/vidar +0 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 32db9bbd5a1f6d83254a28eeac172e831877a5e9f284f7734bcc8251382ede28
|
4
|
+
data.tar.gz: 235c502c5c93e706bf796fc43964d61ceb2fdab8c8104967bc890f76f21a787f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 74077f1ffeb2d51399b366a675f2f1336dad7ddaecbe63f7405113ce6d87b6e6210bb101076b88a65500662a53eae21b3ee5c2dd990ce287c830231b77c9f0f7
|
7
|
+
data.tar.gz: fe6eac89d2f0d3d129409db00f73cc46b2932a28f49cbc381ec75e02937ba93ec359648e3ed4b86f57dd56151ce1903340674bf70d910ec20ff2192dabf4a9a2
|
@@ -0,0 +1,18 @@
|
|
1
|
+
version: 1
|
2
|
+
|
3
|
+
update_configs:
|
4
|
+
- package_manager: "ruby:bundler"
|
5
|
+
directory: "/"
|
6
|
+
update_schedule: "monthly"
|
7
|
+
commit_message:
|
8
|
+
prefix: "[dependabot]"
|
9
|
+
allowed_updates:
|
10
|
+
- match:
|
11
|
+
update_type: "all"
|
12
|
+
automerged_updates:
|
13
|
+
- match:
|
14
|
+
dependency_type: "development"
|
15
|
+
update_type: "all"
|
16
|
+
- match:
|
17
|
+
dependency_type: "production"
|
18
|
+
update_type: "all"
|
@@ -0,0 +1,33 @@
|
|
1
|
+
---
|
2
|
+
name: Bug report
|
3
|
+
about: Create a report to track an issue that has been identified
|
4
|
+
title: ''
|
5
|
+
labels: ''
|
6
|
+
assignees: ''
|
7
|
+
|
8
|
+
---
|
9
|
+
|
10
|
+
**Describe the bug**
|
11
|
+
A clear and concise description of what the bug is.
|
12
|
+
|
13
|
+
**To Reproduce**
|
14
|
+
Steps to reproduce the behavior:
|
15
|
+
1. Go to '...'
|
16
|
+
2. Click on '....'
|
17
|
+
3. Scroll down to '....'
|
18
|
+
4. See error
|
19
|
+
|
20
|
+
**Expected behavior**
|
21
|
+
A clear and concise description of what you expected to happen.
|
22
|
+
|
23
|
+
**Mutation/Query**
|
24
|
+
|
25
|
+
**URL and HTTP method (for non-GQL):**
|
26
|
+
|
27
|
+
**Sentry or Logs URL:**
|
28
|
+
|
29
|
+
**User/authentication details**
|
30
|
+
Impacted user name or service account
|
31
|
+
|
32
|
+
**Additional context**
|
33
|
+
Add any other context about the problem here.
|
@@ -0,0 +1 @@
|
|
1
|
+
blank_issues_enabled: false
|
@@ -0,0 +1,22 @@
|
|
1
|
+
---
|
2
|
+
name: New story
|
3
|
+
about: Add a new story for implementation
|
4
|
+
title: ''
|
5
|
+
labels: ''
|
6
|
+
assignees: ''
|
7
|
+
|
8
|
+
---
|
9
|
+
|
10
|
+
**Describe the solution**
|
11
|
+
A clear and concise description of what you want to happen.
|
12
|
+
When will this feature be done?
|
13
|
+
|
14
|
+
**Describe the users**
|
15
|
+
Who are we building this feature for?
|
16
|
+
|
17
|
+
**Additional context**
|
18
|
+
Add any other context or screenshots about the feature request here.
|
19
|
+
Link to any applicable documents describing the feature.
|
20
|
+
|
21
|
+
**Designs**
|
22
|
+
Link to any applicable designs on Invision.
|
@@ -0,0 +1,18 @@
|
|
1
|
+
## Description
|
2
|
+
<!--- Describe your changes in detail -->
|
3
|
+
|
4
|
+
## Related issue(s)
|
5
|
+
<!--- GH issue number -->
|
6
|
+
|
7
|
+
## Motivation and Context
|
8
|
+
<!--- Why is this change required? What problem does it solve? -->
|
9
|
+
<!--- If it fixes an open issue, please link to the issue here. -->
|
10
|
+
|
11
|
+
## How Has This Been Tested?
|
12
|
+
<!--- Please describe in detail how you tested your changes. -->
|
13
|
+
|
14
|
+
## Screenshots (if appropriate):
|
15
|
+
<!--- Please add any screenshots of the feature. -->
|
16
|
+
|
17
|
+
## Related PRs
|
18
|
+
<!--- Please add links to any related PRs (backend, component packages, etc). -->
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# automatically approve PRs submitted by Dependabot
|
2
|
+
# this will allow Dependabot to automatically merge dependency update PRs where CI passes
|
3
|
+
# from: https://github.com/hmarr/auto-approve-action
|
4
|
+
name: Auto approve Dependabot PRs
|
5
|
+
|
6
|
+
on:
|
7
|
+
pull_request
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
auto-approve:
|
11
|
+
runs-on: ubuntu-latest
|
12
|
+
steps:
|
13
|
+
- uses: hmarr/auto-approve-action@v2.0.0
|
14
|
+
if: github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]'
|
15
|
+
with:
|
16
|
+
github-token: "${{ secrets.GITHUB_TOKEN }}"
|
data/.travis.yml
CHANGED
@@ -3,8 +3,9 @@ sudo: false
|
|
3
3
|
language: ruby
|
4
4
|
cache: bundler
|
5
5
|
rvm:
|
6
|
-
- 2.6
|
7
|
-
|
6
|
+
- 2.6
|
7
|
+
- 2.7
|
8
|
+
before_install: gem install bundler
|
8
9
|
script:
|
9
|
-
- bundle exec
|
10
|
-
- bundle exec rubocop
|
10
|
+
- bundle exec rake spec
|
11
|
+
- bundle exec rake rubocop
|
data/Gemfile.lock
CHANGED
@@ -1,57 +1,62 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
vidar (
|
4
|
+
vidar (1.1.3)
|
5
5
|
colorize
|
6
6
|
faraday
|
7
|
-
thor (
|
7
|
+
thor (~> 1.0)
|
8
8
|
|
9
9
|
GEM
|
10
10
|
remote: https://rubygems.org/
|
11
11
|
specs:
|
12
12
|
ast (2.4.0)
|
13
13
|
awesome_print (1.8.0)
|
14
|
-
coderay (1.1.
|
14
|
+
coderay (1.1.3)
|
15
15
|
colorize (0.8.1)
|
16
16
|
diff-lcs (1.3)
|
17
|
-
faraday (0.
|
17
|
+
faraday (1.0.1)
|
18
18
|
multipart-post (>= 1.2, < 3)
|
19
|
-
|
20
|
-
method_source (0.9.2)
|
19
|
+
method_source (1.0.0)
|
21
20
|
multipart-post (2.1.1)
|
22
21
|
parallel (1.19.1)
|
23
|
-
parser (2.
|
22
|
+
parser (2.7.1.3)
|
24
23
|
ast (~> 2.4.0)
|
25
|
-
pry (0.
|
26
|
-
coderay (~> 1.1
|
27
|
-
method_source (~>
|
24
|
+
pry (0.13.1)
|
25
|
+
coderay (~> 1.1)
|
26
|
+
method_source (~> 1.0)
|
28
27
|
rainbow (3.0.0)
|
29
28
|
rake (13.0.1)
|
29
|
+
rexml (3.2.4)
|
30
30
|
rspec (3.9.0)
|
31
31
|
rspec-core (~> 3.9.0)
|
32
32
|
rspec-expectations (~> 3.9.0)
|
33
33
|
rspec-mocks (~> 3.9.0)
|
34
|
-
rspec-core (3.9.
|
35
|
-
rspec-support (~> 3.9.
|
36
|
-
rspec-expectations (3.9.
|
34
|
+
rspec-core (3.9.2)
|
35
|
+
rspec-support (~> 3.9.3)
|
36
|
+
rspec-expectations (3.9.2)
|
37
37
|
diff-lcs (>= 1.2.0, < 2.0)
|
38
38
|
rspec-support (~> 3.9.0)
|
39
|
-
rspec-mocks (3.9.
|
39
|
+
rspec-mocks (3.9.1)
|
40
40
|
diff-lcs (>= 1.2.0, < 2.0)
|
41
41
|
rspec-support (~> 3.9.0)
|
42
|
-
rspec-support (3.9.
|
43
|
-
rubocop (0.
|
44
|
-
jaro_winkler (~> 1.5.1)
|
42
|
+
rspec-support (3.9.3)
|
43
|
+
rubocop (0.84.0)
|
45
44
|
parallel (~> 1.10)
|
46
|
-
parser (>= 2.
|
45
|
+
parser (>= 2.7.0.1)
|
47
46
|
rainbow (>= 2.2.2, < 4.0)
|
47
|
+
rexml
|
48
|
+
rubocop-ast (>= 0.0.3)
|
48
49
|
ruby-progressbar (~> 1.7)
|
49
|
-
unicode-display_width (>= 1.4.0, <
|
50
|
-
rubocop-
|
50
|
+
unicode-display_width (>= 1.4.0, < 2.0)
|
51
|
+
rubocop-ast (0.0.3)
|
52
|
+
parser (>= 2.7.0.1)
|
53
|
+
rubocop-performance (1.6.0)
|
51
54
|
rubocop (>= 0.71.0)
|
55
|
+
rubocop-rspec (1.39.0)
|
56
|
+
rubocop (>= 0.68.1)
|
52
57
|
ruby-progressbar (1.10.1)
|
53
|
-
thor (1.0.
|
54
|
-
unicode-display_width (1.
|
58
|
+
thor (1.0.1)
|
59
|
+
unicode-display_width (1.7.0)
|
55
60
|
|
56
61
|
PLATFORMS
|
57
62
|
ruby
|
@@ -64,7 +69,8 @@ DEPENDENCIES
|
|
64
69
|
rspec
|
65
70
|
rubocop
|
66
71
|
rubocop-performance
|
72
|
+
rubocop-rspec
|
67
73
|
vidar!
|
68
74
|
|
69
75
|
BUNDLED WITH
|
70
|
-
2.
|
76
|
+
2.1.4
|
data/README.md
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
[](https://rubygems.org/gems/vidar)
|
2
2
|
[](https://travis-ci.org/RenoFi/vidar)
|
3
3
|
|
4
|
-
#
|
4
|
+
# vidar
|
5
5
|
|
6
|
-
|
6
|
+
`vidar` is a set of docker & k8s deployment tools based on thor gem
|
7
7
|
|
8
8
|
## Installation
|
9
9
|
|
@@ -25,12 +25,48 @@ Or install it yourself as:
|
|
25
25
|
#### Requirements :
|
26
26
|
|
27
27
|
* multistage `Dockerfile`, with at least 2 stages defined: `base`, `release`.
|
28
|
-
* `docker-compose.ci.yml` file with defined services for all mentioned stages
|
28
|
+
* `docker-compose.ci.yml` file with defined services for all mentioned stages, e.g.
|
29
|
+
|
30
|
+
```yml
|
31
|
+
version: '3.7'
|
32
|
+
|
33
|
+
services:
|
34
|
+
base:
|
35
|
+
image: gcr.io/[GCP-PROJECT-ID]/[APP-NAME]:base-${CURRENT_BRANCH:?err}
|
36
|
+
build:
|
37
|
+
dockerfile: Dockerfile
|
38
|
+
context: .
|
39
|
+
target: base
|
40
|
+
cache_from:
|
41
|
+
- gcr.io/[GCP-PROJECT-ID]/[APP-NAME]:base-master
|
42
|
+
- gcr.io/[GCP-PROJECT-ID]/[APP-NAME]:base
|
43
|
+
- gcr.io/[GCP-PROJECT-ID]/[APP-NAME]:release
|
44
|
+
- gcr.io/[GCP-PROJECT-ID]/[APP-NAME]:$REVISION
|
45
|
+
env_file:
|
46
|
+
- .env
|
47
|
+
environment:
|
48
|
+
- RACK_ENV=test
|
49
|
+
|
50
|
+
release:
|
51
|
+
image: gcr.io/[GCP-PROJECT-ID]/[APP-NAME]:release
|
52
|
+
build:
|
53
|
+
dockerfile: Dockerfile
|
54
|
+
context: .
|
55
|
+
target: release
|
56
|
+
args:
|
57
|
+
- REVISION=${REVISION:?err}
|
58
|
+
cache_from:
|
59
|
+
- gcr.io/[GCP-PROJECT-ID]/[APP-NAME]:base-${CURRENT_BRANCH:?err}
|
60
|
+
- gcr.io/[GCP-PROJECT-ID]/[APP-NAME]:base-master
|
61
|
+
- gcr.io/[GCP-PROJECT-ID]/[APP-NAME]:base
|
62
|
+
- gcr.io/[GCP-PROJECT-ID]/[APP-NAME]:$REVISION
|
63
|
+
```
|
64
|
+
|
29
65
|
* `vidar.yml` file to the project root directory, which following content:
|
30
66
|
|
31
67
|
```yml
|
32
68
|
# docker image name, required
|
33
|
-
image: gcr.io/
|
69
|
+
image: gcr.io/[GCP-PROJECT-ID]/[APP-NAME]
|
34
70
|
# k8s namespace, required
|
35
71
|
namespace: borrower
|
36
72
|
# github name used to build deployment notification content
|
data/Rakefile
CHANGED
data/lib/vidar/cli.rb
CHANGED
@@ -42,10 +42,10 @@ module Vidar
|
|
42
42
|
|
43
43
|
desc "publish", "Publish docker images on docker registry"
|
44
44
|
def publish
|
45
|
-
base_image_tag
|
45
|
+
base_image_tag = "#{Config.get!(:image)}:#{Config.get!(:base_stage_name)}"
|
46
46
|
revision_image_tag = "#{Config.get!(:image)}:#{Config.get!(:revision)}"
|
47
|
-
release_image_tag
|
48
|
-
latest_image_tag
|
47
|
+
release_image_tag = "#{Config.get!(:image)}:#{Config.get!(:release_stage_name)}"
|
48
|
+
latest_image_tag = "#{Config.get!(:image)}:latest"
|
49
49
|
|
50
50
|
Log.info "Publishing #{revision_image_tag}"
|
51
51
|
Run.docker "tag #{release_image_tag} #{revision_image_tag}"
|
@@ -117,6 +117,7 @@ module Vidar
|
|
117
117
|
github: Config.get!(:github),
|
118
118
|
revision: Config.get!(:revision),
|
119
119
|
revision_name: Config.get!(:revision_name),
|
120
|
+
build_url: Config.build_url,
|
120
121
|
deploy_config: Config.deploy_config
|
121
122
|
)
|
122
123
|
|
@@ -194,6 +195,7 @@ module Vidar
|
|
194
195
|
github: Config.get!(:github),
|
195
196
|
revision: Config.get!(:revision),
|
196
197
|
revision_name: Config.get!(:revision_name),
|
198
|
+
build_url: Config.build_url,
|
197
199
|
deploy_config: Config.deploy_config
|
198
200
|
)
|
199
201
|
|
data/lib/vidar/config.rb
CHANGED
@@ -52,10 +52,15 @@ module Vidar
|
|
52
52
|
get(key) || fail(MissingConfigError, key)
|
53
53
|
end
|
54
54
|
|
55
|
+
def build_url
|
56
|
+
value = ENV[get(:build_env).to_s]
|
57
|
+
value&.empty? ? nil : value
|
58
|
+
end
|
59
|
+
|
55
60
|
def deploy_config
|
56
61
|
deployments = get(:deployments)
|
57
62
|
deployments = {} unless deployments.is_a?(Hash)
|
58
|
-
deployment
|
63
|
+
deployment = deployments[get!(:kubectl_context)]
|
59
64
|
|
60
65
|
if deployment.nil?
|
61
66
|
Log.error "ERROR: could not find deployment config for #{get!(:kubectl_context)} context"
|
data/lib/vidar/k8s/container.rb
CHANGED
@@ -3,18 +3,22 @@ module Vidar
|
|
3
3
|
class Container
|
4
4
|
JOB_KIND = "Job".freeze
|
5
5
|
|
6
|
-
attr_reader :data, :state, :namespace,
|
6
|
+
attr_reader :data, :state, :namespace,
|
7
|
+
:kind, :pod_name,
|
8
|
+
:reason, :message
|
7
9
|
|
8
10
|
def initialize(data)
|
9
|
-
@data
|
10
|
-
@state
|
11
|
+
@data = data
|
12
|
+
@state = data["state"] || {}
|
11
13
|
@namespace = data["namespace"]
|
12
|
-
@kind
|
13
|
-
@pod_name
|
14
|
+
@kind = data["kind"]
|
15
|
+
@pod_name = data["pod_name"]
|
16
|
+
@reason = data["reason"]
|
17
|
+
@message = data["message"]
|
14
18
|
end
|
15
19
|
|
16
20
|
def name
|
17
|
-
data["name"]
|
21
|
+
data["name"] || pod_name
|
18
22
|
end
|
19
23
|
|
20
24
|
def deployed?
|
@@ -40,13 +44,15 @@ module Vidar
|
|
40
44
|
def to_text
|
41
45
|
parts = []
|
42
46
|
parts << namespace.to_s.ljust(20, " ")
|
43
|
-
parts << name.to_s.ljust(
|
44
|
-
parts += text_statuses.map { |s| s.ljust(
|
47
|
+
parts << name.to_s.ljust(35, " ")
|
48
|
+
parts += text_statuses.map { |s| s.ljust(45, " ") }
|
45
49
|
"| #{parts.join(' | ')} |"
|
46
50
|
end
|
47
51
|
|
48
52
|
def text_statuses
|
49
|
-
if
|
53
|
+
if unschedulable?
|
54
|
+
[ColorizedString["Unschedulable"].light_red, ColorizedString[message].light_red]
|
55
|
+
elsif running?
|
50
56
|
if job?
|
51
57
|
[ColorizedString["Running"].light_yellow, "Started at: #{running_started_at}"]
|
52
58
|
elsif ready?
|
@@ -97,6 +103,10 @@ module Vidar
|
|
97
103
|
state.dig("terminated", "reason") == "Error" || state.dig("terminated", "exitCode")
|
98
104
|
end
|
99
105
|
|
106
|
+
def unschedulable?
|
107
|
+
reason == "Unschedulable"
|
108
|
+
end
|
109
|
+
|
100
110
|
def job?
|
101
111
|
kind == JOB_KIND
|
102
112
|
end
|
data/lib/vidar/k8s/pod_set.rb
CHANGED
@@ -63,13 +63,13 @@ module Vidar
|
|
63
63
|
def containers_data
|
64
64
|
items.map do |i|
|
65
65
|
owner_references = i.dig("metadata", "ownerReferences") || []
|
66
|
-
kind
|
67
|
-
namespace
|
68
|
-
statuses
|
66
|
+
kind = (owner_references[0] || {})["kind"]
|
67
|
+
namespace = i.dig("metadata", "namespace")
|
68
|
+
statuses = i.dig("status", "containerStatuses") || i.dig("status", "conditions") || []
|
69
69
|
statuses.each do |s|
|
70
70
|
s["namespace"] = namespace
|
71
|
-
s["kind"]
|
72
|
-
s["pod_name"]
|
71
|
+
s["kind"] = kind
|
72
|
+
s["pod_name"] = i.dig("metadata", "name")
|
73
73
|
end
|
74
74
|
statuses
|
75
75
|
end.flatten
|
data/lib/vidar/log.rb
CHANGED
@@ -1,16 +1,18 @@
|
|
1
1
|
module Vidar
|
2
2
|
class SlackNotification
|
3
|
-
def initialize(github:, revision:, revision_name:, deploy_config:)
|
4
|
-
@github
|
5
|
-
@revision
|
6
|
-
@revision_name
|
7
|
-
@
|
8
|
-
@
|
9
|
-
@
|
10
|
-
@
|
11
|
-
@
|
12
|
-
@
|
13
|
-
@
|
3
|
+
def initialize(github:, revision:, revision_name:, deploy_config:, build_url: nil)
|
4
|
+
@github = github
|
5
|
+
@revision = revision
|
6
|
+
@revision_name = revision_name
|
7
|
+
@build_url = build_url
|
8
|
+
@build_hostname = URI(build_url || '').hostname
|
9
|
+
@deploy_name = deploy_config.name
|
10
|
+
@deploy_url = deploy_config.url
|
11
|
+
@default_color = deploy_config.default_color
|
12
|
+
@success_color = deploy_config.success_color
|
13
|
+
@failure_color = deploy_config.failure_color
|
14
|
+
@webhook_url = deploy_config.slack_webhook_url
|
15
|
+
@connection = Faraday.new
|
14
16
|
end
|
15
17
|
|
16
18
|
def configured?
|
@@ -18,12 +20,12 @@ module Vidar
|
|
18
20
|
end
|
19
21
|
|
20
22
|
def failure
|
21
|
-
message = "Failed deploy of #{github_link} to #{deploy_link} :fire: <!channel>"
|
23
|
+
message = "Failed deploy of #{github_link} to #{deploy_link} :fire: <!channel> #{build_link}"
|
22
24
|
perform_with data(message: message, color: failure_color)
|
23
25
|
end
|
24
26
|
|
25
27
|
def success
|
26
|
-
message = "Successful deploy of #{github_link} to #{deploy_link}"
|
28
|
+
message = "Successful deploy of #{github_link} to #{deploy_link}. #{build_link}"
|
27
29
|
perform_with data(message: message, color: success_color)
|
28
30
|
end
|
29
31
|
|
@@ -44,7 +46,7 @@ module Vidar
|
|
44
46
|
attr_reader :github, :revision, :revision_name,
|
45
47
|
:deploy_name, :deploy_url, :webhook_url,
|
46
48
|
:default_color, :success_color, :failure_color,
|
47
|
-
:connection
|
49
|
+
:connection, :build_url, :build_hostname
|
48
50
|
|
49
51
|
def data(message:, color:)
|
50
52
|
{
|
@@ -71,5 +73,9 @@ module Vidar
|
|
71
73
|
def deploy_link
|
72
74
|
"<#{deploy_url}|#{deploy_name}>"
|
73
75
|
end
|
76
|
+
|
77
|
+
def build_link
|
78
|
+
build_url && "<#{build_url}|View the build on #{build_hostname}>"
|
79
|
+
end
|
74
80
|
end
|
75
81
|
end
|
data/lib/vidar/version.rb
CHANGED
data/vidar.gemspec
CHANGED
@@ -3,30 +3,30 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
3
3
|
require 'vidar/version'
|
4
4
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
|
-
spec.name
|
7
|
-
spec.version
|
8
|
-
spec.authors
|
9
|
-
spec.email
|
6
|
+
spec.name = 'vidar'
|
7
|
+
spec.version = Vidar::VERSION
|
8
|
+
spec.authors = ['Krzysztof Knapik', 'RenoFi Engineering Team']
|
9
|
+
spec.email = ['knapo@knapo.net', 'engineering@renofi.com']
|
10
10
|
|
11
|
-
spec.summary
|
11
|
+
spec.summary = 'K8s deployment tools based on thor'
|
12
12
|
spec.homepage = 'https://github.com/RenoFi/vidar'
|
13
|
-
spec.license
|
13
|
+
spec.license = 'MIT'
|
14
14
|
|
15
15
|
spec.metadata['homepage_uri'] = 'https://github.com/RenoFi/vidar'
|
16
16
|
spec.metadata['source_code_uri'] = 'https://github.com/RenoFi/vidar'
|
17
17
|
|
18
18
|
spec.files = Dir.chdir(__dir__) do
|
19
|
-
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(
|
19
|
+
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(bin/|spec/|\.rub)}) }
|
20
20
|
end
|
21
|
-
spec.bindir
|
22
|
-
spec.executables
|
21
|
+
spec.bindir = 'exe'
|
22
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
23
23
|
spec.require_paths = ['lib']
|
24
24
|
|
25
25
|
spec.required_ruby_version = '>= 2.6'
|
26
26
|
|
27
27
|
spec.add_dependency 'colorize'
|
28
28
|
spec.add_dependency 'faraday'
|
29
|
-
spec.add_dependency 'thor', '
|
29
|
+
spec.add_dependency 'thor', '~> 1.0'
|
30
30
|
|
31
31
|
spec.add_development_dependency 'awesome_print'
|
32
32
|
spec.add_development_dependency 'bundler'
|
@@ -35,4 +35,5 @@ Gem::Specification.new do |spec|
|
|
35
35
|
spec.add_development_dependency 'rspec'
|
36
36
|
spec.add_development_dependency 'rubocop'
|
37
37
|
spec.add_development_dependency 'rubocop-performance'
|
38
|
+
spec.add_development_dependency 'rubocop-rspec'
|
38
39
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vidar
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Krzysztof Knapik
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2020-06-01 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: colorize
|
@@ -43,22 +43,16 @@ dependencies:
|
|
43
43
|
name: thor
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
|
-
- - "
|
47
|
-
- !ruby/object:Gem::Version
|
48
|
-
version: '0.20'
|
49
|
-
- - "<"
|
46
|
+
- - "~>"
|
50
47
|
- !ruby/object:Gem::Version
|
51
|
-
version: '
|
48
|
+
version: '1.0'
|
52
49
|
type: :runtime
|
53
50
|
prerelease: false
|
54
51
|
version_requirements: !ruby/object:Gem::Requirement
|
55
52
|
requirements:
|
56
|
-
- - "
|
53
|
+
- - "~>"
|
57
54
|
- !ruby/object:Gem::Version
|
58
|
-
version: '0
|
59
|
-
- - "<"
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '2.0'
|
55
|
+
version: '1.0'
|
62
56
|
- !ruby/object:Gem::Dependency
|
63
57
|
name: awesome_print
|
64
58
|
requirement: !ruby/object:Gem::Requirement
|
@@ -157,6 +151,20 @@ dependencies:
|
|
157
151
|
- - ">="
|
158
152
|
- !ruby/object:Gem::Version
|
159
153
|
version: '0'
|
154
|
+
- !ruby/object:Gem::Dependency
|
155
|
+
name: rubocop-rspec
|
156
|
+
requirement: !ruby/object:Gem::Requirement
|
157
|
+
requirements:
|
158
|
+
- - ">="
|
159
|
+
- !ruby/object:Gem::Version
|
160
|
+
version: '0'
|
161
|
+
type: :development
|
162
|
+
prerelease: false
|
163
|
+
version_requirements: !ruby/object:Gem::Requirement
|
164
|
+
requirements:
|
165
|
+
- - ">="
|
166
|
+
- !ruby/object:Gem::Version
|
167
|
+
version: '0'
|
160
168
|
description:
|
161
169
|
email:
|
162
170
|
- knapo@knapo.net
|
@@ -166,20 +174,20 @@ executables:
|
|
166
174
|
extensions: []
|
167
175
|
extra_rdoc_files: []
|
168
176
|
files:
|
177
|
+
- ".dependabot/config.yml"
|
178
|
+
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
179
|
+
- ".github/ISSUE_TEMPLATE/config.yml"
|
180
|
+
- ".github/ISSUE_TEMPLATE/story.md"
|
181
|
+
- ".github/PULL_REQUEST_TEMPLATE.md"
|
182
|
+
- ".github/workflows/auto-approve.yml"
|
169
183
|
- ".gitignore"
|
170
184
|
- ".rspec"
|
171
|
-
- ".rubocop.yml"
|
172
|
-
- ".ruby-version"
|
173
185
|
- ".travis.yml"
|
174
186
|
- Gemfile
|
175
187
|
- Gemfile.lock
|
176
188
|
- LICENSE
|
177
189
|
- README.md
|
178
190
|
- Rakefile
|
179
|
-
- bin/console
|
180
|
-
- bin/release
|
181
|
-
- bin/setup
|
182
|
-
- bin/vidar
|
183
191
|
- exe/vidar
|
184
192
|
- lib/vidar.rb
|
185
193
|
- lib/vidar/cli.rb
|
@@ -216,7 +224,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
216
224
|
- !ruby/object:Gem::Version
|
217
225
|
version: '0'
|
218
226
|
requirements: []
|
219
|
-
rubygems_version: 3.
|
227
|
+
rubygems_version: 3.1.2
|
220
228
|
signing_key:
|
221
229
|
specification_version: 4
|
222
230
|
summary: K8s deployment tools based on thor
|
data/.rubocop.yml
DELETED
data/.ruby-version
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
ruby-2.6.5
|
data/bin/console
DELETED
data/bin/release
DELETED
@@ -1,10 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
lib = File.expand_path('../lib', __dir__)
|
4
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
5
|
-
require 'vidar/version'
|
6
|
-
|
7
|
-
system("bundle") || exit(1)
|
8
|
-
system("bundle exec rake") || exit(1)
|
9
|
-
system("git commit -am 'Release #{Vidar::VERSION}'")
|
10
|
-
system("bundle exec rake build release")
|
data/bin/setup
DELETED