Skip to content

Commit 12be27b

Browse files
author
Yevhen Miroshnychenko
authored
MCLOUD-6294: If Mysql set as DB docker set up 3 split DB by default (#229)
1 parent 3624506 commit 12be27b

File tree

2 files changed

+36
-12
lines changed

2 files changed

+36
-12
lines changed

src/Config/Source/CliSource.php

Lines changed: 35 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -70,17 +70,29 @@ class CliSource implements SourceInterface
7070
* @var array
7171
*/
7272
private static $enableOptionsMap = [
73-
self::OPTION_PHP => [self::PHP],
73+
self::OPTION_PHP => [
74+
self::PHP => true
75+
],
7476
self::OPTION_DB => [
75-
self::SERVICES_DB,
76-
self::SERVICES_DB_QUOTE,
77-
self::SERVICES_DB_SALES
77+
self::SERVICES_DB => true,
78+
self::SERVICES_DB_QUOTE => false,
79+
self::SERVICES_DB_SALES => false
80+
],
81+
self::OPTION_NGINX => [
82+
self::SERVICES_NGINX => true
83+
],
84+
self::OPTION_REDIS => [
85+
self::SERVICES_REDIS => true
86+
],
87+
self::OPTION_ES => [
88+
self::SERVICES_ES => true
89+
],
90+
self::OPTION_NODE => [
91+
self::SERVICES_NODE => true
92+
],
93+
self::OPTION_RABBIT_MQ => [
94+
self::SERVICES_RMQ => true
7895
],
79-
self::OPTION_NGINX => [self::SERVICES_NGINX],
80-
self::OPTION_REDIS => [self::SERVICES_REDIS],
81-
self::OPTION_ES => [self::SERVICES_ES],
82-
self::OPTION_NODE => [self::SERVICES_NODE],
83-
self::OPTION_RABBIT_MQ => [self::SERVICES_RMQ],
8496
];
8597

8698
/**
@@ -128,13 +140,25 @@ public function read(): Repository
128140
]);
129141
}
130142

143+
/**
144+
* Loop through options to enable services.
145+
* Each option may have one or more dependencies.
146+
*
147+
* The dependencies must be in sync.
148+
* The dependencies which does not change status, must keep their default status.
149+
*/
131150
foreach (self::$enableOptionsMap as $option => $services) {
132151
if ($value = $this->input->getOption($option)) {
133-
foreach ($services as $service) {
152+
foreach ($services as $service => $status) {
134153
$repository->set([
135-
$service . '.enabled' => true,
136154
$service . '.version' => $value
137155
]);
156+
157+
if ($status === true) {
158+
$repository->set([
159+
$service . '.enabled' => true
160+
]);
161+
}
138162
}
139163
}
140164
}

src/Test/Unit/Config/Dist/GeneratorTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ public function testGenerate(): void
109109
->willReturn('magento2.docker');
110110
$config->expects($this->once())
111111
->method('getPort')
112-
->willReturn(80);
112+
->willReturn('80');
113113
$this->envReaderMock->expects($this->once())
114114
->method('read')
115115
->willReturn([]);

0 commit comments

Comments
 (0)