3rd Party Email Transports on Mautic 5
-
@Dave-Swift ok, perfect, thanks for explaining. Which transport(s) do you need? For a start, I can pre-install them in the image already (instead of making composer.json configurable which seems like a bigger project).
-
I quickly tried this but installing via composer seems to mess up with mautic. Have to debug later.
17:49:19 - PHP Warning: include(/run/mautic/app/config/paths_helper.php): Failed to open stream: No such file or directory in /app/code/app/bundles/CoreBundle/Helper/PathsHelper.php on line 50 17:49:19 - PHP Warning: include(): Failed opening '/run/mautic/app/config/paths_helper.php' for inclusion (include_path='.:/usr/share/php') in /app/code/app/bundles/CoreBundle/Helper/PathsHelper.php on line 50 17:49:19 - PHP Warning: Undefined array key "root" in /app/code/app/bundles/CoreBundle/Helper/PathsHelper.php on line 185 17:49:19 - 17:49:19 - 17:49:19 - [WARNING] Some commands could not be registered: 17:49:19 - 17:49:19 - 17:49:19 - In FilesystemLoader.php line 92: 17:49:19 - 17:49:19 - The "/run/mautic/vendor/knplabs/knp-menu/src/Knp/Menu/Resources/views" dire 17:49:19 - ctory does not exist ("/run/mautic/vendor/knplabs/knp-menu/src/Knp/Menu/Res 17:49:19 - ources/views"). 17:49:19 - 17:49:19 - 17:49:19 - In PathsHelper.php line 187: 17:49:19 - 17:49:19 - root does not exist. 17:49:19 - 17:49:19 - 17:49:19 - In FileLoader.php line 38: 17:49:19 - 17:49:19 - The mapping file "/run/mautic/vendor/symfony/form/Resources/config/validati 17:49:19 - on.xml" does not exist. 17:49:19 - 17:49:19 - 17:49:19 - In FilesystemLoader.php line 92: 17:49:19 - 17:49:19 - The "/run/mautic/vendor/knplabs/knp-menu/src/Knp/Menu/Resources/views" dire 17:49:19 - ctory does not exist ("/run/mautic/vendor/knplabs/knp-menu/src/Knp/Menu/Res 17:49:19 - ources/views"). 17:49:19 - 17:49:19 - 17:49:19 - In FilesystemLoader.php line 92: 17:49:19 - 17:49:19 - The "/run/mautic/vendor/knplabs/knp-menu/src/Knp/Menu/Resources/views" dire 17:49:19 - ctory does not exist ("/run/mautic/vendor/knplabs/knp-menu/src/Knp/Menu/Res 17:49:19 - ources/views"). 17:49:19 - 17:49:19 -
-
@girish It seems like Composer needs to be tightly integrated, which is not yet the case.
I've installed a totally new instance of Version 5 on one of my servers-had to find out more since the upgrade didn't work, yet. Now it appears that this will not work until the Composer part is 'fixed'.
How we can know that? Because, as also reported here in the OP by @Dave-Swift, it is indicated within Mautic that Composer is not supported, and as a matter of fact this is going on for a while and been reported before by me, and some other Mautic power users.
We see this from the Marketplace section, this is in version 4.4 and it's the same thing we see in version 5 as well.
I have many question: How does composer handle dependencies and conflicts? What if installing a email transport upgrade or downgrades a package that Mautic depends on? How are composer upgrades handled when updating Mautic?
Here's the details concerning the actual major changes in the script.
And here you will find the composer.json file content, I guess that should help to see where it will stand in your investigation.
ADDED:
I also pull your attention on this post here, seems you have missed, of what I extracted from my logs after the glitched attempt to upgrade. TTYL -
I figured this one out. The magic incantation is:
composer require --no-update --no-install --prefer-stable --no-scripts symfony/amazon-mailer symfony/mailgun-mailer
The main thing was
--no-scripts
. The packages started building assets and they ended up being half baked since mautic is not even installed at that point. The latest package has the email transports installed. -
Has anyone tried to install new 3rd party plugins with improved mailer support already? E.g. Amazon SES by default is only supported with SMTP, no API and no bounce handling. Now there are 2-3 Plugins out there, which seems to handle it quite well.
Was anyone able to install those into Mautic Cloudron?
-
@girish with the jump to v5, some functions have been moved from core to plugins. The core functionality of AWS Support doesn't include the API based bounce handling (with webhooks). Thats why there are several SES Plugins now:
- https://github.com/jos0405/mauticawsmailer
- https://github.com/pabloveintimilla/mautic-amazon-ses
- https://github.com/alexhammerschmied/MauticSesSnsBundle
- https://github.com/pm-pmaas/etailors_amazon_ses
- https://github.com/hachther/mauticawsmailer
I will give them a try and test it also with Cloudron.
-
- and 4. are not installable via composer in my trials at cloudron.
- throws an error:
Your requirements could not be resolved to an installable set of packages. Problem 1 - mautic/core-lib[5.0.0, ..., 5.0.4] require friendsofsymfony/oauth-server-bundle dev-upgrade-2 -> found friendsofsymfony/oauth-server-bundle[dev-master, 1.0.0, ..., 1.7.x-dev, 2.0.0-alpha.0, 2.0.x-dev (alias of dev-master)] but it does not match the constraint. - pabloveintimilla/mautic-amazon-ses[v1.0.0, ..., v1.0.2] require mautic/core-lib ^5.0 -> satisfiable by mautic/core-lib[5.0.0, ..., 5.0.4]. - Root composer.json requires pabloveintimilla/mautic-amazon-ses ^1.0 -> satisfiable by pabloveintimilla/mautic-amazon-ses[v1.0.0, v1.0.1, v1.0.2]. You can also try re-running composer require with an explicit version constraint, e.g. "composer require pabloveintimilla/mautic-amazon-ses:*" to figure out if any version is installable, or "composer require pabloveintimilla/mautic-amazon-ses:^2.1" if you know which you need. Installation failed, deleting ./composer.json.
Not sure if this is related to the Cloudron environment. I also wonder if this has a chance to succeed at all as the code path is read only by design?
Would a necessary plugin needed to be added to the cloudron mautic package?
-