Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

META: FEATURE: provide DDEV template / project type to DDEV and their documentation #4412

Open
creative-resort opened this issue Jul 25, 2023 · 4 comments
Labels

Comments

@creative-resort
Copy link

From my experience of using Neos with DDEV, it's a wonderful match and even a great way of providing quick local installs for evaluating Neos, as well as for serious development.
We could provide to DDEV developer Randy Fay a set of configuration files, that prepopulates a new DDEV project with everything necessary to spin up a running NEOS instance.

NEOS would then be listed along other systems in the documentation.

What needs to be prepared before approaching:

Randy can be reached via randy at randyfay.com
in his Discord space: https://discord.gg/hCZFfAMc5k
on Mastodon: https://fosstodon.org/@ddev
Support page with more info: https://ddev.readthedocs.io/en/latest/users/support/

@mhsdesign mhsdesign transferred this issue from neos/Neos.NeosIo Jul 25, 2023
@mhsdesign
Copy link
Member

As written here in slack: https://neos-project.slack.com/archives/C1PHKPFM1/p1669410437148589?thread_ts=1669388413.969349&cid=C1PHKPFM1 i started experimenting with a ddev + neos support ;)

There might be generally no big benefit for medium/advanced developers to gain, as using type: neos is mostly equal to using type: php with the usual few adjustments. Nevertheless it still might be worth pushing forward as we'd gain a place in ddev supported list and neos would feel more advertised.

Im currently working on to many other projects, but if anyone wants to take on my work at https://github.com/mhsdesign/ddev/tree/feature/neosFlow feel free to do so ;)

@mhsdesign mhsdesign changed the title proposal: provide DDEV template / project type to DDEV and their documentation META: FEATURE: provide DDEV template / project type to DDEV and their documentation Jul 25, 2023
@dlubitz
Copy link
Contributor

dlubitz commented Jul 25, 2023

@mhsdesign I'd like to have a look into it. Do you have any idea, what's missing? As I see you prepared already a lot.

@mhsdesign
Copy link
Member

Sadly not its 9 months old 😂 but i believe i have just developed against tests i think and didnt try it out for real.


i think we still need to discuss the naming of the command.

and i settled for neos-flow as project type name for now :zwinkern:
(flow would be technically correct, but less expressive and neos would be quite expressive but not technically correct)
as ddev command i would still like to use ddev flow and not ddev neos-flow though ... maybe an alias will suit us or one needs to build the flow command yourself (as done already by many).

Now i disagree. Using ddev neos is the right way imo.


also i think i left a todo there ;)


Also it doesnt work yet if neos distribution is not present yet in the directory, it should default to the git clone of the base dist, to make it usable for new projects (the git url should be optionally settable)


In the end, it should just do all the steps from https://docs.neos.io/guide/installation-development-setup/ddev-local-beach/all-platforms-using-ddev-and-docker so its easy for us to test.

@dlubitz
Copy link
Contributor

dlubitz commented Aug 1, 2023

I took over the approach of @mhsdesign and got a reasonable state:
ddev/ddev@master...dlubitz:ddev:feature/neosFlow

But there is chicken-egg-dilema (as we already discovered while writing ddev docs) which makes the setup process bit of weired.

  • The application needs to be installed with composer
  • Composer needs PHP (infrastructure/DDEV)
  • PHP (infrastructure/DDEV) needs the application (to know which steps it need to do)
  • The application needs ....

This works if we do the ddev setup in following steps:

  • Configure DDEV
  • Start DDEV
  • Create and install application with composer without scripts ... see docs why
  • Install application with scrips (just to run scripts)
  • Restart DDEV (just to run Neos specific DDEV steps e.g setup ENVs in DDEV config, create Neos config with DB credentials)

Actually it's just the last step, that is needed additionally with the integration. But at the end we have a Neos, which is not usable as the setup is just partially done yet. Which also breaks the current setup, doesn't recognize the existing db credentials and asks for them again.

TLDR: It seems not pretty useful to have this ddev integration as it doesn't work that smothly as expected. Moreover it hides some magic, which might be important to understand also for new starters (FlowContext, Confguration, ...). Maybe the guide in the DDEV docs could be useful, but that would be just a copy of our existing documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: No status
Development

No branches or pull requests

3 participants