vidar 1.17.1 → 1.17.3
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/.bundler-version +1 -1
- data/.github/workflows/auto-approve.yml +2 -1
- data/.github/workflows/ci.yml +2 -2
- data/CHANGELOG.md +8 -0
- data/Gemfile.lock +19 -19
- data/lib/vidar/config.rb +1 -8
- data/lib/vidar/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8a82ca1624e990b5179e97922eb1cf6bd0f73fc04dd22e6928b2bb69d86fb984
|
|
4
|
+
data.tar.gz: 4413e5da02650398ff42e51e613f666113150e323c0dd45a6ca3e4b05c73e629
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c8d062610d22d4fd01c7fc67239aadb3ceb4a64e439ce64c69c5a36a08a715a3c3cabdbea212456121460f5c432eaac95e6e14101556e85ca07eafd5e5e2b8e3
|
|
7
|
+
data.tar.gz: acc1115277cf9e047ddaee6a67d74d0624a8f38b31786bba7fd449f21350f0d25ee9861dad9b1a360839201f01f485e87b33758967902622b1b27fe73c88e8e8
|
data/.bundler-version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
4.0.
|
|
1
|
+
4.0.15
|
|
@@ -8,7 +8,8 @@ jobs:
|
|
|
8
8
|
if: >
|
|
9
9
|
github.actor == 'renofidev' ||
|
|
10
10
|
contains(github.event.pull_request.labels.*.name, 'HOTFIX-AUTO-APPROVE') ||
|
|
11
|
-
contains(github.event.pull_request.labels.*.name, 'self-approve')
|
|
11
|
+
contains(github.event.pull_request.labels.*.name, 'self-approve') ||
|
|
12
|
+
contains(github.event.pull_request.labels.*.name, 'dependencies')
|
|
12
13
|
runs-on: ubuntu-latest
|
|
13
14
|
steps:
|
|
14
15
|
- uses: hmarr/auto-approve-action@f0939ea97e9205ef24d872e76833fa908a770363 # v4.0.0
|
data/.github/workflows/ci.yml
CHANGED
|
@@ -14,9 +14,9 @@ jobs:
|
|
|
14
14
|
ruby-version: [3.4, 4.0]
|
|
15
15
|
|
|
16
16
|
steps:
|
|
17
|
-
- uses: actions/checkout@
|
|
17
|
+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
18
18
|
- name: Set up Ruby
|
|
19
|
-
uses: ruby/setup-ruby@
|
|
19
|
+
uses: ruby/setup-ruby@9eb537ca036ebaed86729dcb9309076e4c5c3b74 # v1.314.0
|
|
20
20
|
with:
|
|
21
21
|
ruby-version: ${{ matrix.ruby-version }}
|
|
22
22
|
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
2
|
|
|
3
|
+
## 1.17.3 - 2026-07-02
|
|
4
|
+
|
|
5
|
+
- Sanitize all characters invalid in docker image tags in `current_branch`: any run of characters outside `[a-zA-Z0-9_]` (previously only `/`) is replaced with a single `-`, and leading/trailing dashes are stripped
|
|
6
|
+
|
|
7
|
+
## 1.17.2 - 2026-05-21
|
|
8
|
+
|
|
9
|
+
- Remove required key validation from `vidar.yml` — config loads without requiring any top-level keys; deployments structure is still validated
|
|
10
|
+
|
|
3
11
|
## 1.17.1 - 2026-05-19
|
|
4
12
|
|
|
5
13
|
- Fix `monitor_deploy_status` failing the deploy promotion when `--max_tries` is passed: Thor's `invoke :notify_sentry` was forwarding the parent task's ARGV as positional args. Pass explicit empty args/options to scope the sub-invocation.
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
vidar (1.17.
|
|
4
|
+
vidar (1.17.3)
|
|
5
5
|
colorize
|
|
6
6
|
faraday (>= 2.0, < 3)
|
|
7
7
|
thor (~> 1.0)
|
|
@@ -13,20 +13,19 @@ GEM
|
|
|
13
13
|
public_suffix (>= 2.0.2, < 8.0)
|
|
14
14
|
ast (2.4.3)
|
|
15
15
|
awesome_print (1.9.2)
|
|
16
|
-
bigdecimal (4.1.
|
|
16
|
+
bigdecimal (4.1.2)
|
|
17
17
|
coderay (1.1.3)
|
|
18
18
|
colorize (1.1.0)
|
|
19
19
|
crack (1.0.1)
|
|
20
20
|
bigdecimal
|
|
21
21
|
rexml
|
|
22
|
-
date (3.5.1)
|
|
23
22
|
diff-lcs (1.6.2)
|
|
24
23
|
erb (6.0.4)
|
|
25
|
-
faraday (2.14.
|
|
24
|
+
faraday (2.14.3)
|
|
26
25
|
faraday-net_http (>= 2.0, < 3.5)
|
|
27
26
|
json
|
|
28
27
|
logger
|
|
29
|
-
faraday-net_http (3.4.
|
|
28
|
+
faraday-net_http (3.4.4)
|
|
30
29
|
net-http (~> 0.5)
|
|
31
30
|
hashdiff (1.2.1)
|
|
32
31
|
io-console (0.8.2)
|
|
@@ -35,7 +34,7 @@ GEM
|
|
|
35
34
|
prism (>= 1.3.0)
|
|
36
35
|
rdoc (>= 4.0.0)
|
|
37
36
|
reline (>= 0.4.2)
|
|
38
|
-
json (2.
|
|
37
|
+
json (2.20.0)
|
|
39
38
|
language_server-protocol (3.17.0.5)
|
|
40
39
|
lint_roller (1.1.0)
|
|
41
40
|
logger (1.7.0)
|
|
@@ -43,11 +42,11 @@ GEM
|
|
|
43
42
|
net-http (0.9.1)
|
|
44
43
|
uri (>= 0.11.1)
|
|
45
44
|
openssl (4.0.2)
|
|
46
|
-
parallel (1.
|
|
45
|
+
parallel (2.1.0)
|
|
47
46
|
parser (3.3.11.1)
|
|
48
47
|
ast (~> 2.4.1)
|
|
49
48
|
racc
|
|
50
|
-
pp (0.6.
|
|
49
|
+
pp (0.6.4)
|
|
51
50
|
prettyprint
|
|
52
51
|
prettyprint (0.2.0)
|
|
53
52
|
prism (1.9.0)
|
|
@@ -55,16 +54,18 @@ GEM
|
|
|
55
54
|
coderay (~> 1.1)
|
|
56
55
|
method_source (~> 1.0)
|
|
57
56
|
reline (>= 0.6.0)
|
|
58
|
-
psych (5.3.1)
|
|
59
|
-
date
|
|
60
|
-
stringio
|
|
61
57
|
public_suffix (7.0.5)
|
|
62
58
|
racc (1.8.1)
|
|
63
59
|
rainbow (3.1.1)
|
|
64
60
|
rake (13.4.2)
|
|
65
|
-
|
|
61
|
+
rbs (4.0.3)
|
|
62
|
+
logger
|
|
63
|
+
prism (>= 1.6.0)
|
|
64
|
+
tsort
|
|
65
|
+
rdoc (8.0.0)
|
|
66
66
|
erb
|
|
67
|
-
|
|
67
|
+
prism (>= 1.6.0)
|
|
68
|
+
rbs (>= 4.0.0)
|
|
68
69
|
tsort
|
|
69
70
|
regexp_parser (2.12.0)
|
|
70
71
|
reline (0.6.3)
|
|
@@ -83,11 +84,11 @@ GEM
|
|
|
83
84
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
84
85
|
rspec-support (~> 3.13.0)
|
|
85
86
|
rspec-support (3.13.7)
|
|
86
|
-
rubocop (1.
|
|
87
|
+
rubocop (1.87.0)
|
|
87
88
|
json (~> 2.3)
|
|
88
89
|
language_server-protocol (~> 3.17.0.2)
|
|
89
90
|
lint_roller (~> 1.1.0)
|
|
90
|
-
parallel (
|
|
91
|
+
parallel (>= 1.10)
|
|
91
92
|
parser (>= 3.3.0.2)
|
|
92
93
|
rainbow (>= 2.2.2, < 4.0)
|
|
93
94
|
regexp_parser (>= 2.9.3, < 3.0)
|
|
@@ -102,10 +103,10 @@ GEM
|
|
|
102
103
|
rubocop (>= 1.75.0, < 2.0)
|
|
103
104
|
rubocop-ast (>= 1.47.1, < 2.0)
|
|
104
105
|
ruby-progressbar (1.13.0)
|
|
105
|
-
standard (1.
|
|
106
|
+
standard (1.55.0)
|
|
106
107
|
language_server-protocol (~> 3.17.0.2)
|
|
107
108
|
lint_roller (~> 1.0)
|
|
108
|
-
rubocop (~> 1.
|
|
109
|
+
rubocop (~> 1.87.0)
|
|
109
110
|
standard-custom (~> 1.0.0)
|
|
110
111
|
standard-performance (~> 1.8)
|
|
111
112
|
standard-custom (1.0.2)
|
|
@@ -114,7 +115,6 @@ GEM
|
|
|
114
115
|
standard-performance (1.9.0)
|
|
115
116
|
lint_roller (~> 1.1)
|
|
116
117
|
rubocop-performance (~> 1.26.0)
|
|
117
|
-
stringio (3.2.0)
|
|
118
118
|
thor (1.5.0)
|
|
119
119
|
tsort (0.2.0)
|
|
120
120
|
unicode-display_width (3.2.0)
|
|
@@ -142,4 +142,4 @@ DEPENDENCIES
|
|
|
142
142
|
webmock
|
|
143
143
|
|
|
144
144
|
BUNDLED WITH
|
|
145
|
-
4.0.
|
|
145
|
+
4.0.10
|
data/lib/vidar/config.rb
CHANGED
|
@@ -4,13 +4,11 @@ module Vidar
|
|
|
4
4
|
class Config
|
|
5
5
|
DEFAULT_MANIFEST_FILE = "vidar.yml".freeze
|
|
6
6
|
DEFAULT_BRANCHES = %w[main master].freeze
|
|
7
|
-
REQUIRED_KEYS = %w[image namespace github].freeze
|
|
8
|
-
|
|
9
7
|
DEFAULT_OPTIONS = {
|
|
10
8
|
compose_file: -> { "docker-compose.ci.yml" },
|
|
11
9
|
compose_cmd: -> { "docker compose" },
|
|
12
10
|
default_branch: -> { (DEFAULT_BRANCHES & branches).first || DEFAULT_BRANCHES.first },
|
|
13
|
-
current_branch: -> { (ENV["SEMAPHORE_GIT_WORKING_BRANCH"] || shell_capture("git rev-parse --abbrev-ref HEAD")).
|
|
11
|
+
current_branch: -> { (ENV["SEMAPHORE_GIT_WORKING_BRANCH"] || shell_capture("git rev-parse --abbrev-ref HEAD")).gsub(/[^a-zA-Z0-9_]+/, "-").gsub(/\A-|-\z/, "") },
|
|
14
12
|
revision: -> { shell_capture("git rev-parse HEAD") },
|
|
15
13
|
revision_name: -> { shell_capture('git show --pretty=format:"%s (%h)" -s HEAD') },
|
|
16
14
|
kubectl_context: -> { shell_capture("kubectl config current-context") },
|
|
@@ -26,10 +24,8 @@ module Vidar
|
|
|
26
24
|
attr_reader :data
|
|
27
25
|
attr_writer :manifest_file
|
|
28
26
|
|
|
29
|
-
# Loads the manifest file and validates required keys.
|
|
30
27
|
# @param file_path [String] path to vidar.yml
|
|
31
28
|
# @raise [MissingManifestFileError] if the file does not exist
|
|
32
|
-
# @raise [Error] if required keys are missing or schema is invalid
|
|
33
29
|
def load(file_path = manifest_file)
|
|
34
30
|
ensure_file_exist!(file_path)
|
|
35
31
|
|
|
@@ -122,9 +118,6 @@ module Vidar
|
|
|
122
118
|
private
|
|
123
119
|
|
|
124
120
|
def validate_schema!
|
|
125
|
-
missing = REQUIRED_KEYS.reject { |k| @data.key?(k) }
|
|
126
|
-
fail(Error, "vidar.yml is missing required keys: #{missing.join(", ")}") if missing.any?
|
|
127
|
-
|
|
128
121
|
deployments = @data["deployments"]
|
|
129
122
|
fail(Error, "vidar.yml: 'deployments' must be a Hash, got #{deployments.class}") if deployments && !deployments.is_a?(Hash)
|
|
130
123
|
|
data/lib/vidar/version.rb
CHANGED
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: 1.17.
|
|
4
|
+
version: 1.17.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Krzysztof Knapik
|
|
@@ -123,7 +123,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
123
123
|
- !ruby/object:Gem::Version
|
|
124
124
|
version: '0'
|
|
125
125
|
requirements: []
|
|
126
|
-
rubygems_version: 4.0.
|
|
126
|
+
rubygems_version: 4.0.15
|
|
127
127
|
specification_version: 4
|
|
128
128
|
summary: K8s deployment tools based on thor
|
|
129
129
|
test_files: []
|