redmine-installer 2.2.3 → 2.2.4
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/lib/redmine-installer/configuration.rb +5 -3
- data/lib/redmine-installer/version.rb +1 -1
- data/spec/installer_helper.rb +97 -3
- data/spec/lib/install_spec.rb +2 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ec96d4984b4c45e21344787cd394b022d02bd4d856e5b8a4b2bd2460d4cb24a2
|
4
|
+
data.tar.gz: 58b94762b3e044099d45336fafbe878f16eac2fe6d0b964f96ead4c30cbdfdb9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f119d9a2243485cb25c3c42272be9a83470faa73ebde07f59a17eafe7bdb239e9f4a20b12e784b47130d322508a9fd72de956c26dd85ff9b61cdd9ecdd335fb3
|
7
|
+
data.tar.gz: 2d636c5c2ae93e696437e50f875fc739d3e5f45377f88c28378ebda481d29b18717c477e0f416a1eac732d1f617852f2d8a176c3265cb8219f56b7501580cf29
|
@@ -33,7 +33,7 @@ module RedmineInstaller
|
|
33
33
|
end
|
34
34
|
|
35
35
|
def get_parameters
|
36
|
-
@
|
36
|
+
@user_name = prompt.ask('Username:', required: true)
|
37
37
|
@password = prompt.mask('Password:', required: true)
|
38
38
|
end
|
39
39
|
|
@@ -66,10 +66,11 @@ module RedmineInstaller
|
|
66
66
|
settings['port'] = @port
|
67
67
|
|
68
68
|
# Optional
|
69
|
-
settings['authentication'] = @authentication unless @authentication.to_s.empty?
|
69
|
+
settings['authentication'] = @authentication.to_sym unless @authentication.to_s.empty?
|
70
70
|
settings['domain'] = @domain unless @domain.to_s.empty?
|
71
71
|
settings['user_name'] = @user_name unless @user_name.to_s.empty?
|
72
72
|
settings['password'] = @password unless @password.to_s.empty?
|
73
|
+
settings['tls'] = @enable_tls unless @enable_tls.to_s.empty?
|
73
74
|
settings['enable_starttls_auto'] = @enable_starttls unless @enable_starttls.to_s.empty?
|
74
75
|
settings['openssl_verify_mode'] = @openssl_verify unless @openssl_verify.to_s.empty?
|
75
76
|
|
@@ -77,7 +78,7 @@ module RedmineInstaller
|
|
77
78
|
end
|
78
79
|
|
79
80
|
def to_s
|
80
|
-
"<#{class_name} #{@
|
81
|
+
"<#{class_name} #{@user_name}@#{@address}:#{@port}>"
|
81
82
|
end
|
82
83
|
|
83
84
|
end
|
@@ -115,6 +116,7 @@ module RedmineInstaller
|
|
115
116
|
@domain = prompt.ask('Domain:')
|
116
117
|
@authentication = prompt.ask('Authentication:')
|
117
118
|
@openssl_verify = prompt.ask('Openssl verify mode:')
|
119
|
+
@enable_tls = prompt.yes?('Enable tls?:', default: false)
|
118
120
|
@enable_starttls = prompt.yes?('Enable starttls?:', default: true)
|
119
121
|
end
|
120
122
|
|
data/spec/installer_helper.rb
CHANGED
@@ -27,13 +27,53 @@ module InstallerHelper
|
|
27
27
|
# @process.write("\r\n")
|
28
28
|
end
|
29
29
|
|
30
|
+
def go_up
|
31
|
+
@process.write("\e[A")
|
32
|
+
end
|
33
|
+
|
30
34
|
def go_down
|
31
35
|
# write(TTY::Reader::Keys.keys[:down])
|
32
36
|
# write("\e[B")
|
33
37
|
@process.write("\e[B")
|
34
38
|
end
|
35
39
|
|
36
|
-
def
|
40
|
+
def email_username
|
41
|
+
'username'
|
42
|
+
end
|
43
|
+
|
44
|
+
def email_password
|
45
|
+
'password'
|
46
|
+
end
|
47
|
+
|
48
|
+
def email_address
|
49
|
+
'address'
|
50
|
+
end
|
51
|
+
|
52
|
+
def email_port
|
53
|
+
'123'
|
54
|
+
end
|
55
|
+
|
56
|
+
def email_domain
|
57
|
+
'domain'
|
58
|
+
end
|
59
|
+
|
60
|
+
def email_authentication
|
61
|
+
'plain'
|
62
|
+
end
|
63
|
+
|
64
|
+
def email_openssl_verify_mode
|
65
|
+
'none'
|
66
|
+
end
|
67
|
+
|
68
|
+
def email_enable_tls
|
69
|
+
false
|
70
|
+
end
|
71
|
+
|
72
|
+
def email_enable_starttls
|
73
|
+
true
|
74
|
+
end
|
75
|
+
|
76
|
+
def expected_successful_configuration(email: false)
|
37
77
|
expected_output('Creating database configuration')
|
38
78
|
expected_output('What database do you want use?')
|
39
79
|
expected_output('‣ MySQL')
|
@@ -62,8 +102,44 @@ module InstallerHelper
|
|
62
102
|
|
63
103
|
expected_output('Creating email configuration')
|
64
104
|
expected_output('Which service to use for email sending?')
|
65
|
-
|
66
|
-
|
105
|
+
|
106
|
+
if email
|
107
|
+
go_up
|
108
|
+
go_up
|
109
|
+
go_up
|
110
|
+
expected_output('‣ Custom configuration (SMTP)')
|
111
|
+
select_choice
|
112
|
+
|
113
|
+
expected_output('Username:')
|
114
|
+
write(email_username)
|
115
|
+
|
116
|
+
expected_output('Password:')
|
117
|
+
write(email_password)
|
118
|
+
|
119
|
+
expected_output('Address:')
|
120
|
+
write(email_address)
|
121
|
+
|
122
|
+
expected_output('Port:')
|
123
|
+
write(email_port)
|
124
|
+
|
125
|
+
expected_output('Domain:')
|
126
|
+
write(email_domain)
|
127
|
+
|
128
|
+
expected_output('Authentication:')
|
129
|
+
write(email_authentication)
|
130
|
+
|
131
|
+
expected_output('Openssl verify mode:')
|
132
|
+
write(email_openssl_verify_mode)
|
133
|
+
|
134
|
+
expected_output('Enable tls?: (y/N)')
|
135
|
+
write(email_enable_tls ? 'y' : 'n')
|
136
|
+
|
137
|
+
expected_output('Enable starttls?: (Y/n)')
|
138
|
+
write(email_enable_starttls ? 'y' : 'n')
|
139
|
+
else
|
140
|
+
expected_output('‣ Nothing')
|
141
|
+
select_choice
|
142
|
+
end
|
67
143
|
end
|
68
144
|
|
69
145
|
def expected_successful_installation_or_upgrade(db_creating: false, after_create: nil)
|
@@ -103,6 +179,24 @@ module InstallerHelper
|
|
103
179
|
end
|
104
180
|
end
|
105
181
|
|
182
|
+
def expected_email_configuration
|
183
|
+
Dir.chdir(@redmine_root) do
|
184
|
+
configuration = YAML.load_file('config/configuration.yml')['default']['email_delivery']
|
185
|
+
smtp_settings = configuration['smtp_settings']
|
186
|
+
|
187
|
+
expect(configuration['delivery_method']).to eq(:smtp)
|
188
|
+
expect(smtp_settings['address']).to eq(email_address)
|
189
|
+
expect(smtp_settings['port']).to eq(email_port.to_i)
|
190
|
+
expect(smtp_settings['authentication']).to eq(email_authentication.to_sym)
|
191
|
+
expect(smtp_settings['domain']).to eq(email_domain)
|
192
|
+
expect(smtp_settings['user_name']).to eq(email_username)
|
193
|
+
expect(smtp_settings['password']).to eq(email_password)
|
194
|
+
expect(smtp_settings['tls']).to eq(email_enable_tls)
|
195
|
+
expect(smtp_settings['enable_starttls_auto']).to eq(email_enable_starttls)
|
196
|
+
expect(smtp_settings['openssl_verify_mode']).to eq(email_openssl_verify_mode)
|
197
|
+
end
|
198
|
+
end
|
199
|
+
|
106
200
|
def wait_for_stdin_buffer
|
107
201
|
sleep 0.5
|
108
202
|
end
|
data/spec/lib/install_spec.rb
CHANGED
@@ -59,10 +59,11 @@ RSpec.describe RedmineInstaller::Install, command: 'install' do
|
|
59
59
|
|
60
60
|
expected_output('Extracting redmine package')
|
61
61
|
|
62
|
-
expected_successful_configuration
|
62
|
+
expected_successful_configuration(email: true)
|
63
63
|
expected_successful_installation
|
64
64
|
|
65
65
|
expected_redmine_version('3.4.5')
|
66
|
+
expected_email_configuration
|
66
67
|
end
|
67
68
|
|
68
69
|
it 'download redmine', args: ['v3.4.5'] do
|
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: 2.2.
|
4
|
+
version: 2.2.4
|
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: 2018-
|
11
|
+
date: 2018-11-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: commander
|