avm-eac_redmine_base0 0.5.2 → 0.7.0

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: 2ce56b5622c90260decf0b4f031160caadea36dcfbee74e49def419fcb997822
4
- data.tar.gz: 9208091f887c7e44c46da359a080a483ce97df9f80173b67da12bef2ef4807e3
3
+ metadata.gz: 9696d77e08ae4b3e1430ee69b85ee2815ff93d563968d2d209ece83a959f187b
4
+ data.tar.gz: 7120f0c052f9082e9fdb39b6992788676bffae4a568f30f8a7f23d7281076aae
5
5
  SHA512:
6
- metadata.gz: ee04dff92fd93755ac98d2ce9371b9477a0ee42d88d6af1836a6cb1f8ac491884cba9f1de35499d8fb061d99e51c6e82de2236d49024553d4b6f326ca76dc717
7
- data.tar.gz: 3d60edf86fce691eecbc6ed880e88312f9321a81d40e6234b08c5328d72a8e178b2e25bd621480d19b133577a18221ca7b65678ba54b99f97c04b498689180d3
6
+ metadata.gz: 153593e33012649c55762807fb2a1595218da50324b53a2c20630afe4ce1c5886b064738611d4e0c7ae92ae5632a8ee30770929767f442ae1484ad06ad8007f9
7
+ data.tar.gz: ccf1eb4978f51c5429cc8c1c6a5921509099aa3016735e1ad00b22b7da6f0fcde10cd0f2fc06f421ef6825bab6f7af8164529288d7fdefe20d9b56f68bad4300
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'avm/eac_redmine_base0/core_update'
4
+ require 'avm/sources/base/configuration'
4
5
  require 'avm/sync'
5
6
  require 'eac_fs/cached_download'
6
7
  require 'eac_ruby_utils/core_ext'
@@ -10,11 +11,13 @@ module Avm
10
11
  class CoreUpdate
11
12
  enable_speaker
12
13
  enable_simple_cache
13
- common_constructor :instance, :version, :url
14
+ common_constructor :source, :version, :url
14
15
 
15
- GITIGNORE_ADD = %w[/public/assets/**/* /config/install.sh /log/**/*].freeze
16
+ GITIGNORE_ADD = %w[/public/assets/**/* /config/install.sh /config/secrets_key.txt
17
+ /log/**/*].freeze
16
18
  GITIGNORE_DEL = %w[/Gemfile.lock /plugins/* /public/themes/*].freeze
17
- TARGET_KEEP = %w[/Gemfile.lock].freeze
19
+ TARGET_KEEP = ::Avm::Sources::Base::Configuration::CONFIGURATION_FILENAMES
20
+ .map { |b| "/#{b}" } + %w[/Gemfile.lock].freeze
18
21
 
19
22
  def run
20
23
  ::EacRubyUtils::Fs::Temp.on_directory do |dir|
@@ -37,7 +40,7 @@ module Avm
37
40
  end
38
41
 
39
42
  def fs_object_id
40
- [instance.id, version].join('_').variableize
43
+ [source.path, version].join('_').variableize
41
44
  end
42
45
 
43
46
  private
@@ -71,7 +74,7 @@ module Avm
71
74
  end
72
75
 
73
76
  def git_commit_message
74
- "Core: update to #{version}."
77
+ i18n_translate(__method__, version: version, __locale: source.locale)
75
78
  end
76
79
 
77
80
  def git_repo_uncached
@@ -108,7 +111,7 @@ module Avm
108
111
  end
109
112
 
110
113
  def target_path_uncached
111
- instance.read_entry('fs_path').to_pathname
114
+ source.path
112
115
  end
113
116
  end
114
117
  end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_rails_base1/sources/base'
4
+ require 'avm/eac_redmine_base0/sources/runners'
5
+ require 'eac_ruby_utils/core_ext'
6
+
7
+ module Avm
8
+ module EacRedmineBase0
9
+ module Sources
10
+ class Base < ::Avm::EacRailsBase1::Sources::Base
11
+ REDMINE_LIB_SUBPATH = 'lib/redmine.rb'
12
+ SUBS_INCLUDE_PATHS_DEFAULT = ['plugins/*'].freeze
13
+
14
+ def redmine_lib_path
15
+ path.join(REDMINE_LIB_SUBPATH)
16
+ end
17
+
18
+ def subs_include_paths_default
19
+ SUBS_INCLUDE_PATHS_DEFAULT
20
+ end
21
+
22
+ def valid?
23
+ super && redmine_lib_path.exist?
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_redmine_base0/core_update'
4
+ require 'eac_cli/core_ext'
5
+ require 'avm/eac_rails_base1/sources/base'
6
+ require 'avm/eac_redmine_base0/sources/runners'
7
+ require 'eac_ruby_utils/core_ext'
8
+
9
+ module Avm
10
+ module EacRedmineBase0
11
+ module Sources
12
+ module Runners
13
+ class CoreUpdate
14
+ runner_with :help do
15
+ arg_opt '-u', '--url', 'Core\'s package URL.'
16
+ arg_opt '-v', '--version', 'Core\'s version.'
17
+ desc 'Update instance\' core.'
18
+ end
19
+
20
+ def run
21
+ start_banner
22
+ validate
23
+ update
24
+ end
25
+
26
+ private
27
+
28
+ def start_banner
29
+ infov 'URL', url
30
+ infov 'Version', version
31
+ end
32
+
33
+ def update
34
+ ::Avm::EacRedmineBase0::CoreUpdate.new(runner_context.call(:subject), version, url).run
35
+ end
36
+
37
+ def url
38
+ parsed.url || url_by_version
39
+ end
40
+
41
+ def url_by_version
42
+ parsed.version.if_present do |v|
43
+ "https://www.redmine.org/releases/redmine-#{v}.tar.gz"
44
+ end
45
+ end
46
+
47
+ def validate
48
+ %w[url version].each do |attr|
49
+ fatal_error "\"#{attr}\" is blank. See avaiable options." if send(attr).blank?
50
+ end
51
+ end
52
+
53
+ def version
54
+ parsed.version || version_by_url
55
+ end
56
+
57
+ def version_by_url
58
+ parsed.url.if_present do |v|
59
+ /(\d+.\d+.\d+)/.if_match(v, false) { |m| m[1] }
60
+ end
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module EacRedmineBase0
7
+ module Sources
8
+ module Runners
9
+ require_sub __FILE__
10
+ end
11
+ end
12
+ end
13
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacRedmineBase0
5
- VERSION = '0.5.2'
5
+ VERSION = '0.7.0'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: avm-eac_redmine_base0
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.2
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Put here the authors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-06-21 00:00:00.000000000 Z
11
+ date: 2022-07-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: avm-eac_rails_base1
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.2'
19
+ version: '0.3'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.2'
26
+ version: '0.3'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: avm-eac_ubuntu_base0
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -122,6 +122,9 @@ files:
122
122
  - lib/avm/eac_redmine_base0/instance.rb
123
123
  - lib/avm/eac_redmine_base0/instances/docker_image.rb
124
124
  - lib/avm/eac_redmine_base0/rest_api.rb
125
+ - lib/avm/eac_redmine_base0/sources/base.rb
126
+ - lib/avm/eac_redmine_base0/sources/runners.rb
127
+ - lib/avm/eac_redmine_base0/sources/runners/core_update.rb
125
128
  - lib/avm/eac_redmine_base0/version.rb
126
129
  - template/avm/eac_redmine_base0/deploy/config/install.sh.template
127
130
  - template/avm/eac_redmine_base0/deploy/config/secrets.yml