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

QAG-49: Add DDEV setup #421

Draft
wants to merge 9 commits into
base: main
Choose a base branch
from
Draft

QAG-49: Add DDEV setup #421

wants to merge 9 commits into from

Conversation

sampoturve
Copy link
Contributor

@sampoturve sampoturve commented Aug 14, 2024

πŸš§πŸ‘·πŸ»β€β™‚οΈπŸ—οΈ Work in progress still πŸ‘·πŸ»β€β™€οΈπŸš§


Ticket QAG-49

See also: #420

Changes

Add a DDEV setup that works alongside Lando. Contains basic services like Adminer, Elasticsearch, GrumPHP, Kibana, Mailpit, Varnish, and some Lando commands converted to have DDEV support (GrumPHP, PHPUnit).

Summary

  • Update README with instructions on how to get DDEV environment up and running
  • Adminer
    • Use default configuration by ddev-adminer
  • Elasticsearch
    • Use default ES configuration by ddev-elasticsearch
    • Use docker-compose.elasticsearch_extra.yaml to only override the image to use ES8 + install analysis-ukrainian and analysis-icu.
  • Kibana
    • Use default configuration by ddev-kibana
    • Use docker-compose.kibana_extra.yaml to only override the image version to match ES
    • Worth to note that ddev-kibana seems to be quite small project, could be replaced with just a custom Dockerfile
  • Mailpit
    • Replaces the age-old Mailhog. Supplied by DDEV.
  • Varnish
    • Default ddev-varnish configuration
    • The small vcl bit from .lando/varnish.vcl added to default.vcl

Some more things to do and consider

  • Consider ignoring some of the default files that are coming from ddev get. For example the ddev get ddev/ddev-varnish adds a bunch of commands under .ddev/commands/varnish that are #ddev-generated and might not need to be in the repo
  • Find out the best way to initially disable some services like we now have for Lando, like ES, Kibana and Varnish (docker profiles (?) omit_containers might be the best way to do this)
  • How to keep the README more tidy as the double docs for both environments aren't very nice
  • Find out rest of the things that are now Lando-specific and convert them to DDEV equivalents
  • Probably some more things

How to test

Testing in feature environment:

No feature environment to test in.

Local testing

Follow the instructions in the README.

Testing steps

Confirm that existing Lando services work on DDEV.

- Use default ES configuration by ddev-elasticsearch
- Use docker-compose.elasticsearch_extra.yaml to only override
  the image to use ES8 + install analysis-ukrainian and analysis-icu.
- Enable Kibana
- Use docker-compose.kibana_extra.yaml to only override
  the image version to match ES
- Default ddev-varnish configuration
- The small vcl bit from .lando/varnish.vcl added to default.vcl
- DDEV PHPUnit command
- NodeJS version to match the one in Lando
@tormi tormi changed the title GH-420: DDEV support QAG-49: Add DDEV setup Dec 6, 2024
@tormi
Copy link
Member

tormi commented Dec 6, 2024

Let's not add DDEV services available via commands to reduce the amount of config files:

  • ddev mailpit - Launch a browser with Mailpit
  • ddev adminer - Launch a browser with Adminer

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants