-
-
Notifications
You must be signed in to change notification settings - Fork 582
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
feat: add contao project type #5672
Conversation
Download the artifacts for this pull request:
See Testing a PR |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wow, look at you go!
508ea8d
to
01f4b41
Compare
e6bcc39
to
1f533f9
Compare
The errors in the checks don't seem to be related to changes in this PR: TYPO3:
https://github.com/ddev/ddev/actions/runs/7569757491/job/20613740279?pr=5672 xdebug:
https://github.com/ddev/ddev/actions/runs/7569757491/job/20613739351?pr=5672 Mutagen:
https://buildkite.com/ddev/wsl2-docker-inside/builds/3105#018d1c7b-d9b5-4916-924a-9bf5cbb89835 I did not touch any of that. 🤔 @rfay Any idea? |
TYPO3:
https://github.com/ddev/ddev/actions/runs/7569757491/job/20613740279?pr=5672#step:17:7053 I see xdebug:
https://github.com/ddev/ddev/actions/runs/7569757491/job/20613739351?pr=5672#step:17:3300 Seems like an unrelated issue to me. Restarted. Mutagen:
Saw this in recent PRs, some temporary issue, unrelated. Restarted. |
Looks like you're making great progress! |
Thanks for the review, it was helpful.
I don't understand why it uses The check works fine using
The following @stasadev Any idea what's wrong here? |
It sounds like the test contao project doesn't work without a specific hostname in the URL? The direct port-access accesses the web container directly, whereas You can experiment with this locally, use the direct-port URL provided by |
I think I misinterpreted something in my previous answer: The test checks the HTTP URL: So I need to make sure that the page works with IP + HTTP only, right? |
Well, it's your test you're writing, correct? So you'll want to make sure that the test covers things that Contao should be able to do. Most project types can handle http or https with or without a hostname in the URL. I imagine contao can also. But the big picture idea is to write a test that will make sure Contao always works when it should. Remember that you can run the test locally, you don't have to wait for the automated test response. |
It's the default I run the tests locally (e.g. Sidenote: It's much fun to setup a new project type. Coming across so many inner workings of DDEV to understand it better. Just awesome. 😊 |
Sorry, I wasn't paying careful attention! So glad you're having fun! Your many contributions are much appreciated! You should mostly get the same results with your |
You can also step through the test in GoLand or vscode. That may help you understand what's happening. |
1f533f9
to
64ec61a
Compare
Rebased. This is still in draft mode, is it ready for review? How do you feel about it @Morgy93 ? |
The
But it works fine running it manually:
And I don't know why the test behaves differently. |
This means that the codebase you've installed does a 301 redirect. You should be able to step through the test and stop at that point and see what's been installed and figure out why it's redirecting. I imagine it's just the tarball you're using. |
64ec61a
to
b079b9d
Compare
Rebased to resolve conflicts. |
Tested quickstart manually:
And at the same time Need to look for redirect settings https://stackoverflow.com/questions/61632993/avoid-multiple-redirects-in-contao |
Thanks very much for testing. I saw that the data on the provided repo is somehow different from my local setup. (Where the data was extracted from) Will have a look what's going on there. Just terribly busy now. 😒 |
Thanks for your work on this! |
I've created ddev/test-contao and given you full privileges on it. Like https://github.com/ddev/test-cakephp - the idea is that the testing artifacts should be able to be built from that repo predictably, and have instructions on how to build and maintain them. Thanks! |
b079b9d
to
7f71292
Compare
Rebased to resolve conflicts (without running tests). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i've left two small nitpicks in regards of the quick start guide section. but when trying the actual quick start guide i ran into an error on the composer create
step: https://gist.github.com/rpkoller/d1d79bee1fbfd54b7e0b5c53d8b1e582
docs/content/users/quickstart.md
Outdated
@@ -47,6 +47,35 @@ ddev launch | |||
ddev launch | |||
``` | |||
|
|||
## Contao | |||
|
|||
=== "Composer" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would remove the tab. contao would be the sole project type that has a single tab. if there is only content for a single tab then place the text as is imho.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Contao offers two install methods:
- Composer
- Contao Manager
I wanted to support both, therefore the tab.
Plus, Contao offers a demo which could be helpful, so there could be three tabs:
- Composer
- Contao Manager
- Demo
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ahhhh then it is totally fine, i've just noticed the single tab looking at the preview: https://ddev--5672.org.readthedocs.build/en/5672/ but i am not sure if it is necessary to a demo tab which is probably including the link to the demo site? a tab for each of the two install methods (composer and contao manager) is probably enough?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I did not know that there is a preview rendered for the docs. Thanks for pointing me to it.
The demo site is something you can install to play around with locally. So, it has different install instructions.
docs/content/users/quickstart.md
Outdated
|
||
```shell | ||
# Create a project directory and move into it: | ||
mkdir my-contao-project && cd $_ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
mkdir my-contao-project && cd $_ | |
mkdir my-contao-project | |
cd my-contao-project |
In regards of consistency i would stick to the pattern other quickstart guides use and write out the folder name on the change directory step, even it is longer
That's due to Mutagen. I have no clue how to handle it, other than removing the |
This is a result of the composer.json script trying to delete the directory specified by
I think that will set it up so that everything works OK. It would be better to make the composer script smarter, but we can work with what we have. |
This isn't the only composer.json that has a plugin doing this kind of thing. We should consider solving this in |
7f71292
to
0a34572
Compare
I am unable to reproduce the error 500 locally, therefore I need to close this PR for now. Hopefully coming back to it later. Feeling so close, yet so far~ |
I'll be happy to work with you on this! Thanks for the initiative. |
The Issue
https://contao.org/en/ is not supported officially.
How This PR Solves The Issue
It adds a new project type called
contao
that adds native support.Manual Testing Instructions
Follow new CMS Quickstart section for
contao
.https://github.com/ddev/ddev/pull/5672/files#diff-cdacb5ab99042792ddb67ee7d62ac1d36c4699992949005880517b4955e10f7e
Automated Testing Overview
It extends the
TestDdevFullSiteSetup
to test Contao.https://github.com/Morgy93/ddev-test-contao is used for the test environment which should probably be moved to the DDEV namespace.
Release/Deployment Notes
Add a new project typed called
contao
for using the CMS https://contao.org/en/.