Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/pr-backdrop-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ jobs:
- examples/backdrop-init
- examples/backdrop-mariadb
- examples/backdrop-mysql8
- examples/backdrop-mysql-client
- examples/backdrop-nginx
lando-version:
- 3-edge
Expand Down
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
## {{ UNRELEASED_VERSION }} - [{{ UNRELEASED_DATE }}]({{ UNRELEASED_LINK }})

* Updated `@lando/php` to `^1.11.0` for MySQL client auto-detection fix [#82](https://github.com/lando/backdrop/pull/82)

## v1.9.0 - [February 18, 2026](https://github.com/lando/backdrop/releases/tag/v1.9.0)

* Added dependabot config
Expand Down
10 changes: 10 additions & 0 deletions examples/backdrop-mysql-client/.lando.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
name: backdrop-mysql-client
recipe: backdrop
config:
php: '8.4'
database: mysql:8.0
webroot: web

# do not remove this
plugins:
"@lando/backdrop": ../..
69 changes: 69 additions & 0 deletions examples/backdrop-mysql-client/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
# Backdrop MySQL Client Compatibility Example

This example tests that the backdrop recipe with MySQL correctly auto-detects
and installs the native MySQL client, avoiding SSL/TLS errors and MariaDB dump
format issues when using `bee db-export`.

See: https://github.com/lando/lando/issues/3833

## Start up tests

Run the following commands to get up and running with this example.

```bash
# Should download and extract Backdrop
lando poweroff
rm -rf web && mkdir -p web
curl -fsSL https://github.com/backdrop/backdrop/releases/download/1.33.1/backdrop.zip -o /tmp/backdrop.zip
unzip -q /tmp/backdrop.zip -d web
mv web/backdrop/* web/backdrop/.* web/ 2>/dev/null || true
rmdir web/backdrop 2>/dev/null || true
```

```bash
# Should start up successfully
lando start
```

```bash
# Should install Backdrop with bee
cd web && chmod +x core/scripts/*
lando bee site-install --db-name=backdrop --db-user=backdrop --db-pass=backdrop --db-host=database --username=admin --password=admin --email=test@lando.dev --site-name="MySQL Client Test" --auto
```

## Verification commands

Run the following commands to validate things are rolling as they should.

```bash
# Should auto-detect MySQL and install the MySQL client (not MariaDB)
lando exec appserver -- mysql --version | grep -qiv "MariaDB"
```

```bash
# Should be able to connect to MySQL without SSL errors
lando mysql backdrop -e "SELECT 1"
```

```bash
# Should be able to export with bee without SSL errors and use MySQL dump format
cd web
lando bee db-export /tmp/bee-export.sql
lando exec appserver -- bash -c "zcat /tmp/bee-export.sql.gz | head -5" | grep -i "dump" | grep -iq "MySQL"
```

```bash
# Should be able to export with db-export without SSL errors
lando db-export --stdout > /tmp/lando-export.sql
head -5 /tmp/lando-export.sql | grep -i "dump" | grep -iq "MySQL"
```

## Destroy tests

Run the following commands to trash this app like nothing ever happened.

```bash
# Should be destroyed with success
lando destroy -y
lando poweroff
```
10 changes: 5 additions & 5 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@
"@lando/mariadb": "^1.7.0",
"@lando/mssql": "^1.4.3",
"@lando/mysql": "^1.6.0",
"@lando/php": "^1.10.0",
"@lando/php": "^1.11.0",
"@lando/postgres": "^1.5.0",
"lodash": "^4.17.21"
},
Expand Down
Loading