redmine-installer 1.0.2 → 1.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +92 -76
- data/bin/redmine +1 -0
- data/lib/redmine-installer.rb +0 -1
- data/lib/redmine-installer/command.rb +1 -1
- data/lib/redmine-installer/locales/cs.yml +2 -1
- data/lib/redmine-installer/locales/en.yml +2 -1
- data/lib/redmine-installer/plugins/database.rb +13 -1
- data/lib/redmine-installer/plugins/email_sending.rb +1 -1
- data/lib/redmine-installer/steps/backup.rb +4 -1
- data/lib/redmine-installer/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1cbbf5830bfd93d5c77dc0a7800c86a1b5a18d02
|
4
|
+
data.tar.gz: b1eae7e8eba3dbd5b4087a31a4401c295532f886
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a95f8f3bee4ebe2382286580db9dab236c2b41fe6f923989984db5e9f79dab8ea6525d00f389aa48e5cbb32853e200bc770176bce0550346269352acf004f958
|
7
|
+
data.tar.gz: 67e5b24065eb29494644ca2c0d4a070933c4ad2def7c2a50993524fa17ae3d13566a1daa2e11909c7be615ef7b06c5a85c17608f65e67665bb326cbbc85262e7
|
data/README.md
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
# Redmine::Installer
|
2
2
|
|
3
|
+
Easy way how to install/upgrade Redmine or plugin
|
4
|
+
|
3
5
|
## Installation
|
4
6
|
|
5
7
|
Add this line to your application's Gemfile:
|
@@ -20,13 +22,51 @@ Or install it yourself as:
|
|
20
22
|
$ gem install redmine-installer
|
21
23
|
```
|
22
24
|
|
25
|
+
## Examples
|
26
|
+
|
27
|
+
Simple install and ugrade
|
28
|
+
|
29
|
+
```
|
30
|
+
$ wget http://www.redmine.org/releases/redmine-2.3.0.zip
|
31
|
+
$ wget http://www.redmine.org/releases/redmine-2.5.0.zip
|
32
|
+
|
33
|
+
$ redmine install redmine-2.3.0.zip
|
34
|
+
$ redmine upgrade redmine-2.5.0.zip
|
35
|
+
```
|
36
|
+
|
37
|
+
Set languages
|
38
|
+
|
39
|
+
```
|
40
|
+
$ redmine --locale cs install redmine-2.3.0.zip
|
41
|
+
```
|
42
|
+
|
43
|
+
Install from git
|
44
|
+
|
45
|
+
```
|
46
|
+
$ redmine install git@github.com:redmine/redmine.git --source git
|
47
|
+
$ redmine upgrade --source git
|
48
|
+
```
|
49
|
+
|
50
|
+
Install from git with specific branch
|
51
|
+
|
52
|
+
```
|
53
|
+
$ redmine install git@github.com:redmine/redmine.git --source git --branch 2.3-stable
|
54
|
+
$ redmine upgrade --source git
|
55
|
+
```
|
56
|
+
|
23
57
|
## Usage
|
24
58
|
|
25
59
|
```
|
26
|
-
redmine
|
60
|
+
redmine GLOBAL_FLAGS ACTION ARGUMENTS FLAGS
|
27
61
|
```
|
28
62
|
|
29
|
-
|
63
|
+
See help for more details
|
64
|
+
|
65
|
+
```
|
66
|
+
redmine help
|
67
|
+
```
|
68
|
+
|
69
|
+
#### Global flags
|
30
70
|
|
31
71
|
<table>
|
32
72
|
<thead>
|
@@ -45,7 +85,7 @@ redmine GLOBAL_ARGUMENTS ACTION ARGUMENTS
|
|
45
85
|
<tr>
|
46
86
|
<td>--locale / -l</td>
|
47
87
|
<td>en</td>
|
48
|
-
<td>
|
88
|
+
<td>language for application</td>
|
49
89
|
</tr>
|
50
90
|
</tbody>
|
51
91
|
</table>
|
@@ -57,9 +97,7 @@ Some commands have defined shortcut for quicker access. Fox example:
|
|
57
97
|
|
58
98
|
```
|
59
99
|
redmine install package
|
60
|
-
|
61
100
|
# is equal as
|
62
|
-
|
63
101
|
redmine i package
|
64
102
|
```
|
65
103
|
|
@@ -71,7 +109,7 @@ u -> upgrade
|
|
71
109
|
b -> backup
|
72
110
|
```
|
73
111
|
|
74
|
-
#### Common
|
112
|
+
#### Common flags for all command
|
75
113
|
|
76
114
|
<table>
|
77
115
|
<thead>
|
@@ -86,46 +124,50 @@ b -> backup
|
|
86
124
|
<td>--environment / --env / -e</td>
|
87
125
|
<td>production</td>
|
88
126
|
<td>
|
89
|
-
environment for redmine
|
127
|
+
environment for redmine<br>
|
128
|
+
you can set more environment like: <br>
|
129
|
+
<i>--env env1,env2,env3</i>
|
90
130
|
</td>
|
91
131
|
</tr>
|
92
132
|
</tbody>
|
93
133
|
</table>
|
94
134
|
|
95
|
-
|
135
|
+
## Install
|
96
136
|
|
97
|
-
|
137
|
+
Install new redmine instance from archive or git.
|
98
138
|
|
99
139
|
#### Steps:
|
100
140
|
|
101
|
-
-
|
102
|
-
-
|
103
|
-
-
|
104
|
-
-
|
105
|
-
-
|
106
|
-
-
|
107
|
-
-
|
141
|
+
- **1. Redmine root** - insert _path_ where redmine will be installed
|
142
|
+
- _path_ must point to the folder
|
143
|
+
- target folder must be writable
|
144
|
+
- **2. Load package** - loading package to temporary folder
|
145
|
+
- **3. Database configuration** - you can choose type of DB which you want to use
|
146
|
+
- currently: MySQL or PostgreSQL
|
147
|
+
- you can also skip this step and run migration manually
|
148
|
+
- **4. Email sending configuration** - you can set email configuration
|
149
|
+
- **5. Install** - install commands are executed
|
150
|
+
- **6. Moving redmine** - redmine is moved from temporarily folder to given _redmine\_root_
|
151
|
+
- **7. Webserve configuration** - you can generate setting from selected webserver
|
108
152
|
|
109
153
|
#### From archive
|
110
154
|
|
111
155
|
Supported archives are **.zip** and **.tar.gz**.
|
112
156
|
|
113
157
|
```
|
114
|
-
# minimal
|
115
158
|
redmine install PATH_TO_PACKAGE
|
116
159
|
|
117
|
-
#
|
118
|
-
redmine install PATH_TO_PACKAGE --env
|
160
|
+
# with environment
|
161
|
+
redmine install PATH_TO_PACKAGE --env environment
|
119
162
|
```
|
120
163
|
|
121
164
|
#### From git
|
122
165
|
|
123
166
|
```
|
124
|
-
# minimal
|
125
167
|
redmine install GIT_REPO --source git
|
126
168
|
|
127
|
-
#
|
128
|
-
redmine install GIT_REPO --source git --branch GIT_BRANCH --env
|
169
|
+
# with specific branch
|
170
|
+
redmine install GIT_REPO --source git --branch GIT_BRANCH --env environment
|
129
171
|
```
|
130
172
|
|
131
173
|
##### Arguments
|
@@ -133,7 +175,7 @@ redmine install GIT_REPO --source git --branch GIT_BRANCH --env ENV1,ENV2,ENV3
|
|
133
175
|
<table>
|
134
176
|
<thead>
|
135
177
|
<tr>
|
136
|
-
<th>
|
178
|
+
<th>argument</th>
|
137
179
|
<th>default</th>
|
138
180
|
<th>description</th>
|
139
181
|
</tr>
|
@@ -143,18 +185,18 @@ redmine install GIT_REPO --source git --branch GIT_BRANCH --env ENV1,ENV2,ENV3
|
|
143
185
|
<td>--branch / -b</td>
|
144
186
|
<td>master</td>
|
145
187
|
<td>
|
146
|
-
|
188
|
+
git branch
|
147
189
|
</td>
|
148
190
|
</tr>
|
149
191
|
</tbody>
|
150
192
|
</table>
|
151
193
|
|
152
194
|
|
153
|
-
|
195
|
+
## Upgrade
|
154
196
|
|
155
|
-
|
197
|
+
Upgrading existing instance of redmine with archive or defined git repository. If your redmine contain plugins which are not part of new package - all these plugins will be kept otherwise are replaced with those from package.
|
156
198
|
|
157
|
-
Final step will ask you if you want save steps configuration. If you say
|
199
|
+
Final step will ask you if you want save steps configuration. If you say _YES_, configuration will be stored as profile so next time you can upgrade redmine faster.
|
158
200
|
|
159
201
|
```
|
160
202
|
redmine upgrade PACKAGE --profile PROFILE_ID
|
@@ -164,37 +206,38 @@ Profiles are stored on *HOME_FOLDER/.redmine-installer-profiles.yml*.
|
|
164
206
|
|
165
207
|
#### Steps:
|
166
208
|
|
167
|
-
-
|
168
|
-
-
|
169
|
-
-
|
170
|
-
-
|
171
|
-
-
|
172
|
-
-
|
173
|
-
-
|
209
|
+
- **1. Redmine root** - where is redmine located
|
210
|
+
- **2. Load package** - loading package to temporary folder
|
211
|
+
- **3. Validation** - validation of current redmine
|
212
|
+
- **4. Backup** - backup current instance
|
213
|
+
- **full backup**: complete _redmine\_root_ with database
|
214
|
+
- **backup** (default): only configuration file with database
|
215
|
+
- **database**: only database
|
216
|
+
- **5. Upgrading** - upgrade commands are executed
|
217
|
+
- **6. Moving redmine** - current redmine is upgraded by new files
|
218
|
+
- **7. Profile saving** - generating profile (see profile section)
|
174
219
|
|
175
220
|
|
176
221
|
#### From archive
|
177
222
|
|
178
223
|
```
|
179
|
-
# minimal
|
180
224
|
redmine upgrade PATH_TO_PACKAGE
|
181
225
|
|
182
|
-
#
|
183
|
-
redmine upgrade PATH_TO_PACKAGE --env
|
226
|
+
# with environment
|
227
|
+
redmine upgrade PATH_TO_PACKAGE --env environment
|
184
228
|
```
|
185
229
|
|
186
230
|
#### From git
|
187
231
|
|
188
232
|
```
|
189
|
-
# minimal
|
190
233
|
redmine upgrade --source git
|
191
234
|
|
192
|
-
#
|
193
|
-
redmine upgrade --source git --env
|
235
|
+
# with environment
|
236
|
+
redmine upgrade --source git --env environment
|
194
237
|
```
|
195
238
|
|
196
239
|
|
197
|
-
|
240
|
+
## Backup
|
198
241
|
|
199
242
|
```
|
200
243
|
redmine backup
|
@@ -202,10 +245,13 @@ redmine backup
|
|
202
245
|
|
203
246
|
#### Steps:
|
204
247
|
|
205
|
-
-
|
206
|
-
-
|
207
|
-
-
|
208
|
-
-
|
248
|
+
- **1. Redmine root** - where is redmine located
|
249
|
+
- **2. Validation** - validation of current redmine
|
250
|
+
- **3. Backup** - backup current instance
|
251
|
+
- **full backup**: complete _redmine\_root_ with database
|
252
|
+
- **backup** (default): only configuration file with database
|
253
|
+
- **database**: only database
|
254
|
+
- **4. Profile saving** - generating profile (see profile section)
|
209
255
|
|
210
256
|
You can choose one of 3 types.
|
211
257
|
|
@@ -239,35 +285,5 @@ You can choose one of 3 types.
|
|
239
285
|
</tbody>
|
240
286
|
</table>
|
241
287
|
|
242
|
-
## Examples
|
243
|
-
|
244
|
-
Simple install and ugrade
|
245
|
-
|
246
|
-
```
|
247
|
-
$ wget http://www.redmine.org/releases/redmine-2.3.0.zip
|
248
|
-
$ wget http://www.redmine.org/releases/redmine-2.5.0.zip
|
249
|
-
|
250
|
-
$ redmine install redmine-2.3.0.zip
|
251
|
-
$ redmine upgrade redmine-2.5.0.zip
|
252
|
-
```
|
253
|
-
|
254
|
-
Set languages
|
255
|
-
|
256
|
-
```
|
257
|
-
$ redmine --locale cs install redmine-2.3.0.zip
|
258
|
-
```
|
259
288
|
|
260
|
-
|
261
|
-
|
262
|
-
```
|
263
|
-
$ redmine install git@github.com:redmine/redmine.git --source git
|
264
|
-
$ redmine upgrade --source git
|
265
|
-
```
|
266
|
-
|
267
|
-
Install from git with specific branch
|
268
|
-
|
269
|
-
```
|
270
|
-
$ redmine install git@github.com:redmine/redmine.git --source git --branch 2.3-stable
|
271
|
-
$ redmine upgrade --source git
|
272
|
-
```
|
273
|
-
|
289
|
+
|
data/bin/redmine
CHANGED
data/lib/redmine-installer.rb
CHANGED
@@ -49,7 +49,7 @@ module Redmine::Installer
|
|
49
49
|
if confirm(:do_you_want_repeat_command, false)
|
50
50
|
return run(*_args)
|
51
51
|
else
|
52
|
-
|
52
|
+
error(:command_exit_with_error, command: command)
|
53
53
|
end
|
54
54
|
end
|
55
55
|
|
@@ -9,7 +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>
|
12
|
+
command_exit_with_error: 'Příkaz skončil s chybou: <bright>%{command}</bright>'
|
13
13
|
dir_not_exist_and_cannot_be_created: 'Složka %{dir} neexistuje a nemůže být vytvořena'
|
14
14
|
dir_is_not_writeable: 'Složka <bright>%{dir}</bright> není zapisovatelná'
|
15
15
|
do_you_want_repeat_command: 'Chcete opakovat příkaz?'
|
@@ -31,6 +31,7 @@ cs:
|
|
31
31
|
only_database: 'Pouze databáze'
|
32
32
|
path_for_redmine_root: 'Cesta pro redmine_root'
|
33
33
|
powered_by: 'Powered by EasyRedmine'
|
34
|
+
restoring_database: '... Obnova database'
|
34
35
|
skip: 'Přeskočit'
|
35
36
|
try_again: 'zkusit znova'
|
36
37
|
what_dir_for_backups: 'Jaká složka pro zálohu?'
|
@@ -10,7 +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>
|
13
|
+
command_exit_with_error: 'Command exit with an error: <bright>%{command}</bright>'
|
14
14
|
dir_not_exist_and_cannot_be_created: 'Dir %{dir} does not exist and can not be created'
|
15
15
|
dir_is_not_writeable: 'Dir <bright>%{dir}</bright> is not writeable'
|
16
16
|
do_you_want_repeat_command: 'Do you want repeat this command?'
|
@@ -32,6 +32,7 @@ en:
|
|
32
32
|
only_database: 'Only database'
|
33
33
|
path_for_redmine_root: 'Path for redmine_root'
|
34
34
|
powered_by: 'Powered by EasyRedmine'
|
35
|
+
restoring_database: '... Restoring database'
|
35
36
|
skip: 'Skip'
|
36
37
|
try_again: 'try again'
|
37
38
|
what_dir_for_backups: 'What dir for backups?'
|
@@ -35,7 +35,9 @@ module Redmine::Installer::Plugin
|
|
35
35
|
end
|
36
36
|
|
37
37
|
def self.restore_all(redmine_root, backup_dir)
|
38
|
-
load_all(redmine_root)
|
38
|
+
databases = load_all(redmine_root)
|
39
|
+
databases.uniq! {|d| d.params['database'].value}
|
40
|
+
databases.each do |klass|
|
39
41
|
klass.restore(backup_dir)
|
40
42
|
end
|
41
43
|
end
|
@@ -102,6 +104,7 @@ module Redmine::Installer::Plugin
|
|
102
104
|
# More enviroments can use the same database
|
103
105
|
return unless File.exist?(file)
|
104
106
|
|
107
|
+
Kernel.system(command_for_empty)
|
105
108
|
Kernel.system(command_for_restore(file))
|
106
109
|
end
|
107
110
|
|
@@ -128,6 +131,10 @@ module Redmine::Installer::Plugin
|
|
128
131
|
"-h #{params['host'].value} -P #{get('port')} -u #{get('username')} -p#{get('password')} #{get('database')}"
|
129
132
|
end
|
130
133
|
|
134
|
+
def command_for_empty
|
135
|
+
"mysql #{command_args} -e 'drop database #{get('database')}; create database #{get('database')};'"
|
136
|
+
end
|
137
|
+
|
131
138
|
def command_for_backup(file)
|
132
139
|
"mysqldump --add-drop-database #{command_args} > #{file}"
|
133
140
|
end
|
@@ -155,6 +162,11 @@ module Redmine::Installer::Plugin
|
|
155
162
|
%{PGPASSWORD="#{get('password')}" #{comm} -i -h #{get('host')} -p #{get('port')} -U #{get('username')} -Fc -f #{file} #{get('database')}}
|
156
163
|
end
|
157
164
|
|
165
|
+
def command_for_empty
|
166
|
+
# %{PGPASSWORD="#{get('password')}" psql -i -h #{get('host')} -p #{get('port')} -U #{get('username')} -c 'drop database #{get('database')}; create database #{get('database')};'}
|
167
|
+
''
|
168
|
+
end
|
169
|
+
|
158
170
|
def command_for_backup(file)
|
159
171
|
command('pg_dump', file)
|
160
172
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
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.3
|
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-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ansi
|