redmine-installer 1.0.1 → 1.0.2
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/Gemfile +2 -1
- data/lib/redmine-installer/command.rb +2 -0
- data/lib/redmine-installer/config_param.rb +10 -0
- data/lib/redmine-installer/helpers/generate_config.rb +1 -1
- data/lib/redmine-installer/locales/cs.yml +1 -0
- data/lib/redmine-installer/locales/en.yml +1 -0
- data/lib/redmine-installer/plugins/database.rb +3 -3
- data/lib/redmine-installer/plugins/redmine_plugin.rb +25 -11
- data/lib/redmine-installer/steps/install.rb +3 -1
- data/lib/redmine-installer/steps/upgrade.rb +3 -1
- data/lib/redmine-installer/utils.rb +10 -3
- data/lib/redmine-installer/version.rb +1 -1
- data/lib/redmine-installer.rb +0 -1
- data/redmine-installer.gemspec +4 -1
- metadata +45 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c6b1dc78262bd3d0e88d765b62bac3ff5c6cd31b
|
4
|
+
data.tar.gz: 4281ff021662f3f92e320dbcc150132161592a8d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9120fb096383789fdced6385f500308b3f773a33c2a35eb5e1361391085317321cec5405f7a094cb29f9c51a3c8366f0ebda282c830e69a177c9514630581bce
|
7
|
+
data.tar.gz: a75f19c13818acc90aaaea573f622c8e79ad08a21e70b809c34058972fb66fffce3070a7354cd864a53ff6b3b3fda1582e45f1bfbec49061bfdb5faa400d4bcf
|
data/Gemfile
CHANGED
@@ -3,11 +3,12 @@ source 'https://rubygems.org'
|
|
3
3
|
# Specify your gem's dependencies in redmine-installer.gemspec
|
4
4
|
gemspec
|
5
5
|
|
6
|
+
gem 'ansi'
|
6
7
|
gem 'gli'
|
7
8
|
gem 'i18n'
|
8
|
-
gem 'ansi'
|
9
9
|
gem 'notifier'
|
10
10
|
gem 'ruby-progressbar'
|
11
|
+
gem 'rubyzip'
|
11
12
|
|
12
13
|
group :development do
|
13
14
|
gem 'pry'
|
@@ -60,6 +60,7 @@ module Redmine::Installer
|
|
60
60
|
attribute :default
|
61
61
|
attribute :value
|
62
62
|
attribute :ask, true
|
63
|
+
attribute :hide, false
|
63
64
|
|
64
65
|
def initialize(name)
|
65
66
|
# Default
|
@@ -77,6 +78,7 @@ module Redmine::Installer
|
|
77
78
|
|
78
79
|
def set(key, value)
|
79
80
|
self.send("#{key}=", value)
|
81
|
+
self
|
80
82
|
end
|
81
83
|
|
82
84
|
def default(value=nil)
|
@@ -84,6 +86,14 @@ module Redmine::Installer
|
|
84
86
|
|
85
87
|
self.default = value
|
86
88
|
self.value = value if self.value.nil?
|
89
|
+
self
|
90
|
+
end
|
91
|
+
|
92
|
+
def hide(value=nil)
|
93
|
+
return @hide if value.nil?
|
94
|
+
|
95
|
+
self.hide = value
|
96
|
+
self
|
87
97
|
end
|
88
98
|
|
89
99
|
end
|
@@ -18,7 +18,7 @@ module Redmine::Installer::Helper
|
|
18
18
|
|
19
19
|
say("(#{instance.class.title})", 2)
|
20
20
|
instance.params.for_asking.each do |p|
|
21
|
-
p.value = ask(p.title, default: p.default)
|
21
|
+
p.value = ask(p.title, default: p.default, hide: p.hide)
|
22
22
|
end
|
23
23
|
|
24
24
|
instance.make_config(base.tmp_redmine_root)
|
@@ -9,6 +9,7 @@ cs:
|
|
9
9
|
cli_flag_source: 'Jaký typ je balíček'
|
10
10
|
cli_flag_branch: 'Jiná větev gitu'
|
11
11
|
cli_flag_environment: 'Prostředí redminu'
|
12
|
+
command_exit_with_error: 'Příkaz: <bright>%{command}</bright> skončil s chybou'
|
12
13
|
dir_not_exist_and_cannot_be_created: 'Složka %{dir} neexistuje a nemůže být vytvořena'
|
13
14
|
dir_is_not_writeable: 'Složka <bright>%{dir}</bright> není zapisovatelná'
|
14
15
|
do_you_want_repeat_command: 'Chcete opakovat příkaz?'
|
@@ -10,6 +10,7 @@ en:
|
|
10
10
|
cli_flag_source: 'What type is package argument'
|
11
11
|
cli_flag_branch: 'Different branch for git'
|
12
12
|
cli_flag_environment: 'Environment for redmine'
|
13
|
+
command_exit_with_error: 'Command: <bright>%{command}</bright> exit with an error'
|
13
14
|
dir_not_exist_and_cannot_be_created: 'Dir %{dir} does not exist and can not be created'
|
14
15
|
dir_is_not_writeable: 'Dir <bright>%{dir}</bright> is not writeable'
|
15
16
|
do_you_want_repeat_command: 'Do you want repeat this command?'
|
@@ -45,7 +45,7 @@ module Redmine::Installer::Plugin
|
|
45
45
|
@params.add('database')
|
46
46
|
@params.add('host').default('localhost')
|
47
47
|
@params.add('username')
|
48
|
-
@params.add('password')
|
48
|
+
@params.add('password').hide(true)
|
49
49
|
@params.add('encoding').default('utf8')
|
50
50
|
end
|
51
51
|
|
@@ -143,7 +143,7 @@ module Redmine::Installer::Plugin
|
|
143
143
|
|
144
144
|
class PostgreSQL < Database
|
145
145
|
def self.adapter_name
|
146
|
-
'
|
146
|
+
'postgresql'
|
147
147
|
end
|
148
148
|
|
149
149
|
def initialize
|
@@ -152,7 +152,7 @@ module Redmine::Installer::Plugin
|
|
152
152
|
end
|
153
153
|
|
154
154
|
def command(comm, file)
|
155
|
-
%{PGPASSWORD="#{get('password')}" #{comm} -i -h #{get('host')} -p #{get('port')} -U #{get('username')} -Fc -f #{file}}
|
155
|
+
%{PGPASSWORD="#{get('password')}" #{comm} -i -h #{get('host')} -p #{get('port')} -U #{get('username')} -Fc -f #{file} #{get('database')}}
|
156
156
|
end
|
157
157
|
|
158
158
|
def command_for_backup(file)
|
@@ -11,20 +11,34 @@ module Redmine::Installer::Plugin
|
|
11
11
|
records.include?(self.class_name.downcase)
|
12
12
|
end
|
13
13
|
|
14
|
-
|
14
|
+
end
|
15
|
+
end
|
15
16
|
|
16
|
-
|
17
|
+
##
|
18
|
+
# EasyProject
|
19
|
+
#
|
20
|
+
# http://www.easyredmine.com
|
21
|
+
#
|
22
|
+
# Easy Redmine is complex project management web application best suited to project teams between
|
23
|
+
# 10 - 100 users. Whether you manage just yourself or a huge team of software developers,
|
24
|
+
# Easy Redmine will provide all necessary project management features to complete your projects
|
25
|
+
# on time, scope and budget.
|
26
|
+
#
|
27
|
+
class EasyProject < Redmine::Installer::Plugin::RedminePlugin
|
17
28
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
def self.upgrade
|
25
|
-
install
|
26
|
-
end
|
29
|
+
class Redmine::Installer::Command
|
30
|
+
def rake_easyproject_install(env)
|
31
|
+
run(RAKE, 'easyproject:install', get_rails_env(env), :'plugin.redmine_plugin.easyproject.install')
|
27
32
|
end
|
33
|
+
end
|
34
|
+
|
35
|
+
RAKE_EASYPROJECT_INSTALL = 'bundle exec rake RAILS_ENV=production'
|
36
|
+
|
37
|
+
def self.install(base)
|
38
|
+
command.rake_easyproject_install(base.env) if am_i_there?
|
39
|
+
end
|
28
40
|
|
41
|
+
def self.upgrade(base)
|
42
|
+
install(base)
|
29
43
|
end
|
30
44
|
end
|
@@ -13,7 +13,9 @@ module Redmine::Installer::Step
|
|
13
13
|
command.rake_generate_secret_token(base.env)
|
14
14
|
|
15
15
|
# Other plugins can have post-install procedure
|
16
|
-
plugin::RedminePlugin.all.each
|
16
|
+
plugin::RedminePlugin.all.each do |plugin|
|
17
|
+
plugin.install(base)
|
18
|
+
end
|
17
19
|
end
|
18
20
|
end
|
19
21
|
|
@@ -30,7 +30,9 @@ module Redmine::Installer::Step
|
|
30
30
|
command.rake_generate_secret_token(base.env)
|
31
31
|
|
32
32
|
# Other plugins can have post-install procedure
|
33
|
-
plugin::RedminePlugin.all.each
|
33
|
+
plugin::RedminePlugin.all.each do |plugin|
|
34
|
+
plugin.upgrade(base)
|
35
|
+
end
|
34
36
|
end
|
35
37
|
|
36
38
|
# Delete content of redmine_root
|
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'fileutils'
|
2
2
|
require 'notifier'
|
3
3
|
require 'ansi'
|
4
|
+
require 'io/console'
|
4
5
|
|
5
6
|
module Redmine::Installer
|
6
7
|
module Utils
|
@@ -113,8 +114,14 @@ module Redmine::Installer
|
|
113
114
|
end
|
114
115
|
|
115
116
|
# Instead of `super` take only what I need
|
116
|
-
def gets
|
117
|
-
|
117
|
+
def gets(hide=false)
|
118
|
+
if hide
|
119
|
+
input = $stdin.noecho{|io| io.gets}.to_s.chomp
|
120
|
+
$stdout.puts # noecho is also for enter
|
121
|
+
input
|
122
|
+
else
|
123
|
+
$stdin.gets.to_s.chomp
|
124
|
+
end
|
118
125
|
end
|
119
126
|
|
120
127
|
# Asking on 1 line
|
@@ -134,7 +141,7 @@ module Redmine::Installer
|
|
134
141
|
end
|
135
142
|
|
136
143
|
say(message)
|
137
|
-
input = gets
|
144
|
+
input = gets(options[:hide])
|
138
145
|
|
139
146
|
# Ctrl-D or enter was pressed
|
140
147
|
return default if input.empty?
|
data/lib/redmine-installer.rb
CHANGED
data/redmine-installer.gemspec
CHANGED
@@ -20,9 +20,12 @@ Gem::Specification.new do |spec|
|
|
20
20
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
21
21
|
spec.require_paths = ["lib"]
|
22
22
|
|
23
|
-
spec.add_runtime_dependency "gli"
|
24
23
|
spec.add_runtime_dependency "ansi"
|
24
|
+
spec.add_runtime_dependency "gli"
|
25
|
+
spec.add_runtime_dependency "i18n"
|
25
26
|
spec.add_runtime_dependency "notifier"
|
27
|
+
spec.add_runtime_dependency "ruby-progressbar"
|
28
|
+
spec.add_runtime_dependency "rubyzip"
|
26
29
|
|
27
30
|
spec.add_development_dependency "bundler", "~> 1.6"
|
28
31
|
spec.add_development_dependency "rake"
|
metadata
CHANGED
@@ -1,15 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: redmine-installer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ondřej Moravčík
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-11-
|
11
|
+
date: 2014-11-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: ansi
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
13
27
|
- !ruby/object:Gem::Dependency
|
14
28
|
name: gli
|
15
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -25,7 +39,7 @@ dependencies:
|
|
25
39
|
- !ruby/object:Gem::Version
|
26
40
|
version: '0'
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
42
|
+
name: i18n
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
30
44
|
requirements:
|
31
45
|
- - '>='
|
@@ -52,6 +66,34 @@ dependencies:
|
|
52
66
|
- - '>='
|
53
67
|
- !ruby/object:Gem::Version
|
54
68
|
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: ruby-progressbar
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - '>='
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - '>='
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rubyzip
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - '>='
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
55
97
|
- !ruby/object:Gem::Dependency
|
56
98
|
name: bundler
|
57
99
|
requirement: !ruby/object:Gem::Requirement
|