redmine_plugins_helper 0.6.1 → 0.6.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6b62552c2b713ae9ff7e46ec96dc675d1c1fc8711f3994e27767bc719bf07f47
4
- data.tar.gz: af3c66b6668ae1db089f8164da3f43a4a4f50f1c01969d1b320b89a7c931ab61
3
+ metadata.gz: 8ca5772e876e639e0942d952d19b5ec1e2209a0e4c940cb3d2c96a153a05ab9e
4
+ data.tar.gz: efa530f94b8dfeedb8cd4b45ba680973f2c24a4fc48fa52d2afe4080832ffc20
5
5
  SHA512:
6
- metadata.gz: 3570ae2be6455c709c2c0c0f207791d33d858272dc218d23c287cd00ad33ceff63c6b4171e2f46529f40581a0c5587108dd0b2a25f985f0fa739f5f1816b2145
7
- data.tar.gz: 035b6159f5d8dc573025443a07e728ce9d7f67c201a5e0e24562ecf60530d40f577cc2343d0de6c6825bf8ed6e823214bd5dae19bb55ebe7f7ca949ff9d0c424
6
+ metadata.gz: 57c8fb35575213895fea1d9849946b302f5735aca058d8b49ed7dad8a8c2ab1ef25968ae61aaceebcfa1f17e5d1e84fe1e13c79a15ae40cca289c94391e1c2df
7
+ data.tar.gz: ae105a3878516569b53db44307ae075c99b7d2b364aba4beb465d1fd77d3fe1d2031e6ade9f31444e9918dec51d7ac70b27378b03f463a715a544db87e136271
@@ -1,19 +1,38 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RedminePluginsHelper
2
4
  class Migrate
3
- def initialize
5
+ attr_reader :plugin_name, :migration_version
6
+
7
+ def initialize(plugin_name, migration_version)
8
+ @plugin_name = plugin_name
9
+ @migration_version = migration_version
4
10
  run
5
11
  end
6
12
 
7
13
  private
8
14
 
9
15
  def run
16
+ if plugin_name.present?
17
+ run_version
18
+ else
19
+ run_all
20
+ end
21
+ end
22
+
23
+ def run_all
10
24
  versions_sorted.each do |v|
11
25
  migrate_plugin_version(v)
12
26
  end
13
27
  end
14
28
 
29
+ def run_version
30
+ ::Redmine::Plugin.migrate(plugin_name, migration_version)
31
+ end
32
+
15
33
  def migrate_plugin_version(v)
16
34
  return if migrated?(v)
35
+
17
36
  ::Redmine::Plugin.registered_plugins[v[:plugin]].migrate(v[:timestamp])
18
37
  end
19
38
 
@@ -3,5 +3,5 @@
3
3
  module RedminePluginsHelper
4
4
  AUTHOR = 'Eduardo Henrique Bogoni'
5
5
  SUMMARY = 'Helper for Redmine plugins'
6
- VERSION = '0.6.1'
6
+ VERSION = '0.6.2'
7
7
  end
@@ -17,8 +17,24 @@ namespace :redmine do
17
17
  namespace :plugins do
18
18
  desc 'Migrates installed plugins.'
19
19
  task migrate: :environment do
20
- RedminePluginsHelper::Migrate.new
21
- Rake::Task['db:schema:dump'].invoke
20
+ name = ENV['NAME']
21
+ version = nil
22
+ version_string = ENV['VERSION']
23
+ if version_string
24
+ if version_string =~ /^\d+$/
25
+ version = version_string.to_i
26
+ abort 'The VERSION argument requires a plugin NAME.' if name.nil?
27
+ else
28
+ abort "Invalid VERSION #{version_string} given."
29
+ end
30
+ end
31
+
32
+ begin
33
+ RedminePluginsHelper::Migrate.new(name, version)
34
+ Rake::Task['db:schema:dump'].invoke
35
+ rescue Redmine::PluginNotFound
36
+ abort "Plugin #{name} was not found."
37
+ end
22
38
  end
23
39
 
24
40
  namespace :migrate do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redmine_plugins_helper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.1
4
+ version: 0.6.2
5
5
  platform: ruby
6
6
  authors:
7
- - 0.6.1
7
+ - 0.6.2
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-30 00:00:00.000000000 Z
11
+ date: 2020-05-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sass-rails