uffizzi_core 2.0.16 → 2.0.17
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6aaae335cc42e48af29ed1a1a991bdcf9c0f84fa69ccf984018893e4ed488ccd
|
4
|
+
data.tar.gz: fbd8da9faac2e2744831d080504dbc895cacabf657710bdde8b259e6f28d5af2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cc8abc5881e7cb4cbc52006173183f153b52637b777e7d007323b5dba6fff450712c19a27374d504d348c1b09266ae9db48c187d46e3dddf03fe47485a28f2c6
|
7
|
+
data.tar.gz: d532cb79f81d9a343459b22b1e1684f0551bcad4af7a6518e54ba96a6e28707b60c62438b3bce11d2906de79d70a234bf2fea1370e1b9e6f8596f2d418c25dcd
|
@@ -2,12 +2,19 @@
|
|
2
2
|
|
3
3
|
class UffizziCore::ComposeFile::Parsers::Services::HealthcheckParserService
|
4
4
|
REQUIRED_START_COMMANDS = ['NONE', 'CMD', 'CMD-SHELL'].freeze
|
5
|
+
REQUIRED_OPTIONS = ['test', 'disable'].freeze
|
5
6
|
|
6
7
|
class << self
|
7
8
|
def parse(healthcheck_data)
|
8
9
|
return {} if healthcheck_data.blank?
|
9
10
|
|
10
|
-
|
11
|
+
unless required_options_any?(healthcheck_data)
|
12
|
+
raise UffizziCore::ComposeFile::ParseError,
|
13
|
+
I18n.t('compose.healthcheck_missing_required_option',
|
14
|
+
required_options: REQUIRED_OPTIONS.join(', '))
|
15
|
+
end
|
16
|
+
|
17
|
+
command = parse_command(healthcheck_data) if healthcheck_data['test'].present?
|
11
18
|
|
12
19
|
{
|
13
20
|
test: command,
|
@@ -85,5 +92,9 @@ class UffizziCore::ComposeFile::Parsers::Services::HealthcheckParserService
|
|
85
92
|
|
86
93
|
raise UffizziCore::ComposeFile::ParseError, I18n.t('compose.invalid_bool_value', field: 'disable', value: value)
|
87
94
|
end
|
95
|
+
|
96
|
+
def required_options_any?(healthcheck_data)
|
97
|
+
(REQUIRED_OPTIONS & healthcheck_data.keys).present?
|
98
|
+
end
|
88
99
|
end
|
89
100
|
end
|
@@ -186,8 +186,9 @@ class UffizziCore::ComposeFileService
|
|
186
186
|
def load_compose_data(compose_content)
|
187
187
|
begin
|
188
188
|
compose_data = YAML.safe_load(compose_content, aliases: true)
|
189
|
-
rescue Psych::SyntaxError
|
190
|
-
|
189
|
+
rescue Psych::SyntaxError => e
|
190
|
+
err = [e.problem, e.context].compact.join(' ')
|
191
|
+
raise UffizziCore::ComposeFile::ParseError, I18n.t('compose.invalid_file', err: err, line: e.line, column: e.column)
|
191
192
|
end
|
192
193
|
raise UffizziCore::ComposeFile::ParseError, I18n.t('compose.unsupported_file') if compose_data.nil?
|
193
194
|
|
data/config/locales/en.yml
CHANGED
@@ -12,7 +12,7 @@ en:
|
|
12
12
|
Uffizzi was unable to deploy a preview of this pull request because the compose file in this branch is invalid.
|
13
13
|
compose:
|
14
14
|
unsupported_file: Unsupported compose file
|
15
|
-
invalid_file:
|
15
|
+
invalid_file: 'Syntax error: %{err} at line %{line} column %{column}'
|
16
16
|
invalid_config_option: Invalid config option '%{value}' - only a-zA-Z0-9._- characters are allowed
|
17
17
|
no_services: Service services has neither an image nor a build context specified. At least one must be provided.
|
18
18
|
no_ingress: Service ingress has not been defined.
|
@@ -69,6 +69,7 @@ en:
|
|
69
69
|
invalid_volume_destination: Invalid volume specification '%{spec}' destination can't be '/'
|
70
70
|
required_start_commands: "When 'test' is a list the first item must be one of: '%{available_commands}'"
|
71
71
|
volumes_should_be_array: Volumes '%{volumes}' should be an arra
|
72
|
+
healthcheck_missing_required_option: "One of these options is required: %{required_options}"
|
72
73
|
secrets:
|
73
74
|
duplicates_exists: Secret with key %{secrets} already exist.
|
74
75
|
invalid_key_length: A secret key must be no longer than 256 characters.
|
data/lib/uffizzi_core/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: uffizzi_core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.17
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Josh Thurman
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2022-12-
|
12
|
+
date: 2022-12-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: aasm
|