Code Monkey home page Code Monkey logo

cli's Introduction

Lando logo

Lando

A Liberating Dev Tool For All Your Projects

The local development and DevOps tool trusted by professional developers across the galaxy.

Free yourself from the mind-forged manacles of lesser dev tools. Save time, headaches, frustration and do more real work.

learn more | what is it good for? | wait, doesn't docker compose do this?

Support Lando

Lando is and always will be FREE and OPEN SOURCE. As such it relies on generous contributions from its community to fund its development. Join our list of list of great sponsors! by contributing.

GitHub Sponsors | Patreon | OpenCollective

Documentation

Getting Started

Introduction | CLI Usage | Installation

Recipes

Backdrop | Drupal 6, 7, 8, 9, and 10 | Joomla | Lagoon | Laravel | LAMP | LEMP | MEAN | Pantheon | Platform.sh | WordPress

Services

Apache | Compose | dotnet | Elasticsearch | Go | MailHog | MariaDB | MySQL | MSSQL | nginx | Node | PHP | PhpMyAdmin | Postgres | Python | Redis | Ruby | Solr | Tomcat | Varnish

Advanced Configuration

Landofile | Recipes | Services & Build Steps | Tooling | Proxy & Nice Url Routing | Environment | Events & Automation | Experimental | Networking | Performance | Release Channels | SSH Keys | Global Config

Help, Troubleshooting & Support

Guides and Tutorials | Examples | Known Issues | Accessing Logs | GitHub Issue Queue | Slack Channel | YouTube Videos

Engage

Contribute to the Project | Join the Alliance | Events and Meetups | Blog | Follow on Twitter

Security Issues

If you have discovered a security issue with Lando, please contact the Lando Security Team directly at [email protected]. We manage security issues separately in a private repository until the issue has been resolved. Even if you're not sure if it's a security problem, please contact the security team before filing an issue, blogging, or tweeting about it.

Other Resources

cli's People

Contributors

aaronfeledy avatar amyjuneh avatar benjaminhirsch avatar dependabot[bot] avatar dustinleblanc avatar elijahlynn avatar github-actions[bot] avatar gitressa avatar hardyoyo avatar hussainweb avatar jbertoen avatar jmdrawneek avatar jonathanjfshaw avatar kaanklky avatar matthieuscarset avatar mikemilano avatar ndouglas avatar neclimdul avatar nullvariable avatar pirog avatar ptmkenny avatar purdy avatar rabauss avatar reynoldsalec avatar rtfm-47 avatar serundeputy avatar smutlord avatar tormi avatar uberhacker avatar xaqrox avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

cli's Issues

Lando update "Lando cannot write to /usr/local/bin!"

When running lando update on macOS the update process fails since it cannot write /usr/local/bin to update the cli.

And of course, is not possible to run this using root. Since Lando should never ever be run as root, like ever.

The only way I can do the update is to manually download the cli release and manually copy it to /usr/local/bin after making it executable.

Here's what the debug says:

lando update --debug -v
  lando.js starting 'lando.js' version '3.21.0-beta.2' runtime selector... +0ms
  lando.js merged in additional config source from file '/snapshot/cli/config.yml' +13ms
  lando.js merged in additional config source from file '/Users/tay/.lando/config.yml' +0ms
  lando.js merged in additional config source from 'LANDO_*' envvars with data {} +0ms
  lando.js final assembled minconf is {
  lando.js   configSources: [ '/snapshot/cli/config.yml', '/Users/tay/.lando/config.yml' ],
  lando.js   envPrefix: 'LANDO',
  lando.js   landoFile: '.lando.yml',
  lando.js   preLandoFiles: [
  lando.js     '.lando.base.yml',
  lando.js     '.lando.dist.yml',
  lando.js     '.lando.recipe.yml',
  lando.js     '.lando.upstream.yml'
  lando.js   ],
  lando.js   postLandoFiles: [ '.lando.local.yml', '.lando.user.yml' ],
  lando.js   runtime: 3,
  lando.js   srcRoot: '/snapshot/cli',
  lando.js   userConfRoot: '/Users/tay/.lando',
  lando.js   product: 'lando',
  lando.js   hyperdrive: 'hyperdrive',
  lando.js   channel: 'stable',
  lando.js   domain: 'lndo.site',
  lando.js   mode: 'cli',
  lando.js   stats: [ { report: true, url: 'https://metrics.lando.dev' } ],
  lando.js   scanner: false
  lando.js } +1ms
  lando.js detected an app 'sekure' at '/Users/tay/Git/sekure' +14ms
  lando.js using '@lando/core' runtime version 3 +1ms
  lando.js starting lando with 'v3' runtime using cli { ENVPREFIX: undefined, LOGLEVELCONSOLE: 4, USERCONFROOT: undefined, COREBASE: '/Users/tay/.lando/plugins/@lando/core' } +10ms
Generating plugin/cli update matrix... done [see table below]

 PACKAGE              STATUS             COMMENT
 ──────────────────── ────────────────── ────────────────────────────────────────────────────────
 @lando/acquia        ✔ Up to date       All good
 @lando/apache        ✔ Up to date       All good
 @lando/backdrop      ✔ Up to date       All good
 @lando/cli           ⚠ Update available https://github.com/lando/cli/releases/tag/v3.21.0-beta.7
 @lando/compose       ✔ Up to date       All good
 @lando/core          ✔ Up to date       All good
 @lando/dotnet        ✔ Up to date       All good
 @lando/drupal        ✔ Up to date       All good
 @lando/elasticsearch ✔ Up to date       All good
 @lando/go            ✔ Up to date       All good
 @lando/healthcheck   ✔ Up to date       All good
 @lando/joomla        ✔ Up to date       All good
 @lando/lagoon        ✔ Up to date       All good
 @lando/lamp          ✔ Up to date       All good
 @lando/laravel       ✔ Up to date       All good
 @lando/lemp          ✔ Up to date       All good
 @lando/mailhog       ✔ Up to date       All good
 @lando/mariadb       ✔ Up to date       All good
 @lando/mean          ✔ Up to date       All good
 @lando/memcached     ✔ Up to date       All good
 @lando/mongo         ✔ Up to date       All good
 @lando/mssql         ✔ Up to date       All good
 @lando/mysql         ✔ Up to date       All good
 @lando/networking    ✔ Up to date       All good
 @lando/nginx         ✔ Up to date       All good
 @lando/node          ✔ Up to date       All good
 @lando/pantheon      ✔ Up to date       All good
 @lando/php           ✔ Up to date       All good
 @lando/phpmyadmin    ✔ Up to date       All good
 @lando/platformsh    ⚠ Cannot update
 @lando/postgres      ⚠ Cannot update
 @lando/proxy         ✔ Up to date       All good
 @lando/python        ✔ Up to date       All good
 @lando/redis         ✔ Up to date       All good
 @lando/ruby          ✔ Up to date       All good
 @lando/scanner       ✔ Up to date       All good
 @lando/sharing       ✔ Up to date       All good
 @lando/solr          ✔ Up to date       All good
 @lando/symfony       ✔ Up to date       All good
 @lando/tomcat        ✔ Up to date       All good
 @lando/varnish       ✔ Up to date       All good
 @lando/wordpress     ✔ Up to date       All good

Lando would like to update 1 package(s) listed above.
DO YOU CONSENT?: y
✖ Lando cannot write to /usr/local/bin!
  lando ERROR Error: An update error occured! Rerun with lando update --debug for more info.
    at Object.run (/Users/tay/.lando/plugins/@lando/core/tasks/update.js:163:23)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
From previous event:
    at process.processImmediate (node:internal/timers:476:21)
From previous event:
    at Object.handler (/snapshot/cli/lib/cli.js)
    at Object.runCommand (/snapshot/cli/node_modules/yargs/lib/command.js:238:44)
    at Object.parseArgs [as _parseArgs] (/snapshot/cli/node_modules/yargs/yargs.js:1063:30)
    at Function.get [as argv] (/snapshot/cli/node_modules/yargs/yargs.js:1004:21)
    at Cli.init (/snapshot/cli/lib/cli.js)
    at Cli.run (/snapshot/cli/lib/cli.js)
    at Object.<anonymous> (/snapshot/cli/bin/lando.js)
    at Module._compile (pkg/prelude/bootstrap.js:1930:22)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Function.runMain (pkg/prelude/bootstrap.js:1983:12)
    at node:internal/main/run_main_module:23:47  +4888ms

Unhandled rejection Error: Cannot find module './lando-cli/docs/.vuepress/guides.json' when installing from source

Following the directions for installing from source: https://docs.lando.dev/basics/installation.html#from-source
Followed the installation directions for Hyperdrive v0.6.1 to make sure I have all the needed dependencies. I had node v16 installed so it suggested downgrading. Hyperdrive continued with the installation of node12 and the hyperdrive version of vim and completed with:

Installation complete. You have made it into hyperspace!
Please run again if you want to verify installation success.

Note: Install from source notes indicates we need the latest version of node 14 but hyperdrive installed node v12.
Continued with directions on cloning the lando cli repo and running yarn.

I then added the symlink per the instructions. Running lando.dev (or ./bin/lando.js from the repo directory) produces the following error:

Unhandled rejection Error: Cannot find module '/Users/gilzow/Documents/projects/lando-cli/docs/.vuepress/guides.json'
Require stack:
- /Users/gilzow/Documents/projects/lando-cli/plugins/lando-alliance/tasks/guide-generate.js
- /Users/gilzow/Documents/projects/lando-cli/lib/lando.js
- /Users/gilzow/Documents/projects/lando-cli/bin/lando.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:815:15)
    at Function.Module._load (internal/modules/cjs/loader.js:667:27)
    at Module.require (internal/modules/cjs/loader.js:887:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at module.exports (/Users/gilzow/Documents/projects/lando-cli/plugins/lando-alliance/tasks/guide-generate.js:16:22)
    at /Users/gilzow/Documents/projects/lando-cli/lib/lando.js:89:37
From previous event:
    at processImmediate (internal/timers.js:461:21)

Inspected the lando-cli directory and there was no docs folder present. I manually created the ./docs/.vuepress directories and made an empty ( {}) guides.json file and now lando.dev runs as it should. However, I assume these directories and file should be present?

Lando creates empty .ssh folder in app root

Thanks for Lando! I would like to report a simple but annoying bug.

Due to 582e22a when setting home: '' in ~/.lando/config.yml to avoid mounting the home folder as described in lando/lando#2635 (comment) Lando creates an empty folder named .ssh in the app root (next to .lando.yml)

This happens since lando.config.home is an empty string, so path.join(lando.config.home, '.ssh') evaluates to .ssh and therefore creates the folder in the working directory.

Would you like a PR or is this simple enough for you to quick fix with something like for lines 64-66:

const sshDir = lando.config.home && path.join(lando.config.home, '.ssh');
  // Ensure some dirs exist before we start
  _.forEach([caDir, sshDir], dir => dir && mkdirp.sync(dir));

Thanks for all your efforts!

Lando CLI does not report an error when using a command that does not exist

For any lando project, if you try to run a command that does not exist, lando exits without any error. Some users might misinterpret this as a successful command.

You can duplicate this by running anything like:

lando this-command-does-not-exist

or maybe

lando poweroof

A colleague of mine has been running lando reload and was quite pleased with the speed of the command, but confused by the fact that their app never did reflect any changes. They really needed to run lando restart. Full "did you mean" coverage would be lovely, but... at least a "command not found" error message would be helpful.

Crash handler does not respect --yes

If an error occurs during lando setup -y the user is shown a CRASH message followed by a prompt asking if they'd like to send an error report. When running this as part of a scripted process, it may not be desirable, or even possible for the user to respond, potentially leading to a hung process. The error handler should respect the -y and it should not prompt the user.

php 7.2 on Debian 11

We just pushed up our debian 11 containers for php 7.3+. There is no 7.2 container for bullseye. We still have a marginal amount of users that utilize 7.2.

If we have time, look into the the differences to make the 7.2 container pseudo-debian 11 compatible.

MSSQL service latest version no longer supported

It looks like the mssql service is configured to use the latest tag as the default version. Unfortunately it looks like a recent update removed the latest tag as an option on DockerHub, which means that building a mssql service with the default configuration results in an error pulling down the docker container. It looks like the closest alternative to the latest tag is 2019-latest.

Additionally, the docker image being used by lando for the mssql service (microsoft/mssql-server-linux) has been deprecated in favor of mcr.microsoft.com/mssql/server, so I'm assuming this should be updated as well.

If I could get some guidance on which version(s) you'd like to support and if there are any concerns switching the image, I think I could knock out a PR for this fairly quickly using the mysql service as a reference. Here's a link to the new docker image: https://hub.docker.com/_/microsoft-mssql-server

To anyone who happens upon this before the issue has been resolved, here's how to work around this issue via custom configuration for your service:

my-database-service:
    # Use custom version
    type: mssql:custom
    overrides:
      # Override the image name and use the version 2019-latest
      image: 'mcr.microsoft.com/mssql/server:2019-latest'

SSL

Our corporate overlords enforce the usage of Netskope upon us, and the nature of that software is that every https request is decoded, inspected and then re-signed with a self signed certificate. Normal NPM has no issues with this procedure, but since the 3.21.0-beta releases the new commands lando setup a lot of warnings are thrown and eventually the command fails.

It's bit like the issue described here lando/lando#3458 but the usual tricks don't seem to work with the new CLI tooling in place.

I wouldn't mind to see if I could fix this, however I will need some starting point on how the structure of Lando works under the hood. Looking at the debug log below I suspect that /snapshot/cli/node_modules/@lando/core/tasks/setup.js does a direct http call to npmjs repo's to check for a new version and the call would need an option to 'force' ignore that self-signed certificate warning and continue anyway. This will be a security issue, but given that Lando is primarily used by developers I think that the risk is somewhat acceptable on this.

lando setup -y --debug
  lando.js starting 'lando.js' version '3.21.0-beta.1' runtime selector... +0ms
  lando.js merged in additional config source from file '/snapshot/cli/config.yml' +22ms
  lando.js merged in additional config source from file '/Users/rene.bakx/.lando/config.yml' +1ms
  lando.js merged in additional config source from 'LANDO_*' envvars with data {} +0ms
  lando.js final assembled minconf is {
  lando.js   configSources: [ '/snapshot/cli/config.yml', '/Users/rene.bakx/.lando/config.yml' ],
  lando.js   envPrefix: 'LANDO',
  lando.js   landoFile: '.lando.yml',
  lando.js   preLandoFiles: [
  lando.js     '.lando.base.yml',
  lando.js     '.lando.dist.yml',
  lando.js     '.lando.recipe.yml',
  lando.js     '.lando.upstream.yml'
  lando.js   ],
  lando.js   postLandoFiles: [ '.lando.local.yml', '.lando.user.yml' ],
  lando.js   runtime: 3,
  lando.js   srcRoot: '/snapshot/cli',
  lando.js   userConfRoot: '/Users/rene.bakx/.lando',
  lando.js   product: 'lando',
  lando.js   hyperdrive: 'hyperdrive',
  lando.js   channel: 'stable',
  lando.js   domain: 'lndo.site',
  lando.js   mode: 'cli',
  lando.js   stats: [ { report: true, url: 'https://metrics.lando.dev' } ],
  lando.js   home: ''
  lando.js } +1ms
  lando.js using '@lando/core' runtime version 3 +25ms
  lando.js starting lando with 'v3' runtime using cli { ENVPREFIX: undefined, LOGLEVELCONSOLE: 4, USERCONFROOT: undefined, COREBASE: '@lando/core' } +19ms
  lando starting bootstrap at level app...  +1ms
  lando config bootstrap beginning...  +3ms
  lando emitting event pre-bootstrap-config  +1ms
  lando plugin '@lando/core' loaded from /snapshot/cli/node_modules/@lando/core/index.js  +10ms
  lando plugin '@lando/healthcheck' loaded from /snapshot/cli/node_modules/@lando/core/plugins/healthcheck/index.js  +2ms
  lando plugin '@lando/networking' loaded from /snapshot/cli/node_modules/@lando/core/plugins/networking/index.js  +0ms
  lando plugin '@lando/proxy' loaded from /snapshot/cli/node_modules/@lando/core/plugins/proxy/index.js  +1ms
  lando plugin '@lando/scanner' loaded from /snapshot/cli/node_modules/@lando/core/plugins/scanner/index.js  +1ms
  lando plugin '@lando/sharing' loaded from /snapshot/cli/node_modules/@lando/core/plugins/sharing/index.js  +0ms
  lando plugin '@lando/acquia' loaded from /snapshot/cli/node_modules/@lando/acquia/index.js  +1ms
  lando plugin '@lando/apache' loaded from /snapshot/cli/node_modules/@lando/apache/index.js  +0ms
  lando plugin '@lando/backdrop' loaded from /snapshot/cli/node_modules/@lando/backdrop/index.js  +0ms
  lando plugin '@lando/compose' loaded from /snapshot/cli/node_modules/@lando/compose/index.js  +1ms
  lando plugin '@lando/dotnet' loaded from /snapshot/cli/node_modules/@lando/dotnet/index.js  +0ms
  lando plugin '@lando/drupal' loaded from /snapshot/cli/node_modules/@lando/drupal/index.js  +0ms
  lando plugin '@lando/elasticsearch' loaded from /snapshot/cli/node_modules/@lando/elasticsearch/index.js  +0ms
  lando plugin '@lando/go' loaded from /snapshot/cli/node_modules/@lando/go/index.js  +1ms
  lando plugin '@lando/joomla' loaded from /snapshot/cli/node_modules/@lando/joomla/index.js  +4ms
  lando plugin '@lando/lagoon' loaded from /snapshot/cli/node_modules/@lando/lagoon/index.js  +10ms
  lando plugin '@lando/lamp' loaded from /snapshot/cli/node_modules/@lando/lamp/index.js  +0ms
  lando plugin '@lando/laravel' loaded from /snapshot/cli/node_modules/@lando/laravel/index.js  +1ms
  lando plugin '@lando/lemp' loaded from /snapshot/cli/node_modules/@lando/lemp/index.js  +0ms
  lando plugin '@lando/mailhog' loaded from /snapshot/cli/node_modules/@lando/mailhog/index.js  +0ms
  lando plugin '@lando/mariadb' loaded from /snapshot/cli/node_modules/@lando/mariadb/index.js  +1ms
  lando plugin '@lando/mean' loaded from /snapshot/cli/node_modules/@lando/mean/index.js  +0ms
  lando plugin '@lando/memcached' loaded from /snapshot/cli/node_modules/@lando/memcached/index.js  +0ms
  lando plugin '@lando/mongo' loaded from /snapshot/cli/node_modules/@lando/mongo/index.js  +1ms
  lando plugin '@lando/mssql' loaded from /snapshot/cli/node_modules/@lando/mssql/index.js  +0ms
  lando plugin '@lando/mysql' loaded from /snapshot/cli/node_modules/@lando/mysql/index.js  +0ms
  lando plugin '@lando/nginx' loaded from /snapshot/cli/node_modules/@lando/nginx/index.js  +1ms
  lando plugin '@lando/node' loaded from /snapshot/cli/node_modules/@lando/node/index.js  +0ms
  lando plugin '@lando/pantheon' loaded from /snapshot/cli/node_modules/@lando/pantheon/index.js  +29ms
  lando plugin '@lando/php' loaded from /snapshot/cli/node_modules/@lando/php/index.js  +1ms
  lando plugin '@lando/phpmyadmin' loaded from /snapshot/cli/node_modules/@lando/phpmyadmin/index.js  +1ms
  lando plugin '@lando/platformsh' loaded from /snapshot/cli/node_modules/@lando/platformsh/index.js  +13ms
  lando plugin '@lando/postgres' loaded from /snapshot/cli/node_modules/@lando/postgres/index.js  +1ms
  lando plugin '@lando/python' loaded from /snapshot/cli/node_modules/@lando/python/index.js  +0ms
  lando plugin '@lando/redis' loaded from /snapshot/cli/node_modules/@lando/redis/index.js  +0ms
  lando plugin '@lando/ruby' loaded from /snapshot/cli/node_modules/@lando/ruby/index.js  +1ms
  lando plugin '@lando/solr' loaded from /snapshot/cli/node_modules/@lando/solr/index.js  +0ms
  lando plugin '@lando/symfony' loaded from /snapshot/cli/node_modules/@lando/symfony/index.js  +1ms
  lando plugin '@lando/tomcat' loaded from /snapshot/cli/node_modules/@lando/tomcat/index.js  +0ms
  lando plugin '@lando/varnish' loaded from /snapshot/cli/node_modules/@lando/varnish/index.js  +1ms
  lando plugin '@lando/wordpress' loaded from /snapshot/cli/node_modules/@lando/wordpress/index.js  +0ms
  lando removed duplicate plugin entries %o name=@lando/core, path=/snapshot/cli/node_modules/@lando/core, type=local +0ms
  lando emitting event post-bootstrap-config  +2ms
  lando building proxy config...  +0ms
  lando config bootstrap completed.  +1ms
  lando tasks bootstrap beginning...  +0ms
  lando emitting event pre-bootstrap-tasks  +0ms
  lando autoloaded task config  +95ms
  lando autoloaded task destroy  +0ms
  lando autoloaded task info  +1ms
  lando autoloaded task init  +5ms
  lando autoloaded task list  +0ms
  lando autoloaded task logs  +0ms
  lando autoloaded task plugin-add  +1ms
  lando autoloaded task plugin-login  +0ms
  lando autoloaded task plugin-logout  +0ms
  lando autoloaded task plugin-remove  +0ms
  lando autoloaded task poweroff  +1ms
  lando autoloaded task rebuild  +0ms
  lando autoloaded task restart  +0ms
  lando autoloaded task setup  +3ms
  lando autoloaded task share  +0ms
  lando autoloaded task ssh  +0ms
  lando autoloaded task start  +0ms
  lando autoloaded task stop  +1ms
  lando autoloaded task update  +0ms
  lando autoloaded task version  +0ms
  lando emitting event post-bootstrap-tasks  +3ms
  lando tasks bootstrap completed.  +0ms
  lando engine bootstrap beginning...  +0ms
  lando emitting event pre-bootstrap-engine  +0ms
  lando automoved scripts from /snapshot/cli/node_modules/@lando/core/scripts to /Users/rene.bakx/.lando/scripts and set to mode 755  +91ms
  lando automoved scripts from /snapshot/cli/node_modules/@lando/core/plugins/proxy/scripts to /Users/rene.bakx/.lando/scripts and set to mode 755  +7ms
  lando automoved scripts from /snapshot/cli/node_modules/@lando/core/plugins/sharing/scripts to /Users/rene.bakx/.lando/scripts and set to mode 755  +9ms
  lando automoved scripts from /snapshot/cli/node_modules/@lando/acquia/scripts to /Users/rene.bakx/.lando/scripts and set to mode 755  +25ms
  lando automoved scripts from /snapshot/cli/node_modules/@lando/backdrop/scripts to /Users/rene.bakx/.lando/scripts and set to mode 755  +10ms
  lando automoved scripts from /snapshot/cli/node_modules/@lando/lagoon/scripts to /Users/rene.bakx/.lando/scripts and set to mode 755  +23ms
  lando automoved scripts from /snapshot/cli/node_modules/@lando/nginx/scripts to /Users/rene.bakx/.lando/scripts and set to mode 755  +8ms
  lando automoved scripts from /snapshot/cli/node_modules/@lando/pantheon/scripts to /Users/rene.bakx/.lando/scripts and set to mode 755  +22ms
  lando automoved scripts from /snapshot/cli/node_modules/@lando/php/scripts to /Users/rene.bakx/.lando/scripts and set to mode 755  +9ms
  lando automoved scripts from /snapshot/cli/node_modules/@lando/platformsh/scripts to /Users/rene.bakx/.lando/scripts and set to mode 755  +28ms
  lando emitting event post-bootstrap-engine  +1ms
  lando engine bootstrap completed.  +1ms
  lando app bootstrap beginning...  +0ms
  lando emitting event pre-bootstrap-app  +0ms
  lando autoloaded legacy builder _platformsh_appserver  +18ms
  lando autoloaded legacy builder _platformsh_service  +0ms
  lando autoloaded legacy builder memcached  +0ms
  lando autoloaded legacy builder platformsh-chrome-headless  +0ms
  lando autoloaded legacy builder platformsh-elasticsearch  +0ms
  lando autoloaded legacy builder platformsh-influxdb  +0ms
  lando autoloaded legacy builder platformsh-kafka  +0ms
  lando autoloaded legacy builder platformsh-mariadb  +1ms
  lando autoloaded legacy builder platformsh-memcached  +0ms
  lando autoloaded legacy builder platformsh-mongodb  +0ms
  lando autoloaded legacy builder platformsh-mysql  +0ms
  lando autoloaded legacy builder platformsh-php  +0ms
  lando autoloaded legacy builder platformsh-postgresql  +0ms
  lando autoloaded legacy builder platformsh-rabbitmq  +0ms
  lando autoloaded legacy builder platformsh-redis  +0ms
  lando autoloaded legacy builder platformsh-solr  +0ms
  lando autoloaded legacy builder platformsh-varnish  +0ms
  lando autoloaded legacy builder pantheon  +0ms
  lando autoloaded legacy builder platformsh  +0ms
  lando autodiscovered legacy api 3 builder _appserver  +6ms
  lando autodiscovered legacy api 3 builder _casetup  +0ms
  lando autodiscovered legacy api 3 builder _init  +0ms
  lando autodiscovered legacy api 3 builder _lando  +0ms
  lando autodiscovered legacy api 3 builder _landoutil  +0ms
  lando autodiscovered legacy api 4 builder _service  +0ms
  lando autodiscovered legacy api 3 builder _service  +1ms
  lando autodiscovered legacy api 3 builder _webserver  +0ms
  lando autodiscovered legacy api 4 builder lando  +0ms
  lando autodiscovered legacy api 3 builder lando  +0ms
  lando autodiscovered legacy api 3 builder _proxy  +0ms
  lando autodiscovered legacy api 3 builder _mounter  +0ms
  lando autodiscovered legacy api 3 builder acquia-base  +0ms
  lando autodiscovered legacy api 3 builder acquia-mailhog  +0ms
  lando autodiscovered legacy api 3 builder acquia-mariadb  +0ms
  lando autodiscovered legacy api 3 builder acquia-memcached  +0ms
  lando autodiscovered legacy api 3 builder acquia-mysql  +0ms
  lando autodiscovered legacy api 3 builder acquia-php  +0ms
  lando autodiscovered legacy api 3 builder acquia-postgres  +1ms
  lando autodiscovered legacy api 3 builder acquia  +0ms
  lando autodiscovered legacy api 3 builder apache  +0ms
  lando autodiscovered legacy api 3 builder backdrop-mariadb  +0ms
  lando autodiscovered legacy api 3 builder backdrop-mysql  +0ms
  lando autodiscovered legacy api 3 builder backdrop-nginx  +0ms
  lando autodiscovered legacy api 3 builder backdrop-php  +0ms
  lando autodiscovered legacy api 3 builder backdrop  +0ms
  lando autodiscovered legacy api 3 builder compose  +0ms
  lando autodiscovered legacy api 3 builder dotnet  +0ms
  lando autodiscovered legacy api 3 builder _drupaly  +0ms
  lando autodiscovered legacy api 3 builder drupal-mariadb  +0ms
  lando autodiscovered legacy api 3 builder drupal-mysql  +1ms
  lando autodiscovered legacy api 3 builder drupal-nginx  +0ms
  lando autodiscovered legacy api 3 builder drupal-php  +0ms
  lando autodiscovered legacy api 3 builder drupal-postgres  +0ms
  lando autodiscovered legacy api 3 builder drupal10  +0ms
  lando autodiscovered legacy api 3 builder drupal6  +0ms
  lando autodiscovered legacy api 3 builder drupal7  +0ms
  lando autodiscovered legacy api 3 builder drupal8  +0ms
  lando autodiscovered legacy api 3 builder drupal9  +0ms
  lando autodiscovered legacy api 3 builder elasticsearch  +0ms
  lando autodiscovered legacy api 3 builder go  +0ms
  lando autodiscovered legacy api 3 builder joomla-mariadb  +0ms
  lando autodiscovered legacy api 3 builder joomla-mysql  +0ms
  lando autodiscovered legacy api 3 builder joomla-nginx  +1ms
  lando autodiscovered legacy api 3 builder joomla-php  +0ms
  lando autodiscovered legacy api 3 builder joomla-postgres  +0ms
  lando autodiscovered legacy api 3 builder joomla  +0ms
  lando autodiscovered legacy api 3 builder _lagoon  +0ms
  lando autodiscovered legacy api 3 builder lagoon-basic  +0ms
  lando autodiscovered legacy api 3 builder lagoon-elasticsearch  +0ms
  lando autodiscovered legacy api 3 builder lagoon-mailhog  +0ms
  lando autodiscovered legacy api 3 builder lagoon-mariadb  +0ms
  lando autodiscovered legacy api 3 builder lagoon-nginx  +0ms
  lando autodiscovered legacy api 3 builder lagoon-node  +1ms
  lando autodiscovered legacy api 3 builder lagoon-none  +0ms
  lando autodiscovered legacy api 3 builder lagoon-php-cli  +0ms
  lando autodiscovered legacy api 3 builder lagoon-php  +0ms
  lando autodiscovered legacy api 3 builder lagoon-postgresql  +0ms
  lando autodiscovered legacy api 3 builder lagoon-python  +0ms
  lando autodiscovered legacy api 3 builder lagoon-redis  +0ms
  lando autodiscovered legacy api 3 builder lagoon-ruby  +0ms
  lando autodiscovered legacy api 3 builder lagoon-solr  +0ms
  lando autodiscovered legacy api 3 builder lagoon-varnish  +0ms
  lando autodiscovered legacy api 3 builder lagoon  +0ms
  lando autodiscovered legacy api 3 builder lamp-mariadb  +0ms
  lando autodiscovered legacy api 3 builder lamp-mongo  +0ms
  lando autodiscovered legacy api 3 builder lamp-mysql  +0ms
  lando autodiscovered legacy api 3 builder lamp-nginx  +1ms
  lando autodiscovered legacy api 3 builder lamp-php  +0ms
  lando autodiscovered legacy api 3 builder lamp-postgres  +0ms
  lando autodiscovered legacy api 3 builder lamp  +0ms
  lando autodiscovered legacy api 3 builder laravel-mariadb  +0ms
  lando autodiscovered legacy api 3 builder laravel-mysql  +0ms
  lando autodiscovered legacy api 3 builder laravel-nginx  +0ms
  lando autodiscovered legacy api 3 builder laravel-php  +0ms
  lando autodiscovered legacy api 3 builder laravel-postgres  +0ms
  lando autodiscovered legacy api 3 builder laravel-redis  +0ms
  lando autodiscovered legacy api 3 builder laravel  +0ms
  lando autodiscovered legacy api 3 builder lemp-mariadb  +0ms
  lando autodiscovered legacy api 3 builder lemp-mongo  +1ms
  lando autodiscovered legacy api 3 builder lemp-mysql  +0ms
  lando autodiscovered legacy api 3 builder lemp-nginx  +0ms
  lando autodiscovered legacy api 3 builder lemp-php  +0ms
  lando autodiscovered legacy api 3 builder lemp-postgres  +0ms
  lando autodiscovered legacy api 3 builder lemp  +0ms
  lando autodiscovered legacy api 3 builder mailhog  +0ms
  lando autodiscovered legacy api 3 builder mariadb  +0ms
  lando autodiscovered legacy api 3 builder mean-mariadb  +0ms
  lando autodiscovered legacy api 3 builder mean-mongo  +0ms
  lando autodiscovered legacy api 3 builder mean-mysql  +0ms
  lando autodiscovered legacy api 3 builder mean-node  +0ms
  lando autodiscovered legacy api 3 builder mean-postgres  +0ms
  lando autodiscovered legacy api 3 builder mean  +1ms
  lando autodiscovered legacy api 3 builder mongo  +0ms
  lando autodiscovered legacy api 3 builder mssql  +0ms
  lando autodiscovered legacy api 3 builder mysql  +0ms
  lando autodiscovered legacy api 3 builder nginx  +0ms
  lando autodiscovered legacy api 3 builder node  +0ms
  lando autodiscovered legacy api 3 builder pantheon-mariadb-arm  +0ms
  lando autodiscovered legacy api 3 builder pantheon-mariadb  +0ms
  lando autodiscovered legacy api 3 builder pantheon-nginx  +0ms
  lando autodiscovered legacy api 3 builder pantheon-php  +0ms
  lando autodiscovered legacy api 3 builder pantheon-redis  +0ms
  lando autodiscovered legacy api 3 builder pantheon-solr  +0ms
  lando autodiscovered legacy api 3 builder pantheon-varnish  +0ms
  lando autodiscovered legacy api 3 builder php-nginx  +0ms
  lando autodiscovered legacy api 3 builder php  +1ms
  lando autodiscovered legacy api 3 builder phpmyadmin  +0ms
  lando autodiscovered legacy api 3 builder postgres  +0ms
  lando autodiscovered legacy api 3 builder python  +0ms
  lando autodiscovered legacy api 3 builder redis  +0ms
  lando autodiscovered legacy api 3 builder ruby  +0ms
  lando autodiscovered legacy api 3 builder solr  +0ms
  lando autodiscovered legacy api 3 builder symfony-mariadb  +0ms
  lando autodiscovered legacy api 3 builder symfony-memcached  +0ms
  lando autodiscovered legacy api 3 builder symfony-mysql  +0ms
  lando autodiscovered legacy api 3 builder symfony-nginx  +0ms
  lando autodiscovered legacy api 3 builder symfony-php  +0ms
  lando autodiscovered legacy api 3 builder symfony-postgres  +0ms
  lando autodiscovered legacy api 3 builder symfony-redis  +1ms
  lando autodiscovered legacy api 3 builder symfony  +0ms
  lando autodiscovered legacy api 3 builder tomcat  +0ms
  lando autodiscovered legacy api 3 builder varnish-nginx  +0ms
  lando autodiscovered legacy api 3 builder varnish  +0ms
  lando autodiscovered legacy api 3 builder wordpress-apache  +0ms
  lando autodiscovered legacy api 3 builder wordpress-mariadb  +0ms
  lando autodiscovered legacy api 3 builder wordpress-mysql  +0ms
  lando autodiscovered legacy api 3 builder wordpress-nginx  +0ms
  lando autodiscovered legacy api 3 builder wordpress-php  +0ms
  lando autodiscovered legacy api 3 builder wordpress-postgres  +0ms
  lando autodiscovered legacy api 3 builder wordpress  +0ms
  lando emitting event post-bootstrap-app  +1ms
  lando app bootstrap completed.  +4ms
  lando bootstrap completed.  +0ms
  lando emitting event post-bootstrap  +0ms
  lando emitting event almost-ready  +1ms
  lando using docker-compose /Applications/Docker.app/Contents/Resources/bin/docker-compose  +0ms
  lando emitting event ready  +5ms
  lando emitting event cli-answers  +1ms
  lando emitting event cli-setup-answers  +1ms
  lando emitting event cli-run  +0ms
  lando emitting event cli-setup-run  +0ms

   __                __       ____    __            __
  / /  ___ ____  ___/ /__    / __/__ / /___ _____  / /
 / /__/ _ `/ _ \/ _  / _ \  _\ \/ -_) __/ // / _ \/_/
/____/\_,_/_//_/\_,_/\___/ /___/\__/\__/\_,_/ .__(_)
                                           /_/

lando setup is a convenience command to help you satisify the dependencies needed
to run Lando. Typically it includes the installation and setup of some combination of the below
However, if you already have the needed dependencies it will happily do nothing and exit.

 ◼ Common Lando Plugins
 ◼ Docker Desktop
 ◼ Docker Compose

It will attempt to install plugins first and then it will run any needed setup tasks. For more information on
customizing setup please run lando setup --help

  lando emitting event pre-install-plugins  +189ms
  lando rebased install plugins {} on common ones %o @lando/acquia=latest, @lando/apache=latest, @lando/backdrop=latest, @lando/compose=latest, @lando/dotnet=latest, @lando/drupal=latest, @lando/elasticsearch=latest, @lando/go=latest, @lando/joomla=latest, @lando/lagoon=latest, @lando/lamp=latest, @lando/laravel=latest, @lando/lemp=latest, @lando/mailhog=latest, @lando/mariadb=latest, @lando/mean=latest, @lando/memcached=latest, @lando/mongo=latest, @lando/mssql=latest, @lando/mysql=latest, @lando/nginx=latest, @lando/node=latest, @lando/pantheon=latest, @lando/php=latest, @lando/phpmyadmin=latest, @lando/platformsh=latest, @lando/postgres=latest, @lando/python=latest, @lando/redis=latest, @lando/ruby=latest, @lando/solr=latest, @lando/symfony=latest, @lando/tomcat=latest, @lando/varnish=latest, @lando/wordpress=latest +1ms
  lando checking docker version compatibility...  +158ms
  lando compatibility results name=compose, link=https://docs.docker.com/desktop/install/mac-install/, satisfied=true, wants=1.x.x || 2.x.x, dockerVersion=true, version=2.23.0, name=desktop, link=https://docs.docker.com/desktop/install/mac-install/, satisfied=false, wants=>=4.0.0 <4.26, dockerVersion=true, version=4.27.2 +1ms
  lando request to https://registry.npmjs.org/@lando%2fbackdrop failed, reason: self-signed certificate in certificate chain  +514ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fcompose failed, reason: self-signed certificate in certificate chain  +3ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fmailhog failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2flamp failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2felasticsearch failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fapache failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fmemcached failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fmean failed, reason: self-signed certificate in certificate chain  +7ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fdotnet failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fdrupal failed, reason: self-signed certificate in certificate chain  +4ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2facquia failed, reason: self-signed certificate in certificate chain  +5ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +1ms
  lando request to https://registry.npmjs.org/@lando%2flagoon failed, reason: self-signed certificate in certificate chain  +33ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fmongo failed, reason: self-signed certificate in certificate chain  +21ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +1ms
  lando request to https://registry.npmjs.org/@lando%2flemp failed, reason: self-signed certificate in certificate chain  +21ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fphpmyadmin failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fpantheon failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fpostgres failed, reason: self-signed certificate in certificate chain  +4ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fplatformsh failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fphp failed, reason: self-signed certificate in certificate chain  +6ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fredis failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2ftomcat failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fsymfony failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fwordpress failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fruby failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fpython failed, reason: self-signed certificate in certificate chain  +4ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fmssql failed, reason: self-signed certificate in certificate chain  +20ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fmariadb failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fjoomla failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fgo failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2flaravel failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fnginx failed, reason: self-signed certificate in certificate chain  +3ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fnode failed, reason: self-signed certificate in certificate chain  +8ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fmysql failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fsolr failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando request to https://registry.npmjs.org/@lando%2fvarnish failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando emitting event post-install-plugins  +532ms
Generating plugin installation matrix... done [see table below]
  lando emitting event pre-install-plugins  +1ms
  lando [STARTED] Adding @lando/acquia@latest  +8ms
  lando [STARTED] Adding @lando/apache@latest  +0ms
  lando [STARTED] Adding @lando/backdrop@latest  +0ms
  lando [STARTED] Adding @lando/compose@latest  +0ms
  lando [STARTED] Adding @lando/dotnet@latest  +0ms
  lando [STARTED] Adding @lando/drupal@latest  +0ms
  lando [STARTED] Adding @lando/elasticsearch@latest  +1ms
  lando [STARTED] Adding @lando/go@latest  +0ms
  lando [STARTED] Adding @lando/joomla@latest  +0ms
  lando [STARTED] Adding @lando/lagoon@latest  +0ms
  lando [STARTED] Adding @lando/lamp@latest  +0ms
  lando [STARTED] Adding @lando/laravel@latest  +0ms
  lando [STARTED] Adding @lando/lemp@latest  +0ms
  lando [STARTED] Adding @lando/mailhog@latest  +0ms
  lando [STARTED] Adding @lando/mariadb@latest  +0ms
  lando [STARTED] Adding @lando/mean@latest  +0ms
  lando [STARTED] Adding @lando/memcached@latest  +0ms
  lando [STARTED] Adding @lando/mongo@latest  +0ms
  lando [STARTED] Adding @lando/mssql@latest  +1ms
  lando [STARTED] Adding @lando/mysql@latest  +0ms
  lando [STARTED] Adding @lando/nginx@latest  +0ms
  lando [STARTED] Adding @lando/node@latest  +0ms
  lando [STARTED] Adding @lando/pantheon@latest  +0ms
  lando [STARTED] Adding @lando/php@latest  +0ms
  lando [STARTED] Adding @lando/phpmyadmin@latest  +0ms
  lando [STARTED] Adding @lando/platformsh@latest  +0ms
  lando [STARTED] Adding @lando/postgres@latest  +0ms
  lando [STARTED] Adding @lando/python@latest  +0ms
  lando [STARTED] Adding @lando/redis@latest  +0ms
  lando [STARTED] Adding @lando/ruby@latest  +0ms
  lando [STARTED] Adding @lando/solr@latest  +0ms
  lando [STARTED] Adding @lando/symfony@latest  +1ms
  lando [STARTED] Adding @lando/tomcat@latest  +0ms
  lando [STARTED] Adding @lando/varnish@latest  +0ms
  lando [STARTED] Adding @lando/wordpress@latest  +0ms
  lando request to https://registry.npmjs.org/@lando%2fapache failed, reason: self-signed certificate in certificate chain  +230ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fapache failed, reason: self-signed certificate in certificate chain  +218ms
  lando request to https://registry.npmjs.org/@lando%2fbackdrop failed, reason: self-signed certificate in certificate chain  +7ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fbackdrop failed, reason: self-signed certificate in certificate chain  +7ms
  lando request to https://registry.npmjs.org/@lando%2fdrupal failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fdrupal failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2felasticsearch failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2felasticsearch failed, reason: self-signed certificate in certificate chain  +1ms
  lando request to https://registry.npmjs.org/@lando%2fcompose failed, reason: self-signed certificate in certificate chain  +4ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fcompose failed, reason: self-signed certificate in certificate chain  +4ms
  lando request to https://registry.npmjs.org/@lando%2fjoomla failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fjoomla failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2fgo failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fgo failed, reason: self-signed certificate in certificate chain  +1ms
  lando request to https://registry.npmjs.org/@lando%2facquia failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2facquia failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2flagoon failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2flagoon failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2flaravel failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2flaravel failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2flamp failed, reason: self-signed certificate in certificate chain  +23ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2flamp failed, reason: self-signed certificate in certificate chain  +23ms
  lando request to https://registry.npmjs.org/@lando%2fdotnet failed, reason: self-signed certificate in certificate chain  +4ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fdotnet failed, reason: self-signed certificate in certificate chain  +4ms
  lando request to https://registry.npmjs.org/@lando%2fmean failed, reason: self-signed certificate in certificate chain  +88ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fmean failed, reason: self-signed certificate in certificate chain  +88ms
  lando request to https://registry.npmjs.org/@lando%2fmariadb failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fmariadb failed, reason: self-signed certificate in certificate chain  +1ms
  lando request to https://registry.npmjs.org/@lando%2fmssql failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fmssql failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2fmailhog failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fmailhog failed, reason: self-signed certificate in certificate chain  +1ms
  lando request to https://registry.npmjs.org/@lando%2fmysql failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fmysql failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2fnode failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fnode failed, reason: self-signed certificate in certificate chain  +1ms
  lando request to https://registry.npmjs.org/@lando%2fnginx failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fnginx failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2fphp failed, reason: self-signed certificate in certificate chain  +7ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fphp failed, reason: self-signed certificate in certificate chain  +6ms
  lando request to https://registry.npmjs.org/@lando%2fmongo failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fmongo failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2fpantheon failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fpantheon failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2flemp failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2flemp failed, reason: self-signed certificate in certificate chain  +1ms
  lando request to https://registry.npmjs.org/@lando%2fmemcached failed, reason: self-signed certificate in certificate chain  +44ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fmemcached failed, reason: self-signed certificate in certificate chain  +44ms
  lando request to https://registry.npmjs.org/@lando%2fphpmyadmin failed, reason: self-signed certificate in certificate chain  +45ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fphpmyadmin failed, reason: self-signed certificate in certificate chain  +45ms
  lando request to https://registry.npmjs.org/@lando%2fpython failed, reason: self-signed certificate in certificate chain  +3ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fpython failed, reason: self-signed certificate in certificate chain  +3ms
  lando request to https://registry.npmjs.org/@lando%2fplatformsh failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fplatformsh failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2fredis failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fredis failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2fruby failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fruby failed, reason: self-signed certificate in certificate chain  +1ms
  lando request to https://registry.npmjs.org/@lando%2fsolr failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fsolr failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2fvarnish failed, reason: self-signed certificate in certificate chain  +2ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fvarnish failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2fwordpress failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fwordpress failed, reason: self-signed certificate in certificate chain  +1ms
  lando request to https://registry.npmjs.org/@lando%2fsymfony failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +1ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fsymfony failed, reason: self-signed certificate in certificate chain  +2ms
  lando request to https://registry.npmjs.org/@lando%2ftomcat failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2ftomcat failed, reason: self-signed certificate in certificate chain  +1ms
  lando request to https://registry.npmjs.org/@lando%2fpostgres failed, reason: self-signed certificate in certificate chain  +1ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errno":"SELF_SIGNED_CERT_IN_CHAIN","type":"system"}  +0ms
  lando [FAILED] request to https://registry.npmjs.org/@lando%2fpostgres failed, reason: self-signed certificate in certificate chain  +2ms
  lando emitting event post-install-plugins  +0ms
  lando installed 0 of 35 plugins with 35 errors  +0ms
  lando {"code":"SELF_SIGNED_CERT_IN_CHAIN","errorCode":"SELF_SIGNED_CERT_IN_CHAIN","exitCode":1,"short":"request to https://registry.npmjs.org/@lando%2fapache failed, reason: self-signed certificate in certificate chain"}  +0ms
  lando ERROR Error: A setup error occured! Rerun with lando setup --debug for more info.
    at Object.run (/snapshot/cli/node_modules/@lando/core/tasks/setup.js)
From previous event:
    at process.processImmediate (node:internal/timers:476:21)
From previous event:
    at Object.handler (/snapshot/cli/lib/cli.js)
    at Object.runCommand (/snapshot/cli/node_modules/yargs/lib/command.js:238:44)
    at Object.parseArgs [as _parseArgs] (/snapshot/cli/node_modules/yargs/yargs.js:1063:30)
    at Function.get [as argv] (/snapshot/cli/node_modules/yargs/yargs.js:1004:21)
    at Cli.init (/snapshot/cli/lib/cli.js)
    at Cli.run (/snapshot/cli/lib/cli.js)
    at Object.<anonymous> (/snapshot/cli/bin/lando.js)
    at Module._compile (pkg/prelude/bootstrap.js:1930:22)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Function.runMain (pkg/prelude/bootstrap.js:1983:12)
    at node:internal/main/run_main_module:23:47  +2ms
  lando reporting error action to report=true, url=https://metrics.lando.dev, report=true, url=https://metrics.lando.dev +14ms
  lando reported data command=lando setup, context=local, devMode=false, instance=d3d2667cc4500e22e9937fd1ce0191a60fe99b9f, nodeVersion=v18.18.2, mode=cli, type=Darwin, platform=darwin, release=23.2.0, arch=x64, product=lando, version=3.21.0-beta.1, message=A setup error occured! Rerun with lando setup --debug for more info., stack=Error: A setup error occured! Rerun with lando setup --debug for more info.
    at Object.run (setup.js)
From previous event:
    at process.processImmediate (timers:476:21)
From previous event:
    at Object.handler (cli.js)
    at Object.runCommand (command.js:238:44)
    at Object.parseArgs [as _parseArgs] (yargs.js:1063:30)
    at Function.get [as argv] (yargs.js:1004:21)
    at Cli.init (cli.js)
    at Cli.run (cli.js)
    at Object.<anonymous> (lando.js)
    at Module._compile (bootstrap.js:1930:22)
    at Module._extensions..js (loader:1310:10)
    at Module.load (loader:1119:32)
    at Module._load (loader:960:12)
    at Function.runMain (bootstrap.js:1983:12)
    at node:internal/main/run_main_module:23:47, action=error, created=2024-02-29T09:25:52.039Z +0ms
  lando metrics post to https://metrics.lando.dev failed with unknown (unknown) unknown  +63ms
  lando metrics post to https://metrics.lando.dev failed with unknown (unknown) unknown  +14ms

Suggestion: lando init creates dir or offers to

Hi there, I have a suggestion for the CLI functionality that could potentially be considered.

I know that others possibly use the lando init command in a different way to me, but I only using Lando to work on Drupal sites hosted on Pantheon. I frequently use:

lando init --source pantheon

to clone down an existing site and start working on it. The issue I often have is that I have to:

mkdir siteName
cd siteName
lando init --source pantheon
choose siteName

because running the init command does not create a directory. This is different to how a lot of software works and I often forget to create the directory. I end up doing:

cd sites
lando init--source pantheon

expecting it to make siteName inside sites, but instead, I clone the site directly into the sites folder.

Would it be worth considering changing this, or the command offering the option to create a site directory?

[question] Terminal COLUMNS

Hello,

Why is terminal columns/width not updated (from host) when using lando artisan ... function but is correct when using php artisan ... inside lando ssh?

image

[v3.3.0] Lando gets confused when running multiple projects simultaneously

I have noticed on numerous occasions that lando will not connect to the correct database or confuse the name with another running project instance.

Steps to reproduce:

$ cd /path/to/project1
$ lando start
$ cd /path/to/project2
$ lando start
...

Specs below:

$ uname -a
Linux dell-precision-m6700 4.19.0-5-amd64 #1 SMP Debian 4.19.37-2~mx17+1 (2019-05-15) x86_64 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: MX
Description:    MX 18.3 Continuum
Release:        18.3
Codename:       Continuum
$ docker -v
Docker version 19.03.15, build 99e3ed8919
$ docker-compose -v
docker-compose version 1.25.1, build a82fef07
$ lando version
v3.3.0
$ node -v
v14.17.5
$ yarn -v
1.22.5

This issue has been ongoing and I was hoping version 3.3.0 would fix it but unfortunately, not.

Note: Lando was installed from source.

"ERROR ==> Invalid host defined options" after start

With Lando 3.20 sponsor prerelease I see "ERROR ==> Invalid host defined options" after each start. Have not seen this in previous versions of Lando.

Software Version
Lando v3.20.0 (sponsor prerelease)
Docker 24.0.6
Linux 6.2.0-32-generic
Ubuntu 22.04.3

Reproduction: Run lando start etc with this .lando.yml (I pared back from my existing config to see if I could isolate the cause). .env was an empty file.

name: example
env_file:
  - .env
services:
  node:
    type: node:18

Output of lando rebuild:

? Are you sure you want to rebuild? Yes
Rising anew like a fire phoenix from the ashes! Rebuilding app...
[+] Killing 1/1
 ✔ Container example_node_1  Killed                                                                                                                                                      0.3s 
Going to remove example_node_1
[+] Removing 1/1
 ✔ Container example_node_1  Removed                                                                                                                                                     0.2s 
[+] Pulling 1/1
 ✔ node Pulled                                                                                                                                                                           2.2s 
[+] Running 1/1
 ✔ Container example_node_1  Started                                                                                                                                                     0.1s 

   ___                      __        __        __     __        ______
  / _ )___  ___  __ _  ___ / /  ___ _/ /_____ _/ /__ _/ /_____ _/ / / /
 / _  / _ \/ _ \/  ' \(_-</ _ \/ _ `/  '_/ _ `/ / _ `/  '_/ _ `/_/_/_/ 
/____/\___/\___/_/_/_/___/_//_/\_,_/_/\_\\_,_/_/\_,_/_/\_\\_,_(_|_|_)  
                                                                       

Your app is starting up... See scanning below for real time status
In the meantime, here are some vitals:

 NAME      example 
 LOCATION  /tmp    
 SERVICES  node    
 URLS              
ERROR ==> Invalid host defined options 

Docker version:

chris@thip:/tmp$ docker version
Client: Docker Engine - Community
 Version:           24.0.6
 API version:       1.43
 Go version:        go1.20.7
 Git commit:        ed223bc
 Built:             Mon Sep  4 12:32:12 2023
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          24.0.6
  API version:      1.43 (minimum version 1.12)
  Go version:       go1.20.7
  Git commit:       1a79695
  Built:            Mon Sep  4 12:32:12 2023
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.22
  GitCommit:        8165feabfdfe38c65b599c4993d227328c231fca
 runc:
  Version:          1.1.8
  GitCommit:        v1.1.8-0-g82f18fe
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

Add option to disable unsupported version banner

Using an untested version of DOCKER ENGINE
We have not tested version 26.1.1 yet so congrats on being a pioneer!
Seriously though, this is usually not an issue but be mindful that you
are in uncharted territory. If you encounter an issue we recomend
you downgrade to something <=26.0.0

I'd love a config option to say "I know" and hide the banner.

Cannot run lando inside a Windows Docker image

I am currently trying to run lando inside a Windows Docker image on Windows OS.
Specifically, I am using docker:20.10.8-windowsservercore-1809 from the official Docker in Docker website.

If I use the following Dockerfile, everything works when building by executing docker build -f Dockerfile -t lando-test .

FROM docker:20.10.8-windowsservercore-1809
SHELL ["powershell"]

ARG LANDO_VERSION=3.4.0

WORKDIR /app

RUN $landoUri = \"https://github.com/lando/cli/releases/download/v{0}/lando-win-x64-v{0}.exe\" -f $env:LANDO_VERSION; \
    $landoDestinationDirectory = ($pwd).Path + \"\\lando-cli\"; \
    $landoDestinationPath = $landoDestinationDirectory + \"\\lando.exe\"; \
    $env:Path += \";\" + $landoDestinationDirectory; \
    [Environment]::SetEnvironmentVariable('PATH', $env:Path, [EnvironmentVariableTarget]::Machine); \
    New-Item -Path $landoDestinationDirectory -ItemType Directory; \
    Invoke-WebRequest -Uri $landoUri -OutFile $landoDestinationPath

RUN lando version

However, when I try to run the image by executing
docker run -i --name lando-test -v //./pipe/docker_engine://./pipe/docker_engine lando-test I observe the following when executing commands inside the image:

docker run hello-world works just fine and gives the expected output.
lando version works just fine and gives the expected output.
lando init throws the following error:
Lando could not detect an installation of Docker, which is a required dependency

Looking at the daemon code and env code in GitHub, I see that the path to Docker is somehow hardcoded and does not match the path from the official Docker in Docker image which is C:\Program Files\docker\docker.exe. I guess that there are similar hardcoded paths in other places.

  1. Would it be possible to somehow add the ability to configure the paths in question?
  2. Is there already a way I could achieve this?

[v3.20.2] Verbose output when only expecting version?

$ lando php -v
  lando starting 'lando' version '3.20.2' runtime selector... +0ms
  lando merged in additional config source from file '/home/ed/lando-cli/config.yml' +33ms
  lando merged in additional config source from file '/home/ed/.lando/config.yml' +0ms
  lando merged in additional config source from 'LANDO_*' envvars with data {} +0ms
  lando final assembled minconf is {
  lando   configSources: [ '/home/ed/lando-cli/config.yml', '/home/ed/.lando/config.yml' ],
  lando   envPrefix: 'LANDO',
  lando   landoFile: '.lando.yml',
  lando   preLandoFiles: [
  lando     '.lando.base.yml',
  lando     '.lando.dist.yml',
  lando     '.lando.recipe.yml',
  lando     '.lando.upstream.yml'
  lando   ],
  lando   postLandoFiles: [ '.lando.local.yml', '.lando.user.yml' ],
  lando   runtime: 3,
  lando   srcRoot: '/home/ed/lando-cli',
  lando   userConfRoot: '/home/ed/.lando',
  lando   product: 'lando',
  lando   hyperdrive: 'hyperdrive',
  lando   channel: 'stable',
  lando   domain: 'lndo.site',
  lando   mode: 'cli',
  lando   stats: [ { report: true, url: 'https://metrics.lando.dev' } ],
  lando   orchestratorBin: '/usr/local/bin/docker-compose'
  lando } +1ms
  lando detected an app 'myapp' at '/home/ed/projects/myapp' +16ms
  lando using '@lando/core' runtime version 3 +0ms
  lando starting lando with 'v3' runtime using cli { ENVPREFIX: undefined, LOGLEVELCONSOLE: 4, USERCONFROOT: undefined, COREBASE: '@lando/core' } +62ms
PHP 8.1.18 (cli) (built: May  3 2023 06:03:00) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.18, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.18, Copyright (c), by Zend Technologies

Error on lando rebuild with lando 3.17

Hello,

I'm using Lando in the context of my job at Polylang (Multilingual WordPress plugin). When I need to reproduce a customer issue, I'm creating a WordPress website with lando.
The appname is in general the ticket number. Here's a .lando.ymlexample:

name: 23883
recipe: wordpress
config:
  webroot: .
  xdebug: true
  database: mariadb
  php: "8.0"
services:
  pma:
    type: phpmyadmin
    hosts:
      - database
  mailhog:
    type: mailhog
    hogfrom:
    - appserver
  redis:
    type: redis
    portforward: true
tooling:
  composer:
    service: appserver
proxy:
    pma:
      - pma-23883.lndo.site
    mailhog:
      - mailhog-23883.lndo.site
events:
  post-rebuild:
    - appserver: wp core install --url="https://23883.lndo.site" --title="Website ticket-23883" --admin_user="pll-admin" --admin_password="PolylangXXX" --admin_email="[email protected]"
    - appserver: wp user update pll-admin --locale=us_US
    - appserver: wp plugin activate all-in-one-wp-migration all-in-one-wp-migration-unlimited-extension
    - appserver: wp plugin update --all
    - appserver: wp theme update --all

Until Lando 3.17 it was working but from my update I've this error:

$ lando rebuild --y
pkg/prelude/bootstrap.js:1930
      return wrapper.apply(this.exports, args);
                     ^

TypeError: undefined is not a function
    at Object.getApp (/snapshot/cli/lib/rts.js)
    at Object.<anonymous> (/snapshot/cli/bin/lando.js)
    at Module._compile (pkg/prelude/bootstrap.js:1930:22)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Function.runMain (pkg/prelude/bootstrap.js:1983:12)
    at node:internal/main/run_main_module:17:47

Issue also reported on Slack

[v3.12.0] Error in WSL2

Ever since version v3.12.0, I have been experiencing an error in WSL2 as shown below:

$ lando rebuild -y
node:internal/modules/cjs/loader:1024
  throw err;
  ^

Error: Cannot find module '@lando/core-next/debug'
Require stack:
- /home/ed/lando-cli/bin/lando.js
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:1021:15)
    at Function.Module._load (node:internal/modules/cjs/loader:866:27)
    at Module.require (node:internal/modules/cjs/loader:1093:19)
    at require (node:internal/modules/cjs/helpers:108:18)
    at Object.<anonymous> (/home/ed/lando-cli/bin/lando.js:26:15)
    at Module._compile (node:internal/modules/cjs/loader:1191:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1245:10)
    at Module.load (node:internal/modules/cjs/loader:1069:32)
    at Function.Module._load (node:internal/modules/cjs/loader:904:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [ '/home/ed/lando-cli/bin/lando.js' ]
}

Reverting back to version v3.11.0 fixes the issue.

Output from .lando.yml below:

name: myproject
recipe: pantheon
config:
  framework: drupal8
  site: myproject
  id: axax1x1x-bxfx-4x6x-9x5x-ex7x5x8xdx2x
  composer_version: 2

Device specs below:

Device name	DELL-PRECISION-M6700
Processor	Intel(R) Core(TM) i7-3720QM CPU @ 2.60GHz   2.60 GHz
Installed RAM	32.0 GB
Device ID	EABBCE70-933F-450B-8B60-186618B6CF37
Product ID	00330-75017-75573-AAOEM
System type	64-bit operating system, x64-based processor
Pen and touch	No pen or touch input is available for this display

Windows specs below:

Edition	Windows 10 Pro
Version	22H2
Installed on	‎1/‎30/‎2022
OS build	19045.2364
Experience	Windows Feature Experience Pack 120.2212.4190.0

WSL2 specs below:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.5 LTS
Release:        20.04
Codename:       focal
$ uname -a
Linux DELL-PRECISION-M6700 5.15.79.1-microsoft-standard-WSL2 #1 SMP Wed Nov 23 01:01:46 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
$ docker -v
Docker version 23.0.1, build a5ee5b1
$ docker-compose -v
docker-compose version 1.29.2, build 5becea4c
$ lando version <<< installed from source
Generates error shown above with v3.12.0
$ node -v
v16.19.1
$ npm -v
9.6.0
$ yarn -v
1.22.19

How can the default path of lando ssh be changed?

I have a custom mount for my image.

    type: node:18
    app_mount: false
    overrides:
      volumes:
        - "./frontend:/nuxt"

This works but when I do lando ssh I'm always at /app which is empty.
How can I tell lando to go to /nuxt when I login?

Tab Completion for bash

Feature Request

As a lando user, I would like to be able to press the <TAB> key and have a list of options I can select from so that typing out commands is faster.

This would probably take the form of a simple bash completions script. I don't have the gist of it but something along the lines of the following script in it's simplest form put into /etc/bash_completion.d/

#/usr/bin/env bash
_dothis_completions()
{
  COMPREPLY=($(compgen -W "$(lando)" "${COMP_WORDS[1]}"))
}

complete -F _dothis_completions lando

Duplicate project name detection and prevention

Lando v3.6.5 here, but also happens on v3.6.4

Basically, the main issue here is that if you have two projects/directories with different recipes/plugins being used, Lando will not pick up the recipe/plugin specified in the current Landofile and not only will show you invalid commands if you run lando --help, but also will completely ignore any commands valid for the active Landofile.

Reproduction:

  1. Create directories lando-A and lando-B
  2. Initialize Laravel on lando-A
  3. Run lando --help and take note of the options, lando artisan and lando laravel should be present
  4. Initialize WordPress on lando-B
  5. Run lando --help and take note of the options, lando wp should be present
  6. You will note that in one of the cases above it won't behave correctly. Either Laravel options will show up on WordPress or vice-versa

The only thing I found that fixes this situation is going to the project directory and running lando start or lando rebuild. It seems to update some sort of cache and becomes the "current" Lando application.

A bit related, but something I noticed is that it's possible to run Lando commands such as lando laravel before starting or rebuilding the project for the first time. This leads to a bit of confusion because it will start the containers just as one would expect, but not download any CLI binaries, which will lead to an error saying the binary was not found.

Hope the report is somehow helpful, I've been using Lando for about a month now and it's a quite useful tool! Just found those small details to be a bit confusing or unexpected...

Docker-compose version fails on darwin 21.5.0

The current implementation tries to do:

defaults read /Applications/Docker.app/Contents/Info.plist ComposeVersion

getMacProp('ComposeVersion'),

However, there is no key ComposeVersion (nor EngineVersion) in the defaults object on darwin 21.5.0 (works fine on darwin 20.x.x).

The linux variant - docker-compose version --short , seems to work on darwin too.

Is there a reason we are using the defaults instead on darwin?

Lando lagoon integration .gitconfig & known_hosts missing

When using lando ssh into the cli container, the user's $HOME is set to /home

This doesnt play ball with the symlinking that occurs in

if [ -f "/user/.gitconfig" ]; then
rm -f /var/www/.gitconfig
ln -sf /user/.gitconfig /var/www/.gitconfig
lando_info "Symlinked users .gitconfig."
fi
# Symlink the known_hosts
if [ -f "/user/.ssh/known_hosts" ]; then
rm -f /var/www/.ssh/known_hosts
ln -sf /user/.ssh/known_hosts /var/www/.ssh/known_hosts
lando_info "Symlinked users known_hosts"
fi

Net result is: git config --global --list

fatal: unable to read config file '/home/.gitconfig': No such file or directory

Its a nice subtle detail to have the users .gitconfig available in the cli :)

I've locally got around this by putting the following into /scripts for my lagoon builds (non-clobbering):

#!/bin/sh
set -e

if [ ! -f $HOME/.gitconfig ] && [ -f /user/.gitconfig ]; then
  ln -sf /user/.gitconfig $HOME/.gitconfig
fi

if [ ! -f $HOME/.ssh/known_hosts ] && [ -f /user/.ssh/known_hosts ]; then
  ln -sf /user/.ssh/known_hosts $HOME/.ssh/known_hosts
fi

But maybe theres a better place to integrate this?

Lando requests using ipv6 failing

Using v3.21.0-beta.1 on Linux. After installing for the first time I ran lando setup and received an array of errors on every plugin after the plugin installation matrix was generated. Here's an example of the message:

✖ Cannot Install! request to https://registry.npmjs.org/@lando%2facquia failed, reason: connect ENETUNREACH 2606:4700::6810:1922:443

This prevents lando from installing any plugins.

However I was able to resolve the issue on my local machine by disabling IPv6 support on my network device. After some investigation I discovered my ISP doesn't support IPv6. I used Network Manager to set my IPv6 configurations from 'Automatic' to 'Disabled' and re-ran lando setup. Now lando can retrieve and install the plugins successfully.

Should plugin retrieval have an IPv4 fallback in instances where the IPv6 address can't be resolved? Should lando or the underlying library know this by default? I don't have issues with other applications.

Here is output from lando setup --debug when lando fails to retrieve a plugin while building the installation matrix:

  lando compatibility results name=compose, link=https://docs.docker.com/compose/install/#install-compose-on-linux-systems, satisfied=true, wants=1.x.x || 2.x.x, dockerVersion=true, version=2.23.0, name=engine, link=https://docs.docker.com/engine/install/debian/#install-using-the-convenience-script, satisfied=true, wants=>=18 <25, dockerVersion=true, version=20.10.24 +0ms
  lando request to https://registry.npmjs.org/@lando%2facquia failed, reason: connect ENETUNREACH 2606:4700::6810:1f22:443  +152ms
  lando {"code":"ENETUNREACH","errno":"ENETUNREACH","syscall":"connect","address":"2606:4700::6810:1f22","port":443,"type":"system"}  +1ms
  lando emitting event post-install-plugins  +32ms

[v3.8.1] WSL2 database connection issue

This issue appears to be consistent across different projects using various recipes and independent of whether docker is running inside the Linux distro (tested with Ubuntu 20.04) or whether Docker Desktop is running the docker services. I don't know what else to say other than try it out yourself to see if the issue is repeatable. Example output from a project using the Pantheon recipe shown below:

$ lando start
Let's get this party started! Starting app myproject...
[+] Running 1/0
 ⠿ Container landoproxyhyperion5000gandalfedition-proxy-1  Running                                                                                                                                                                      0.0s
WARN[0000] network lando_proxyedge: network.external.name is deprecated. Please set network.name with external: true
[+] Running 8/0
 ⠿ Container myproject-appserver_nginx-1  Running                                                                                                                                                                                    0.0s
 ⠿ Container myproject-node-1             Running                                                                                                                                                                                    0.0s
 ⠿ Container myproject-edge-1             Running                                                                                                                                                                                    0.0s
 ⠿ Container myproject-appserver-1        Running                                                                                                                                                                                    0.0s
 ⠿ Container myproject-edge_ssl-1         Running                                                                                                                                                                                    0.0s
 ⠿ Container myproject-cache-1            Running                                                                                                                                                                                    0.0s
 ⠿ Container myproject-database-1         Running                                                                                                                                                                                    0.0s
 ⠿ Container myproject-index-1            Running                                                                                                                                                                                    0.0s
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
Waiting until database service is ready...
ERROR ==> database reported as unhealthy.
ERROR ==> Error: (HTTP code 404) no such container - No such container: landoproxyhyperion5000gandalfedition_proxy_1  message=Error: (HTTP code 404) no such container - No such container: landoproxyhyperion5000gandalfedition_proxy_1 , stack=Error: Error: (HTTP code 404) no such container - No such container: landoproxyhyperion5000gandalfedition_proxy_1
    at /home/ed/lando-cli/node_modules/@lando/core/lib/docker.js:14:9
From previous event:
    at containerOpt (/home/ed/lando-cli/node_modules/@lando/core/lib/docker.js:13:94)
    at Landerode.scan (/home/ed/lando-cli/node_modules/@lando/core/lib/docker.js:47:12)
    at Object.exports.scan (/home/ed/lando-cli/node_modules/@lando/core/lib/router.js:114:19)
    at run (/home/ed/lando-cli/node_modules/@lando/core/lib/engine.js:18:59)
    at /home/ed/lando-cli/node_modules/@lando/core/lib/router.js:26:15
    at processImmediate (node:internal/timers:466:21)
From previous event:
    at Object.exports.eventWrapper (/home/ed/lando-cli/node_modules/@lando/core/lib/router.js:26:4)
    at Engine.engineCmd (/home/ed/lando-cli/node_modules/@lando/core/lib/engine.js:18:104)
    at Engine.scan (/home/ed/lando-cli/node_modules/@lando/core/lib/engine.js:385:17)
    at /home/ed/lando-cli/node_modules/@lando/core/plugins/lando-networking/app.js:52:27
From previous event:
    at AsyncEvents.<anonymous> (/home/ed/lando-cli/node_modules/@lando/core/plugins/lando-networking/app.js:47:54)
    at AsyncEvents.handle (/home/ed/lando-cli/node_modules/@lando/core/lib/events.js:84:25)
    at /home/ed/lando-cli/node_modules/@lando/core/lib/events.js:117:21
    at processImmediate (node:internal/timers:466:21)
From previous event:
    at AsyncEvents.emit (/home/ed/lando-cli/node_modules/@lando/core/lib/events.js:111:20)
    at /home/ed/lando-cli/node_modules/@lando/core/lib/app.js:438:29
From previous event:
    at App.start (/home/ed/lando-cli/node_modules/@lando/core/lib/app.js:438:6)
    at Object.run (/home/ed/lando-cli/node_modules/@lando/core/plugins/lando-core/tasks/start.js:17:20)
    at /home/ed/lando-cli/lib/cli.js:409:54
From previous event:
    at /home/ed/lando-cli/lib/cli.js:407:10
From previous event:
    at Object.handler (/home/ed/lando-cli/lib/cli.js:341:37)
    at Object.runCommand (/home/ed/lando-cli/node_modules/yargs/lib/command.js:238:44)
    at Object.parseArgs [as _parseArgs] (/home/ed/lando-cli/node_modules/yargs/yargs.js:1063:30)
    at Function.get [as argv] (/home/ed/lando-cli/node_modules/yargs/yargs.js:1004:21)
    at Cli.init (/home/ed/lando-cli/lib/cli.js:254:51)
    at Cli.run (/home/ed/lando-cli/lib/cli.js:468:10)
    at /home/ed/lando-cli/bin/lando.js:151:46
From previous event:
    at /home/ed/lando-cli/bin/lando.js:151:31
    at processImmediate (node:internal/timers:466:21)
From previous event:
    at Object.<anonymous> (/home/ed/lando-cli/bin/lando.js:148:30)
    at Module._compile (node:internal/modules/cjs/loader:1165:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10)
    at Module.load (node:internal/modules/cjs/loader:1043:32)
    at Function.Module._load (node:internal/modules/cjs/loader:878:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
    at node:internal/main/run_main_module:22:47, __stackCleaned__=true

██╗   ██╗██╗  ██╗     ██████╗ ██╗  ██╗██╗
██║   ██║██║  ██║    ██╔═══██╗██║  ██║██║
██║   ██║███████║    ██║   ██║███████║██║
██║   ██║██╔══██║    ██║   ██║██╔══██║╚═╝
╚██████╔╝██║  ██║    ╚██████╔╝██║  ██║██╗
 ╚═════╝ ╚═╝  ╚═╝     ╚═════╝ ╚═╝  ╚═╝╚═╝


An error occurred while starting up your app!
Here are a few things you can try to get back into a good state:

  ■ Try running lando rebuild
  ■ Try restarting in debug mode lando restart -vvv
  ■ Try checking the logs with lando logs

If those fail then consult the troubleshooting materials:

  ■ https://docs.lando.dev/help/logs.html
  ■ https://docs.lando.dev/help/updating.html

Or post your issue to Slack or GitHub

  ■ Slack - https://launchpass.com/devwithlando
  ■ GitHub - https://github.com/lando/lando/issues/new/choose

ERROR ==> Error: (HTTP code 404) no such container - No such container: landoproxyhyperion5000gandalfedition_proxy_1

Output from .lando.yml below:

name: myproject
recipe: pantheon
config:
  framework: drupal8
  site: myproject
  id: axax1x1x-bxfx-4x6x-9x5x-ex7x5x8xdx2x <<< redacted
  composer_version: 2

Device specs below:

Device name	DELL-PRECISION-M6700
Processor	Intel(R) Core(TM) i7-3720QM CPU @ 2.60GHz   2.60 GHz
Installed RAM	32.0 GB
Device ID	EABBCE70-933F-450B-8B60-186618B6CF37
Product ID	00330-75017-75573-AAOEM
System type	64-bit operating system, x64-based processor
Pen and touch	No pen or touch input is available for this display

Windows specs below:

Edition	Windows 10 Pro
Version	22H2
Installed on	‎1/‎30/‎2022
OS build	19045.2364
Experience	Windows Feature Experience Pack 120.2212.4190.0

WSL2 specs below:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.5 LTS
Release:        20.04
Codename:       focal
$ uname -a
Linux DELL-PRECISION-M6700 5.15.79.1-microsoft-standard-WSL2 #1 SMP Wed Nov 23 01:01:46 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
$ docker -v
Docker version 20.10.22, build 3a2c30b
$ docker-compose -v
Docker Compose version v2.15.0
$ lando version <<< installed from source
v3.8.1
$ node -v
v16.19.0
$ npm -v
9.2.0
$ yarn -v
1.22.19

Possible causes:

  1. WARN[0000] network lando_proxyedge: network.external.name is deprecated. Please set network.name with external: true
  2. Error: (HTTP code 404) no such container - No such container: landoproxyhyperion5000gandalfedition_proxy_1

I found it odd that No such container: landoproxyhyperion5000gandalfedition_proxy_1 reported underscores but the container name reported by docker had dashes as shown below:

$ docker ps
CONTAINER ID   IMAGE                                   COMMAND                  CREATED          STATUS          PORTS                                                                     NAMES
7bedcb6817a1   bitnami/nginx:1.17.10-debian-10-r52     "/lando-entrypoint.s…"   18 minutes ago   Up 18 minutes   8080/tcp, 8443/tcp, 127.0.0.1:32857->443/tcp                              myproject-edge_ssl-1
3db8b985dcf3   wodby/varnish:4.1                       "/lando-entrypoint.s…"   18 minutes ago   Up 18 minutes   6081-6082/tcp, 127.0.0.1:32856->80/tcp                                    myproject-edge-1
aeb3abb316d2   devwithlando/pantheon-index:latest      "/lando-entrypoint.s…"   18 minutes ago   Up 18 minutes   127.0.0.1:32852->449/tcp                                                  myproject-index-1
45987e4a2fd5   bitnami/nginx:1.16.1-debian-10-r106     "/lando-entrypoint.s…"   18 minutes ago   Up 18 minutes   8080/tcp, 8443/tcp, 127.0.0.1:32854->80/tcp, 127.0.0.1:32853->443/tcp     myproject-appserver_nginx-1
db6e9d08f6b4   bitnami/mariadb:10.6.5-debian-10-r30    "/lando-entrypoint.s…"   18 minutes ago   Up 18 minutes   127.0.0.1:32850->3306/tcp                                                 myproject-database-1
adb9c69e0cca   redis:2.8                               "/lando-entrypoint.s…"   18 minutes ago   Up 18 minutes   127.0.0.1:32851->6379/tcp                                                 myproject-cache-1
ed6d9444b324   devwithlando/pantheon-appserver:8.1-4   "/lando-entrypoint.s…"   19 minutes ago   Up 18 minutes   9000/tcp                                                                  myproject-appserver-1
dad1232af9cb   traefik:2.2.0                           "/lando-entrypoint.s…"   3 hours ago      Up 3 hours      127.0.0.1:80->80/tcp, 127.0.0.1:443->443/tcp, 127.0.0.1:32778->8080/tcp   landoproxyhyperion5000gandalfedition-proxy-1

Let me know if any more info is needed. Thanks for looking.

CLI commands fail after updating to 3.1.4 of Lando.

Thinking it makes more sense to add this to lando/cli vs. lando/lando as it seems cli related.

After updating to Lando 3.1.4 I get the following error whenever I type a lando cli command. I tried completely removing Lando and it's config and still no luck. Thinking this is an edge case due to breaking out the cli from the other repo as I haven't seen anyone else with a similar issue yet. Any help is greatly appreciated!!!

Unhandled rejection TypeError: Cannot create property 'key' on string 'a' at /snapshot/lando/build/cli/integrations/lando-acquia/lib/utils.js at /snapshot/lando/build/cli/node_modules/lodash/lodash.js:4943:15 at Function.forEach (/snapshot/lando/build/cli/node_modules/lodash/lodash.js:9410:14) at Object.getHostKeys (/snapshot/lando/build/cli/integrations/lando-acquia/lib/utils.js) at mergeKeys (/snapshot/lando/build/cli/integrations/lando-acquia/recipes/acquia/init.js) at Object.options (/snapshot/lando/build/cli/integrations/lando-acquia/recipes/acquia/init.js) at /snapshot/lando/build/cli/plugins/lando-recipes/lib/options.js at arrayEach (/snapshot/lando/build/cli/node_modules/lodash/lodash.js:530:11) at Function.forEach (/snapshot/lando/build/cli/node_modules/lodash/lodash.js:9410:14) at Object.getConfigOptions (/snapshot/lando/build/cli/plugins/lando-recipes/lib/options.js) at /snapshot/lando/build/cli/plugins/lando-recipes/tasks/init.js at /snapshot/lando/build/cli/lib/lando.js From previous event: at processImmediate (internal/timers.js:456:21)

"lando ssh -c" does not parse its argument like a shell command within the container

lando version => v3.18.0

I don't know how lando ssh -c COMMAND processes COMMAND inside the container, but it seems wrong to me.

Compare:

$ command="env FOO='bar' sh -c 'echo \${FOO}'"

$ echo $command
env FOO='bar' sh -c 'echo ${FOO}'

# An actual shell
$ sh -c "$command"
bar

# lando ssh -c
$ /usr/local/bin/lando ssh -c "$command"
'bar'

Assuming the command is intended to be processed like a shell command, that latter output is wrong. The quote removal phase is apparently not taking place when the remote 'shell' parses that command, meaning the result is as if we'd used:

$ sh -c "env FOO=\"'bar'\" sh -c 'echo \$FOO'"
'bar'

This seems likely to be a docker / docker-compose issue, but I can't see how to get lando to show me exactly what command it's running, so I don't know how to test or report it. Adding -vvv to the lando command shows me this line:

lando    21:31:09 DEBUG ==> process pid5 running /usr/share/lando/bin/docker-compose exec appserver env FOO='bar' sh echo $FOO cstdio=inherit, silent=false, mode=spawn, detached=false

which is an obfuscated version of whatever the original command actually looked like (as without quoting we cannot distinguish between a single multi-word argument, and multiple single-word arguments) and seemingly mangled as well (it's dropped one of the -c instances?!). That is in any case not something I can run at the command line, and furthermore I've been unable to figure out how to get any output at all from a /usr/share/lando/bin/docker-compose exec appserver COMMAND -- nothing I've tried has printed anything.

I'm happy to take this issue to a docker/compose issue queue if someone could demonstrate how to replicate the issue using a docker/compose command?

Thanks.

`lando update` always shows lando/cli as update available

Not sure if this issue belongs here or in lando/lando repo but just thought Id start here.

Lando version: v3.21.0-beta.18

When running lando update and completing update, lando/cli still shows as needs to update. Ive tried updating many times but it just always says update available.

Ive included a screenshot to illustrate.

Screenshot 2024-05-02 at 9 28 07 AM

Automate release from lando/cli to lando/lando

Users are used to looking here in lando/lando for new release info. However we now live in the installer script world which means that the "real" release actually happens over in lando/cli.

It would be slick if releases over in lando/cli generated releases with the same name/title in lando/lando with "standardized" release content eg the release text markdown body that tells the user how to install lando, links to docs etc.

Change permission 100999

Ok!!

My enviroment:
Ubuntu Desktop 22.04 LTS
Docker CE: 20.10.17, build 100c701
Lando v.3.6.4

When i try run:
lando start
This software change permisssion in the user and gorup level
1- In my project directory
2- In my .lando directory
3- In my .ssh directory

imagen

imagen (1)

I honestly don't know what causes lando to do this, but it certainly stops me in my work. The but is that there is no way to run it as root, because that way you could avoid this behavior.

Is there any solution?

Specify services/tooling via "lando init"

I've already read https://docs.lando.dev/basics/init.html and know that I can for example do this:

lando init \
  --source remote \
  --remote-url https://github.com/drupal/drupal.git \
  --remote-options="--branch 8.9.x --depth 1" \
  --recipe drupal8 \
  --webroot ./docroot \
  --name d8test \
  --option composer_version=2.0.7 \
  --option database=mariadb

Which results in this:

name: d8test
recipe: drupal8
config:
  webroot: ./docroot
  composer_version: 2.0.7
  database: mariadb

Can lando init accept parameters for setting other things, like services and tooling? For example, I would like to end up with:

name: d8test
recipe: drupal8
config:
  webroot: ./docroot
  composer_version: 2.0.7
  database: mariadb

services:
  appserver:
    extras:
      - bla bla
      - bla bla bla
  phpmyadmin:
    type: phpmyadmin
    hosts: database

tooling:
  drush:
    service: appserver
    cmd: drush --root=/app/docroot --uri=http://d8test.lndo.site

[M1] Lando init via git url / tar archive fails

Trying to init a Lando app based on a git url and Lando hangs and times out.

➜  test lando init
? From where should we get your app's codebase? remote git repo or archive
? Please enter the URL of the git repo or tar archive containing your application code [email protected]:dustinleblanc/cafehonda.git
? What recipe do you want to use? laravel
? Where is your webroot relative to the init destination? public
? What do you want to call this app? cafehondamatic
Creating network "landoinitcafehondamatic_default" with the default driver
Creating volume "landoinitcafehondamatic_data_init" with default driver
Creating volume "landoinitcafehondamatic_home_init" with default driver
Creating landoinitcafehondamatic_init_1 ...

ERROR: for landoinitcafehondamatic_init_1  UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=300)

ERROR: for init  UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=300)
ERROR: An HTTP request took too long to complete. Retry with --verbose to obtain debug information.
If you encounter this issue regularly because of slow network conditions, consider setting COMPOSE_HTTP_TIMEOUT to a higher value (current value: 300).
Removing landoinitcafehondamatic_init_1 ... done
Removing network landoinitcafehondamatic_default
Removing volume landoinitcafehondamatic_data_init
Removing volume landoinitcafehondamatic_home_init
ERROR ==>

Looking at the container in Docker desktop, I am seeing this:

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.