speedianet / os

Speedia OS is a container operating system designed so you never have to write a Dockerfile again.
https://speedia.net/os/
Eclipse Public License 2.0
11 stars 2 forks source link

feat: add Laravel to marketplace #106

Closed polillomm closed 5 days ago

polillomm commented 6 days ago

To install Laravel, it was necessary to create a symlink from the installation directory to the framework's /public directory. This is because all routing in Laravel is handled by .htaccess, which needs to be located in the original /public directory.

polillomm commented 5 days ago

Test report

Tests related to installing the new Laravel alongside other marketplace items are needed to ensure everything functions correctly. This is particularly important because Laravel requires the NGINX root directory to be mapped to /public, necessitating that other marketplace items are moved there as well.

Installing Laravel (virtual host type X marketplace item)

This table presents the test results related to the installation of Laravel on a specific type of virtual host, indicating the directory's location in relation to other marketplace items. It also ensures that no other installations conflict with Laravel, whether it is installed in the root directory or not.

Drupal Joomla! LAMP Laravel OpenCart WordPress
primary 🟢 🟢 🟢 🟢 🟢 🟢
top-level 🟡 🟢 🟢 🟢 🟡 🟢
subdomain 🟡 🟢 🟢 🟢 🟡 🟢
alias 🔴 🔴 🔴 🔴 🔴 🔴

🟢 Working 🟡 Partially working 🔴 Not working ⚪️ Not tested yet

These tests include multiple simultaneous installations. There are not just two types of virtual hosts running at the same time, but several, to ensure that they do not interfere with each other.

It's important to understand why the tests on aliases didn't work. This is because we do not yet have a mechanism to prevent the installation of new marketplace items on a virtual host that already has something installed. As a result, installations overlap, and the files get mixed up. This issue will be addressed in another task.

When OpenCart is installed in subdirectories and Laravel is in the root directory (primary), OpenCart's styles cannot be read. This is a known issue, likely caused by .htaccess. Since this issue is not part of the changes for this task, it will be considered as partially working. Drupal has the same known issue.