@scandipwa/magento-scripts 1.16.1 → 2.0.0-alpha.10

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.
Files changed (234) hide show
  1. package/exec.js +71 -0
  2. package/index.js +1 -1
  3. package/lib/commands/cli.js +4 -6
  4. package/lib/commands/execute.js +3 -33
  5. package/lib/commands/import-db.js +1 -1
  6. package/lib/commands/logs.js +1 -1
  7. package/lib/commands/start.js +38 -20
  8. package/lib/commands/status.js +2 -0
  9. package/lib/config/docker.js +103 -85
  10. package/lib/config/get-project-configuration.js +3 -1
  11. package/lib/config/index.js +10 -7
  12. package/lib/config/magento/required-php-extensions/index.js +29 -0
  13. package/lib/config/magento/required-php-extensions/magento-2.3.js +19 -0
  14. package/lib/config/magento/required-php-extensions/magento-2.4.js +29 -0
  15. package/lib/config/php/base-repo.js +3 -0
  16. package/lib/config/php/extensions/apcu.js +12 -0
  17. package/lib/config/php/extensions/bcmath.js +7 -0
  18. package/lib/config/php/extensions/curl.js +11 -0
  19. package/lib/config/php/extensions/gd.js +14 -0
  20. package/lib/config/php/extensions/index.js +18 -2
  21. package/lib/config/php/extensions/intl.js +10 -0
  22. package/lib/config/php/extensions/opcache.js +10 -0
  23. package/lib/config/php/extensions/pdo_mysql.js +7 -0
  24. package/lib/config/php/extensions/soap.js +10 -0
  25. package/lib/config/php/extensions/sodium.js +10 -0
  26. package/lib/config/php/extensions/xdebug.js +8 -5
  27. package/lib/config/php/extensions/xsl.js +10 -0
  28. package/lib/config/php/extensions/zip.js +10 -0
  29. package/lib/config/php/{releases → versions}/index.js +0 -0
  30. package/lib/config/php/versions/php-7.2.js +23 -0
  31. package/lib/config/php/versions/php-7.3.js +23 -0
  32. package/lib/config/php/versions/php-7.4.js +23 -0
  33. package/lib/config/php/versions/php-8.1.js +23 -0
  34. package/lib/config/php-config.js +8 -12
  35. package/lib/config/port-config.js +2 -6
  36. package/lib/config/services/elasticsearch/base-repo.js +3 -0
  37. package/lib/config/services/elasticsearch/default-es-env.js +6 -0
  38. package/lib/config/services/elasticsearch/versions/elasticsearch-6.8.js +19 -0
  39. package/lib/config/services/elasticsearch/versions/index.js +5 -0
  40. package/lib/config/templates/magentorc.template +6 -6
  41. package/lib/config/templates/mariadb.template.cnf +191 -0
  42. package/lib/config/templates/php-fpm.template.conf +3 -3
  43. package/lib/config/templates/php.template.ini +12 -6
  44. package/lib/config/templates/ssl-terminator.template.conf +9 -4
  45. package/lib/config/templates/vscode-launch.template.json +3 -1
  46. package/lib/config/versions/magento-2.3.0.js +10 -5
  47. package/lib/config/versions/magento-2.3.1.js +10 -5
  48. package/lib/config/versions/magento-2.3.2-p1.js +43 -0
  49. package/lib/config/versions/magento-2.3.2-p2.js +10 -5
  50. package/lib/config/versions/magento-2.3.2.js +10 -5
  51. package/lib/config/versions/magento-2.3.3-p1.js +10 -5
  52. package/lib/config/versions/magento-2.3.3.js +10 -5
  53. package/lib/config/versions/magento-2.3.4-p1.js +43 -0
  54. package/lib/config/versions/magento-2.3.4-p2.js +10 -5
  55. package/lib/config/versions/magento-2.3.4.js +10 -5
  56. package/lib/config/versions/magento-2.3.5-p1.js +8 -2
  57. package/lib/config/versions/magento-2.3.5-p2.js +8 -2
  58. package/lib/config/versions/magento-2.3.5.js +8 -2
  59. package/lib/config/versions/magento-2.3.6-p1.js +8 -2
  60. package/lib/config/versions/magento-2.3.6.js +8 -2
  61. package/lib/config/versions/magento-2.3.7-p1.js +8 -2
  62. package/lib/config/versions/magento-2.3.7-p2.js +8 -2
  63. package/lib/config/versions/magento-2.3.7-p3.js +8 -2
  64. package/lib/config/versions/magento-2.3.7-p4.js +44 -0
  65. package/lib/config/versions/magento-2.3.7.js +8 -2
  66. package/lib/config/versions/magento-2.4.0-p1.js +9 -3
  67. package/lib/config/versions/magento-2.4.0.js +9 -3
  68. package/lib/config/versions/magento-2.4.1-p1.js +6 -5
  69. package/lib/config/versions/magento-2.4.1.js +9 -2
  70. package/lib/config/versions/magento-2.4.2-p1.js +6 -5
  71. package/lib/config/versions/magento-2.4.2-p2.js +6 -6
  72. package/lib/config/versions/magento-2.4.2.js +6 -6
  73. package/lib/config/versions/magento-2.4.3-p1.js +7 -7
  74. package/lib/config/versions/magento-2.4.3-p2.js +7 -7
  75. package/lib/config/versions/magento-2.4.3-p3.js +46 -0
  76. package/lib/config/versions/magento-2.4.3.js +7 -7
  77. package/lib/config/versions/magento-2.4.4-p1.js +46 -0
  78. package/lib/config/versions/magento-2.4.4.js +9 -2
  79. package/lib/config/versions/magento-2.4.5.js +46 -0
  80. package/lib/tasks/cleanup.js +3 -3
  81. package/lib/tasks/composer/index.js +14 -104
  82. package/lib/tasks/database/connect-to-database.js +117 -0
  83. package/lib/tasks/database/create-magento-database.js +18 -0
  84. package/lib/tasks/{mysql → database}/dump-theme-config.js +3 -3
  85. package/lib/tasks/{mysql → database}/fix-db.js +2 -2
  86. package/lib/tasks/{mysql/import-dump-to-mysql.js → database/import-dump-to-database.js} +65 -22
  87. package/lib/tasks/{mysql → database}/import-remote-db/index.js +0 -0
  88. package/lib/tasks/{mysql/import-remote-db/ssh/mysqldump-command.js → database/import-remote-db/ssh/database-dump-command.js} +2 -2
  89. package/lib/tasks/{mysql → database}/import-remote-db/ssh/index.js +0 -0
  90. package/lib/tasks/{mysql → database}/import-remote-db/ssh/readymage.js +4 -4
  91. package/lib/tasks/{mysql → database}/import-remote-db/ssh/regular-server.js +2 -2
  92. package/lib/tasks/{mysql → database}/index.js +2 -2
  93. package/lib/tasks/{mysql → database}/magento-tables.js +0 -0
  94. package/lib/tasks/{mysql → database}/restore-theme-config.js +4 -4
  95. package/lib/tasks/docker/api.d.ts +71 -0
  96. package/lib/tasks/docker/api.js +30 -0
  97. package/lib/tasks/docker/containers/container-api.d.ts +132 -0
  98. package/lib/tasks/docker/containers/container-api.js +163 -0
  99. package/lib/tasks/docker/containers/index.js +19 -0
  100. package/lib/tasks/docker/containers/tasks.js +215 -0
  101. package/lib/tasks/docker/convert-legacy-volumes.js +15 -10
  102. package/lib/tasks/docker/convert-mysql-to-mariadb.js +284 -0
  103. package/lib/tasks/docker/image/image-api.d.ts +34 -0
  104. package/lib/tasks/docker/image/image-api.js +49 -0
  105. package/lib/tasks/docker/image/index.js +5 -0
  106. package/lib/tasks/docker/index.js +1 -13
  107. package/lib/tasks/docker/network/index.js +7 -0
  108. package/lib/tasks/docker/network/network-api.d.ts +103 -0
  109. package/lib/tasks/docker/network/network-api.js +99 -0
  110. package/lib/tasks/docker/{network.js → network/tasks.js} +17 -10
  111. package/lib/tasks/docker/project-image-builder.js +167 -0
  112. package/lib/tasks/docker/volume/index.js +8 -0
  113. package/lib/tasks/docker/{volumes.js → volume/tasks.js} +5 -19
  114. package/lib/tasks/docker/volume/volume-api.d.ts +39 -0
  115. package/lib/tasks/docker/volume/volume-api.js +66 -0
  116. package/lib/tasks/execute.js +97 -0
  117. package/lib/tasks/file-system/create-mariadb-config.js +23 -0
  118. package/lib/tasks/file-system/create-nginx-config.js +2 -3
  119. package/lib/tasks/file-system/create-php-config.js +20 -5
  120. package/lib/tasks/file-system/create-php-fpm-config.js +8 -4
  121. package/lib/tasks/file-system/create-phpstorm-config/exclude-folder-config.js +41 -29
  122. package/lib/tasks/file-system/create-phpstorm-config/index.js +2 -0
  123. package/lib/tasks/file-system/create-phpstorm-config/keys.js +15 -1
  124. package/lib/tasks/file-system/create-phpstorm-config/php-config/index.js +4 -1
  125. package/lib/tasks/file-system/create-phpstorm-config/php-config/php-config.js +3 -3
  126. package/lib/tasks/file-system/create-phpstorm-config/php-config/php-interpreters-config.js +81 -0
  127. package/lib/tasks/file-system/create-phpstorm-config/php-docker-settings-config/index.js +42 -0
  128. package/lib/tasks/file-system/create-phpstorm-config/php-docker-settings-config/php-docker-settings-config.js +9 -0
  129. package/lib/tasks/file-system/create-phpstorm-config/php-docker-settings-config/setup-php-docker-container-settings-config.js +66 -0
  130. package/lib/tasks/file-system/create-phpstorm-config/setup-xml-structure.js +11 -9
  131. package/lib/tasks/file-system/create-phpstorm-config/stylelint-config.js +2 -1
  132. package/lib/tasks/file-system/create-phpstorm-config/workspace-config/composer-settings-config.js +15 -30
  133. package/lib/tasks/file-system/create-phpstorm-config/workspace-config/index.js +24 -5
  134. package/lib/tasks/file-system/create-phpstorm-config/workspace-config/mess-detector-project-configuration-config.js +50 -0
  135. package/lib/tasks/file-system/create-phpstorm-config/workspace-config/php-code-sniffer-project-configuration-config.js +50 -0
  136. package/lib/tasks/file-system/create-phpstorm-config/workspace-config/php-cs-fixer-project-configuration-config.js +50 -0
  137. package/lib/tasks/file-system/create-phpstorm-config/workspace-config/php-debug-general-config.js +15 -15
  138. package/lib/tasks/file-system/create-phpstorm-config/workspace-config/php-server-config.js +29 -3
  139. package/lib/tasks/file-system/create-phpstorm-config/workspace-config/php-stan-project-configuration-config.js.js +50 -0
  140. package/lib/tasks/file-system/create-phpstorm-config/workspace-config/php-workspace-project-configuration-config.js +42 -0
  141. package/lib/tasks/file-system/create-phpstorm-config/workspace-config/psalm-project-configuration-config.js.js +50 -0
  142. package/lib/tasks/file-system/create-phpstorm-config/workspace-config/workspace-config.js +0 -2
  143. package/lib/tasks/file-system/create-ssl-terminator-config.js +4 -2
  144. package/lib/tasks/file-system/create-vscode-config.js +57 -42
  145. package/lib/tasks/file-system/index.js +5 -2
  146. package/lib/tasks/import-dump.js +6 -6
  147. package/lib/tasks/link.js +5 -4
  148. package/lib/tasks/magento/enable-magento-composer-plugins.js +85 -30
  149. package/lib/tasks/magento/install-magento-project.js +32 -63
  150. package/lib/tasks/magento/setup-magento/adjust-full-page-cache.js +4 -4
  151. package/lib/tasks/magento/setup-magento/configure-elasticsearch.js +7 -3
  152. package/lib/tasks/magento/setup-magento/create-admin.js +5 -6
  153. package/lib/tasks/magento/setup-magento/delete-admin-users.js +2 -2
  154. package/lib/tasks/magento/setup-magento/delete-customers.js +4 -4
  155. package/lib/tasks/magento/setup-magento/delete-orders.js +4 -4
  156. package/lib/tasks/magento/setup-magento/disable-2fa.js +3 -5
  157. package/lib/tasks/magento/setup-magento/disable-maintenance-mode.js +3 -4
  158. package/lib/tasks/magento/setup-magento/increase-admin-session-lifetime.js +2 -2
  159. package/lib/tasks/magento/setup-magento/index.js +2 -0
  160. package/lib/tasks/magento/setup-magento/install-magento.js +21 -20
  161. package/lib/tasks/magento/setup-magento/migrate-database.js +7 -14
  162. package/lib/tasks/magento/setup-magento/set-base-url.js +3 -3
  163. package/lib/tasks/magento/setup-magento/set-deployment-mode.js +4 -4
  164. package/lib/tasks/magento/setup-magento/set-url-rewrite.js +2 -2
  165. package/lib/tasks/magento/setup-magento/varnish-config.js +10 -8
  166. package/lib/tasks/magento/setup-magento/waiting-for-varnish.js +130 -3
  167. package/lib/tasks/php/php-container.js +112 -0
  168. package/lib/tasks/php/update-env-php.js +39 -21
  169. package/lib/tasks/php/update-env.php +66 -61
  170. package/lib/tasks/php/working_health_check.php +85 -0
  171. package/lib/tasks/requirements/{composer.js → composer-credentials.js} +3 -1
  172. package/lib/tasks/requirements/docker/index.js +18 -13
  173. package/lib/tasks/requirements/docker/performance.js +54 -0
  174. package/lib/tasks/requirements/docker/version.js +8 -8
  175. package/lib/tasks/requirements/index.js +5 -8
  176. package/lib/tasks/requirements/php-version.js +8 -116
  177. package/lib/tasks/requirements/platform.js +12 -25
  178. package/lib/tasks/start.js +21 -50
  179. package/lib/tasks/status/index.js +8 -12
  180. package/lib/tasks/stop.js +0 -2
  181. package/lib/tasks/theme/install-theme.js +1 -1
  182. package/lib/tasks/theme/link-theme.js +2 -2
  183. package/lib/tasks/theme/symlink-theme.js +2 -3
  184. package/lib/util/config-file-validator.js +27 -13
  185. package/lib/util/config-php-json.js +13 -4
  186. package/lib/util/database.js +7 -7
  187. package/lib/util/dockerfile-builder/build-instructions.js +197 -0
  188. package/lib/util/dockerfile-builder/index.js +276 -0
  189. package/lib/util/dockerfile-builder/types.d.ts +123 -0
  190. package/lib/util/env-php-json.js +10 -6
  191. package/lib/util/exec-async-command.js +3 -9
  192. package/lib/util/execute-in-container.js +63 -0
  193. package/lib/util/macos-version.js +20 -0
  194. package/lib/util/magento-task.js +3 -4
  195. package/lib/util/nginx-logs-parser.js +122 -0
  196. package/lib/util/php-task.js +3 -6
  197. package/lib/util/run-composer.js +6 -14
  198. package/lib/util/run-container-image.js +17 -0
  199. package/lib/util/run-magento.js +6 -14
  200. package/lib/util/run-php.js +6 -17
  201. package/package.json +11 -10
  202. package/typings/context.d.ts +7 -13
  203. package/typings/index.d.ts +67 -85
  204. package/lib/config/composer.js +0 -11
  205. package/lib/config/php/extensions/libsodium.js +0 -36
  206. package/lib/config/php/releases/php-7.2.js +0 -25
  207. package/lib/config/php/releases/php-7.3.js +0 -25
  208. package/lib/config/php/releases/php-7.4.js +0 -23
  209. package/lib/config/php/releases/php-8.1.js +0 -25
  210. package/lib/config/phpbrew.js +0 -12
  211. package/lib/tasks/composer/install-prestissimo.js +0 -103
  212. package/lib/tasks/docker/containers.js +0 -231
  213. package/lib/tasks/execute/index.js +0 -23
  214. package/lib/tasks/mysql/connect-to-mysql.js +0 -114
  215. package/lib/tasks/mysql/create-magento-database.js +0 -18
  216. package/lib/tasks/php/bundled-extensions.js +0 -27
  217. package/lib/tasks/php/compile-options.js +0 -56
  218. package/lib/tasks/php/compile.js +0 -55
  219. package/lib/tasks/php/configure.js +0 -89
  220. package/lib/tasks/php/extensions/disable.js +0 -49
  221. package/lib/tasks/php/extensions/enable.js +0 -52
  222. package/lib/tasks/php/extensions/index.js +0 -80
  223. package/lib/tasks/php/extensions/install.js +0 -54
  224. package/lib/tasks/php/index.js +0 -79
  225. package/lib/tasks/php/install-sodium.js +0 -93
  226. package/lib/tasks/php/update-phpbrew.js +0 -45
  227. package/lib/tasks/php/validate-php.js +0 -67
  228. package/lib/tasks/php-fpm/get-process-id.js +0 -14
  229. package/lib/tasks/php-fpm/index.js +0 -4
  230. package/lib/tasks/php-fpm/start-php-fpm.js +0 -49
  231. package/lib/tasks/php-fpm/stop-php-fpm.js +0 -48
  232. package/lib/tasks/requirements/phpbrew/index.js +0 -61
  233. package/lib/tasks/requirements/phpbrew/install.js +0 -159
  234. package/lib/tasks/requirements/phpbrew/version.js +0 -28
@@ -0,0 +1,191 @@
1
+ # MariaDB database server configuration file.
2
+ #
3
+ # You can copy this file to one of:
4
+ # - "/etc/mysql/my.cnf" to set global options,
5
+ # - "~/.my.cnf" to set user-specific options.
6
+ #
7
+ # One can use all long options that the program supports.
8
+ # Run program with --help to get a list of available options and with
9
+ # --print-defaults to see which it would actually understand and use.
10
+ #
11
+ # For explanations see
12
+ # http://dev.mysql.com/doc/mysql/en/server-system-variables.html
13
+
14
+ # This will be passed to all mysql clients
15
+ # It has been reported that passwords should be enclosed with ticks/quotes
16
+ # escpecially if they contain "#" chars...
17
+ # Remember to edit /etc/mysql/debian.cnf when changing the socket location.
18
+ [client]
19
+ port = 3306
20
+ socket = /var/run/mysqld/mysqld.sock
21
+
22
+ # Here is entries for some specific programs
23
+ # The following values assume you have at least 32M ram
24
+
25
+ # This was formally known as [safe_mysqld]. Both versions are currently parsed.
26
+ [mysqld_safe]
27
+ socket = /var/run/mysqld/mysqld.sock
28
+ nice = 0
29
+
30
+ [mysqld]
31
+ #
32
+ # * Basic Settings
33
+ #
34
+ #user = mysql
35
+ pid-file = /var/run/mysqld/mysqld.pid
36
+ socket = /var/run/mysqld/mysqld.sock
37
+ port = 3306
38
+ basedir = /usr
39
+ datadir = /var/lib/mysql
40
+ tmpdir = /tmp
41
+ lc_messages_dir = /usr/share/mysql
42
+ lc_messages = en_US
43
+ skip-external-locking
44
+ #q
45
+ # Instead of skip-networking the default is now to listen only on
46
+ # localhost which is more compatible and is not less secure.
47
+ # bind-address = 0.0.0.0
48
+ #
49
+ # * Fine Tuning
50
+ #
51
+ max_connections = 100
52
+ connect_timeout = 200
53
+ wait_timeout = 28800
54
+ max_allowed_packet = 1GB
55
+ thread_cache_size = 128
56
+ sort_buffer_size = 4M
57
+ bulk_insert_buffer_size = 16M
58
+ tmp_table_size = 32M
59
+ max_heap_table_size = 32M
60
+ #
61
+ # * MyISAM
62
+ #
63
+ # This replaces the startup script and checks MyISAM tables if needed
64
+ # the first time they are touched. On error, make copy and try a repair.
65
+ myisam_recover_options = BACKUP
66
+ key_buffer_size = 128M
67
+ #open-files-limit = 2000
68
+ table_open_cache = 400
69
+ myisam_sort_buffer_size = 512M
70
+ concurrent_insert = 2
71
+ read_buffer_size = 2M
72
+ read_rnd_buffer_size = 1M
73
+ #
74
+ # * Query Cache Configuration
75
+ #
76
+ # Cache only tiny result sets, so we can fit more in the query cache.
77
+ query_cache_limit = 128K
78
+ query_cache_size = 64M
79
+ # for more write intensive setups, set to DEMAND or OFF
80
+ #query_cache_type = DEMAND
81
+ #
82
+ # * Logging and Replication
83
+ #
84
+ # Both location gets rotated by the cronjob.
85
+ # Be aware that this log type is a performance killer.
86
+ # As of 5.1 you can enable the log at runtime!
87
+ #general_log_file = /var/log/mysql/mysql.log
88
+ #general_log = 1
89
+ #
90
+ # Error logging goes to syslog due to /etc/mysql/conf.d/mysqld_safe_syslog.cnf.
91
+ #
92
+ # we do want to know about network errors and such
93
+ #log_warnings = 2
94
+ #
95
+ # Enable the slow query log to see queries with especially long duration
96
+ #slow_query_log[={0|1}]
97
+ slow_query_log_file = /var/log/mysql/mariadb-slow.log
98
+ long_query_time = 10
99
+ #log_slow_rate_limit = 1000
100
+ #log_slow_verbosity = query_plan
101
+
102
+ #log-queries-not-using-indexes
103
+ #log_slow_admin_statements
104
+ #
105
+ # The following can be used as easy to replay backup logs or for replication.
106
+ # note: if you are setting up a replication slave, see README.Debian about
107
+ # other settings you may need to change.
108
+ #server-id = 1
109
+ #report_host = master1
110
+ #auto_increment_increment = 2
111
+ #auto_increment_offset = 1
112
+ #log_bin = /var/log/mysql/mariadb-bin
113
+ #log_bin_index = /var/log/mysql/mariadb-bin.index
114
+ # not fab for performance, but safer
115
+ #sync_binlog = 1
116
+ expire_logs_days = 10
117
+ max_binlog_size = 100M
118
+ # slaves
119
+ #relay_log = /var/log/mysql/relay-bin
120
+ #relay_log_index = /var/log/mysql/relay-bin.index
121
+ #relay_log_info_file = /var/log/mysql/relay-bin.info
122
+ #log_slave_updates
123
+ #read_only
124
+ #
125
+ # If applications support it, this stricter sql_mode prevents some
126
+ # mistakes like inserting invalid dates etc.
127
+ #sql_mode = NO_ENGINE_SUBSTITUTION,TRADITIONAL
128
+ #
129
+ # * InnoDB
130
+ #
131
+ # InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
132
+ # Read the manual for more InnoDB related options. There are many!
133
+ default_storage_engine = InnoDB
134
+ innodb_buffer_pool_size = 256M
135
+ innodb_log_buffer_size = 8M
136
+ innodb_file_per_table = 1
137
+ innodb_open_files = 400
138
+ innodb_io_capacity = 400
139
+ innodb_flush_method = O_DIRECT
140
+ #
141
+ # * Security Features
142
+ #
143
+ # Read the manual, too, if you want chroot!
144
+ # chroot = /var/lib/mysql/
145
+ #
146
+ # For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
147
+ #
148
+ # ssl-ca=/etc/mysql/cacert.pem
149
+ # ssl-cert=/etc/mysql/server-cert.pem
150
+ # ssl-key=/etc/mysql/server-key.pem
151
+
152
+ #
153
+ # * Galera-related settings
154
+ #
155
+ [galera]
156
+ # Mandatory settings
157
+ #wsrep_on=ON
158
+ #wsrep_provider=
159
+ #wsrep_cluster_address=
160
+ #binlog_format=row
161
+ #default_storage_engine=InnoDB
162
+ #innodb_autoinc_lock_mode=2
163
+ #
164
+ # Allow server to accept connections on all interfaces.
165
+ #
166
+ #bind-address=0.0.0.0
167
+ #
168
+ # Optional setting
169
+ #wsrep_slave_threads=1
170
+ #innodb_flush_log_at_trx_commit=0
171
+
172
+ [mysqldump]
173
+ quick
174
+ quote-names
175
+ max_allowed_packet = 16M
176
+
177
+ [mysql]
178
+ #no-auto-rehash # faster start of mysql but no tab completion
179
+
180
+ [isamchk]
181
+ key_buffer = 16M
182
+
183
+ #
184
+ # * IMPORTANT: Additional settings that can override those from this file!
185
+ # The files must end with '.cnf', otherwise they'll be ignored.
186
+ #
187
+ [mariadb]
188
+ skip-host-cache
189
+ skip-name-resolve
190
+
191
+ !includedir /etc/mysql/conf.d/
@@ -1,5 +1,5 @@
1
1
  [global]
2
-
2
+ daemonize = no
3
3
  log_level = debug
4
4
 
5
5
  [www]
@@ -12,10 +12,10 @@ catch_workers_output = yes
12
12
 
13
13
  pm = ondemand
14
14
  pm.max_children = 32
15
- pm.start_servers = 15
15
+ pm.start_servers = 3
16
16
  pm.max_requests = 5000
17
17
  pm.process_idle_timeout = 10s
18
18
  pm.status_path = /fpmstatus
19
- listen = 127.0.0.1:<%= it.ports.fpm %>
19
+ listen = <%~ it.port %>
20
20
 
21
21
  env[PATH] = $PATH
@@ -1999,28 +1999,34 @@ opcache.save_comments=1
1999
1999
 
2000
2000
  [xdebug]
2001
2001
  <% if (it.debug) { %>
2002
+ error_reporting=E_ALL
2003
+
2004
+ xdebug.idekey=PHPSTORM
2002
2005
 
2003
2006
  <% if (it.isXDebug2) { %>
2004
2007
  xdebug.remote_autostart=1
2005
2008
  xdebug.remote_enable=1
2006
- xdebug.remote_host=127.0.0.1
2007
- xdebug.remote_port=9111
2008
2009
 
2009
- xdebug.idekey=PHPSTORM
2010
+ xdebug.remote_host=<%~ it.hostMachine %>
2011
+
2012
+ xdebug.remote_port=9003
2013
+
2014
+ xdebug.remote_log=<%~ it.mageRoot %>/var/log/xdebug.log
2010
2015
 
2011
2016
  <% } else { %>
2012
2017
 
2013
2018
  xdebug.mode=debug
2014
- xdebug.client_host=localhost
2019
+ xdebug.client_host=<%~ it.hostMachine %>
2020
+
2015
2021
  xdebug.client_port=9003
2016
- xdebug.log=<%~ it.mageRoot %>/var/log/xdebug.log
2017
2022
 
2018
2023
  ; THIS THING WILL BREAK PHP
2019
2024
  ; xdebug.start_with_request=yes
2020
2025
 
2021
2026
  xdebug.discover_client_host=false
2022
2027
  xdebug.start_upon_error=yes
2023
- xdebug.idekey=PHPSTORM
2028
+
2029
+ xdebug.log=<%~ it.mageRoot %>/var/log/xdebug.log
2024
2030
 
2025
2031
  <% } %>
2026
2032
 
@@ -4,7 +4,7 @@ set_real_ip_from 172.0.0.0/8;
4
4
  real_ip_recursive on;
5
5
 
6
6
  upstream app_backend {
7
- server <%= it.hostMachine %>:<% if (it.config.configuration.varnish.enabled) { %><%= it.ports.varnish %><% } else { %><%= it.ports.app %><% } %>;
7
+ server <%= it.hostMachine %>:<% if (!it.debug && it.config.configuration.varnish.enabled) { %><%= it.ports.varnish %><% } else { %><%= it.ports.app %><% } %>;
8
8
 
9
9
  keepalive 16;
10
10
  }
@@ -12,20 +12,25 @@ upstream app_backend {
12
12
  server {
13
13
  listen <%= it.hostPort %>;
14
14
  <% if (it.config.ssl.enabled) { %> listen 443 ssl;
15
- server_name <%= it.networkToBindTo %>;
16
15
 
16
+ ssl on;
17
17
  ssl_certificate /etc/nginx/conf.d/ssl_certificate.pem;
18
18
  ssl_certificate_key /etc/nginx/conf.d/ssl_certificate-key.pem;
19
19
  ssl_protocols TLSv1.2;<% } %>
20
20
 
21
- server_name <% if (it.config.host) { %><%= it.config.host %><% } else { %>_<% } %>;
21
+ <% if (it.config.host) { %>
22
+ server_name <%= it.config.host %><% if (it.config.ssl.enabled) { %> <%= it.networkToBindTo %><% } %>;
23
+ <% } else { %>
24
+ server_name <% if (it.config.ssl.enabled) { %> <%= it.networkToBindTo %><% } else { %>_<% } %>;
25
+ <% } %>
22
26
 
23
27
  location / {
24
28
  proxy_buffer_size 128k;
25
29
  proxy_buffers 4 256k;
26
30
  proxy_busy_buffers_size 256k;
27
31
  proxy_set_header X-Real-IP $remote_addr;
28
- proxy_set_header X-Forwarded-For $remote_addr;
32
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
33
+ proxy_set_header X-Forwarded-Proto $scheme;
29
34
  proxy_set_header Host $http_host;
30
35
  proxy_http_version 1.1;
31
36
  proxy_set_header Connection "";
@@ -9,7 +9,9 @@
9
9
  "type": "php",
10
10
  "request": "launch",
11
11
  "port": <%~ it.XDebugPort %>,
12
- "runtimeExecutable": "<%~ it.PHPBinPath %>"
12
+ "pathMappings": {
13
+ "<%~ it.baseConfig.containerMagentoDir %>": "${workspaceFolder}"
14
+ }
13
15
  }
14
16
  ]
15
17
  }
@@ -1,13 +1,20 @@
1
1
  const path = require('path');
2
2
  const { defaultMagentoConfig } = require('../magento-config');
3
- const { php72 } = require('../php/releases');
3
+ const { magento23PHPExtensionList } = require('../magento/required-php-extensions');
4
+ const { repo } = require('../php/base-repo');
5
+ const { php72 } = require('../php/versions');
6
+ const { elasticsearch68 } = require('../services/elasticsearch/versions');
4
7
  const { sslTerminator } = require('../ssl-terminator');
5
8
  const { varnish66 } = require('../varnish/varnish-6-6');
6
9
 
7
10
  module.exports = ({ templateDir } = {}) => ({
8
11
  magentoVersion: '2.3.0',
9
12
  configuration: {
10
- php: php72({ templateDir }),
13
+ php: php72({
14
+ templateDir,
15
+ extensions: magento23PHPExtensionList,
16
+ baseImage: `${ repo }:php-7.2-magento-2.3`
17
+ }),
11
18
  nginx: {
12
19
  version: '1.18.0',
13
20
  configTemplate: path.join(templateDir || '', 'nginx.template.conf')
@@ -21,9 +28,7 @@ module.exports = ({ templateDir } = {}) => ({
21
28
  mariadb: {
22
29
  version: '10.2'
23
30
  },
24
- elasticsearch: {
25
- version: '5.6.16'
26
- },
31
+ elasticsearch: elasticsearch68(),
27
32
  composer: {
28
33
  version: '1'
29
34
  },
@@ -1,13 +1,20 @@
1
1
  const path = require('path');
2
+ const { elasticsearch68 } = require('../services/elasticsearch/versions');
2
3
  const { defaultMagentoConfig } = require('../magento-config');
3
- const { php72 } = require('../php/releases');
4
+ const { magento23PHPExtensionList } = require('../magento/required-php-extensions');
5
+ const { repo } = require('../php/base-repo');
6
+ const { php72 } = require('../php/versions');
4
7
  const { sslTerminator } = require('../ssl-terminator');
5
8
  const { varnish66 } = require('../varnish/varnish-6-6');
6
9
 
7
10
  module.exports = ({ templateDir } = {}) => ({
8
11
  magentoVersion: '2.3.1',
9
12
  configuration: {
10
- php: php72({ templateDir }),
13
+ php: php72({
14
+ templateDir,
15
+ extensions: magento23PHPExtensionList,
16
+ baseImage: `${ repo }:php-7.2-magento-2.3`
17
+ }),
11
18
  nginx: {
12
19
  version: '1.18.0',
13
20
  configTemplate: path.join(templateDir || '', 'nginx.template.conf')
@@ -21,9 +28,7 @@ module.exports = ({ templateDir } = {}) => ({
21
28
  mariadb: {
22
29
  version: '10.2'
23
30
  },
24
- elasticsearch: {
25
- version: '6.8.16'
26
- },
31
+ elasticsearch: elasticsearch68(),
27
32
  composer: {
28
33
  version: '1'
29
34
  },
@@ -0,0 +1,43 @@
1
+ const path = require('path');
2
+ const { elasticsearch68 } = require('../services/elasticsearch/versions');
3
+ const { defaultMagentoConfig } = require('../magento-config');
4
+ const { magento23PHPExtensionList } = require('../magento/required-php-extensions');
5
+ const { repo } = require('../php/base-repo');
6
+ const { php72 } = require('../php/versions');
7
+ const { sslTerminator } = require('../ssl-terminator');
8
+ const { varnish66 } = require('../varnish/varnish-6-6');
9
+
10
+ module.exports = ({ templateDir } = {}) => ({
11
+ magentoVersion: '2.3.2-p1',
12
+ configuration: {
13
+ php: php72({
14
+ templateDir,
15
+ extensions: magento23PHPExtensionList,
16
+ baseImage: `${ repo }:php-7.2-magento-2.3`
17
+ }),
18
+ nginx: {
19
+ version: '1.18.0',
20
+ configTemplate: path.join(templateDir || '', 'nginx.template.conf')
21
+ },
22
+ redis: {
23
+ version: '5'
24
+ },
25
+ mysql: {
26
+ version: '5.7'
27
+ },
28
+ mariadb: {
29
+ version: '10.2'
30
+ },
31
+ elasticsearch: elasticsearch68(),
32
+ composer: {
33
+ version: '1'
34
+ },
35
+ varnish: varnish66({ templateDir }),
36
+ sslTerminator: sslTerminator({ templateDir })
37
+ },
38
+ magento: defaultMagentoConfig,
39
+ host: 'localhost',
40
+ ssl: {
41
+ enabled: false
42
+ }
43
+ });
@@ -1,13 +1,20 @@
1
1
  const path = require('path');
2
+ const { elasticsearch68 } = require('../services/elasticsearch/versions');
2
3
  const { defaultMagentoConfig } = require('../magento-config');
3
- const { php72 } = require('../php/releases');
4
+ const { magento23PHPExtensionList } = require('../magento/required-php-extensions');
5
+ const { repo } = require('../php/base-repo');
6
+ const { php72 } = require('../php/versions');
4
7
  const { sslTerminator } = require('../ssl-terminator');
5
8
  const { varnish66 } = require('../varnish/varnish-6-6');
6
9
 
7
10
  module.exports = ({ templateDir } = {}) => ({
8
11
  magentoVersion: '2.3.2-p2',
9
12
  configuration: {
10
- php: php72({ templateDir }),
13
+ php: php72({
14
+ templateDir,
15
+ extensions: magento23PHPExtensionList,
16
+ baseImage: `${ repo }:php-7.2-magento-2.3`
17
+ }),
11
18
  nginx: {
12
19
  version: '1.18.0',
13
20
  configTemplate: path.join(templateDir || '', 'nginx.template.conf')
@@ -21,9 +28,7 @@ module.exports = ({ templateDir } = {}) => ({
21
28
  mariadb: {
22
29
  version: '10.2'
23
30
  },
24
- elasticsearch: {
25
- version: '6.8.16'
26
- },
31
+ elasticsearch: elasticsearch68(),
27
32
  composer: {
28
33
  version: '1'
29
34
  },
@@ -1,13 +1,20 @@
1
1
  const path = require('path');
2
+ const { elasticsearch68 } = require('../services/elasticsearch/versions');
2
3
  const { defaultMagentoConfig } = require('../magento-config');
3
- const { php72 } = require('../php/releases');
4
+ const { magento23PHPExtensionList } = require('../magento/required-php-extensions');
5
+ const { repo } = require('../php/base-repo');
6
+ const { php72 } = require('../php/versions');
4
7
  const { sslTerminator } = require('../ssl-terminator');
5
8
  const { varnish66 } = require('../varnish/varnish-6-6');
6
9
 
7
10
  module.exports = ({ templateDir } = {}) => ({
8
11
  magentoVersion: '2.3.2',
9
12
  configuration: {
10
- php: php72({ templateDir }),
13
+ php: php72({
14
+ templateDir,
15
+ extensions: magento23PHPExtensionList,
16
+ baseImage: `${ repo }:php-7.2-magento-2.3`
17
+ }),
11
18
  nginx: {
12
19
  version: '1.18.0',
13
20
  configTemplate: path.join(templateDir || '', 'nginx.template.conf')
@@ -21,9 +28,7 @@ module.exports = ({ templateDir } = {}) => ({
21
28
  mariadb: {
22
29
  version: '10.2'
23
30
  },
24
- elasticsearch: {
25
- version: '6.8.16'
26
- },
31
+ elasticsearch: elasticsearch68(),
27
32
  composer: {
28
33
  version: '1'
29
34
  },
@@ -1,13 +1,20 @@
1
1
  const path = require('path');
2
+ const { elasticsearch68 } = require('../services/elasticsearch/versions');
2
3
  const { defaultMagentoConfig } = require('../magento-config');
3
- const { php73 } = require('../php/releases');
4
+ const { magento23PHPExtensionList } = require('../magento/required-php-extensions');
5
+ const { repo } = require('../php/base-repo');
6
+ const { php73 } = require('../php/versions');
4
7
  const { sslTerminator } = require('../ssl-terminator');
5
8
  const { varnish66 } = require('../varnish/varnish-6-6');
6
9
 
7
10
  module.exports = ({ templateDir } = {}) => ({
8
11
  magentoVersion: '2.3.3-p1',
9
12
  configuration: {
10
- php: php73({ templateDir }),
13
+ php: php73({
14
+ templateDir,
15
+ extensions: magento23PHPExtensionList,
16
+ baseImage: `${ repo }:php-7.3-magento-2.3`
17
+ }),
11
18
  nginx: {
12
19
  version: '1.18.0',
13
20
  configTemplate: path.join(templateDir || '', 'nginx.template.conf')
@@ -21,9 +28,7 @@ module.exports = ({ templateDir } = {}) => ({
21
28
  mariadb: {
22
29
  version: '10.2'
23
30
  },
24
- elasticsearch: {
25
- version: '6.8.16'
26
- },
31
+ elasticsearch: elasticsearch68(),
27
32
  composer: {
28
33
  version: '1'
29
34
  },
@@ -1,13 +1,20 @@
1
1
  const path = require('path');
2
+ const { elasticsearch68 } = require('../services/elasticsearch/versions');
2
3
  const { defaultMagentoConfig } = require('../magento-config');
3
- const { php73 } = require('../php/releases');
4
+ const { magento23PHPExtensionList } = require('../magento/required-php-extensions');
5
+ const { repo } = require('../php/base-repo');
6
+ const { php73 } = require('../php/versions');
4
7
  const { sslTerminator } = require('../ssl-terminator');
5
8
  const { varnish66 } = require('../varnish/varnish-6-6');
6
9
 
7
10
  module.exports = ({ templateDir } = {}) => ({
8
11
  magentoVersion: '2.3.3',
9
12
  configuration: {
10
- php: php73({ templateDir }),
13
+ php: php73({
14
+ templateDir,
15
+ extensions: magento23PHPExtensionList,
16
+ baseImage: `${ repo }:php-7.3-magento-2.3`
17
+ }),
11
18
  nginx: {
12
19
  version: '1.18.0',
13
20
  configTemplate: path.join(templateDir || '', 'nginx.template.conf')
@@ -21,9 +28,7 @@ module.exports = ({ templateDir } = {}) => ({
21
28
  mariadb: {
22
29
  version: '10.2'
23
30
  },
24
- elasticsearch: {
25
- version: '6.8.16'
26
- },
31
+ elasticsearch: elasticsearch68(),
27
32
  composer: {
28
33
  version: '1'
29
34
  },
@@ -0,0 +1,43 @@
1
+ const path = require('path');
2
+ const { elasticsearch68 } = require('../services/elasticsearch/versions');
3
+ const { defaultMagentoConfig } = require('../magento-config');
4
+ const { magento23PHPExtensionList } = require('../magento/required-php-extensions');
5
+ const { repo } = require('../php/base-repo');
6
+ const { php73 } = require('../php/versions');
7
+ const { sslTerminator } = require('../ssl-terminator');
8
+ const { varnish66 } = require('../varnish/varnish-6-6');
9
+
10
+ module.exports = ({ templateDir } = {}) => ({
11
+ magentoVersion: '2.3.4-p1',
12
+ configuration: {
13
+ php: php73({
14
+ templateDir,
15
+ extensions: magento23PHPExtensionList,
16
+ baseImage: `${ repo }:php-7.3-magento-2.3`
17
+ }),
18
+ nginx: {
19
+ version: '1.18.0',
20
+ configTemplate: path.join(templateDir || '', 'nginx.template.conf')
21
+ },
22
+ redis: {
23
+ version: '5'
24
+ },
25
+ mysql: {
26
+ version: '5.7'
27
+ },
28
+ mariadb: {
29
+ version: '10.2'
30
+ },
31
+ elasticsearch: elasticsearch68(),
32
+ composer: {
33
+ version: '1'
34
+ },
35
+ varnish: varnish66({ templateDir }),
36
+ sslTerminator: sslTerminator({ templateDir })
37
+ },
38
+ magento: defaultMagentoConfig,
39
+ host: 'localhost',
40
+ ssl: {
41
+ enabled: false
42
+ }
43
+ });
@@ -1,13 +1,20 @@
1
1
  const path = require('path');
2
+ const { elasticsearch68 } = require('../services/elasticsearch/versions');
2
3
  const { defaultMagentoConfig } = require('../magento-config');
3
- const { php73 } = require('../php/releases');
4
+ const { magento23PHPExtensionList } = require('../magento/required-php-extensions');
5
+ const { repo } = require('../php/base-repo');
6
+ const { php73 } = require('../php/versions');
4
7
  const { sslTerminator } = require('../ssl-terminator');
5
8
  const { varnish66 } = require('../varnish/varnish-6-6');
6
9
 
7
10
  module.exports = ({ templateDir } = {}) => ({
8
11
  magentoVersion: '2.3.4-p2',
9
12
  configuration: {
10
- php: php73({ templateDir }),
13
+ php: php73({
14
+ templateDir,
15
+ extensions: magento23PHPExtensionList,
16
+ baseImage: `${ repo }:php-7.3-magento-2.3`
17
+ }),
11
18
  nginx: {
12
19
  version: '1.18.0',
13
20
  configTemplate: path.join(templateDir || '', 'nginx.template.conf')
@@ -21,9 +28,7 @@ module.exports = ({ templateDir } = {}) => ({
21
28
  mariadb: {
22
29
  version: '10.2'
23
30
  },
24
- elasticsearch: {
25
- version: '6.8.16'
26
- },
31
+ elasticsearch: elasticsearch68(),
27
32
  composer: {
28
33
  version: '1'
29
34
  },
@@ -1,13 +1,20 @@
1
1
  const path = require('path');
2
+ const { elasticsearch68 } = require('../services/elasticsearch/versions');
2
3
  const { defaultMagentoConfig } = require('../magento-config');
3
- const { php73 } = require('../php/releases');
4
+ const { magento23PHPExtensionList } = require('../magento/required-php-extensions');
5
+ const { repo } = require('../php/base-repo');
6
+ const { php73 } = require('../php/versions');
4
7
  const { sslTerminator } = require('../ssl-terminator');
5
8
  const { varnish66 } = require('../varnish/varnish-6-6');
6
9
 
7
10
  module.exports = ({ templateDir } = {}) => ({
8
11
  magentoVersion: '2.3.4',
9
12
  configuration: {
10
- php: php73({ templateDir }),
13
+ php: php73({
14
+ templateDir,
15
+ extensions: magento23PHPExtensionList,
16
+ baseImage: `${ repo }:php-7.3-magento-2.3`
17
+ }),
11
18
  nginx: {
12
19
  version: '1.18.0',
13
20
  configTemplate: path.join(templateDir || '', 'nginx.template.conf')
@@ -21,9 +28,7 @@ module.exports = ({ templateDir } = {}) => ({
21
28
  mariadb: {
22
29
  version: '10.2'
23
30
  },
24
- elasticsearch: {
25
- version: '6.8.16'
26
- },
31
+ elasticsearch: elasticsearch68(),
27
32
  composer: {
28
33
  version: '1'
29
34
  },