@lando/php 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/.editorconfig +12 -0
  2. package/.eslintignore +4 -0
  3. package/.eslintrc.json +31 -0
  4. package/.gitattributes +11 -0
  5. package/.lando.yml +14 -0
  6. package/.node-version +1 -0
  7. package/.nyc_output/39d8df6b-751b-4e0f-9b9a-f9f68686a0ed.json +1 -0
  8. package/.nyc_output/baf1169d-949a-4c6f-955a-88b2e3fe7cb4.json +1 -0
  9. package/.nyc_output/processinfo/39d8df6b-751b-4e0f-9b9a-f9f68686a0ed.json +1 -0
  10. package/.nyc_output/processinfo/baf1169d-949a-4c6f-955a-88b2e3fe7cb4.json +1 -0
  11. package/.nyc_output/processinfo/index.json +1 -0
  12. package/.tool-versions +1 -0
  13. package/CHANGELOG.md +7 -0
  14. package/LICENSE.md +674 -0
  15. package/PRIVACY.md +169 -0
  16. package/README.md +74 -0
  17. package/actions-lando-config.yml +14 -0
  18. package/coverage/base.css +224 -0
  19. package/coverage/block-navigation.js +87 -0
  20. package/coverage/favicon.png +0 -0
  21. package/coverage/index.html +132 -0
  22. package/coverage/lib/index.html +117 -0
  23. package/coverage/lib/utils.js.html +266 -0
  24. package/coverage/prettify.css +1 -0
  25. package/coverage/prettify.js +2 -0
  26. package/coverage/services/php/builder.js.html +728 -0
  27. package/coverage/services/php/index.html +117 -0
  28. package/coverage/sort-arrow-sprite.png +0 -0
  29. package/coverage/sorter.js +196 -0
  30. package/images/5.3-apache/Dockerfile +83 -0
  31. package/images/5.3-apache/apache2.conf +64 -0
  32. package/images/5.3-fpm/Dockerfile +80 -0
  33. package/images/5.3-fpm/docker-php-ext-enable +83 -0
  34. package/images/5.3-fpm/php-fpm.conf +65 -0
  35. package/images/5.4-apache/Dockerfile +79 -0
  36. package/images/5.4-apache/apache2-foreground +17 -0
  37. package/images/5.4-fpm/Dockerfile +75 -0
  38. package/images/5.5-apache/Dockerfile +77 -0
  39. package/images/5.5-fpm/Dockerfile +76 -0
  40. package/images/5.6-apache/Dockerfile +78 -0
  41. package/images/5.6-fpm/Dockerfile +79 -0
  42. package/images/7.0-apache/Dockerfile +78 -0
  43. package/images/7.0-fpm/Dockerfile +78 -0
  44. package/images/7.1-apache/Dockerfile +86 -0
  45. package/images/7.1-fpm/Dockerfile +86 -0
  46. package/images/7.2-apache/Dockerfile +84 -0
  47. package/images/7.2-fpm/Dockerfile +84 -0
  48. package/images/7.3-apache/Dockerfile +84 -0
  49. package/images/7.3-fpm/Dockerfile +84 -0
  50. package/images/7.4-apache/Dockerfile +83 -0
  51. package/images/7.4-fpm/Dockerfile +83 -0
  52. package/images/8.0-apache/Dockerfile +84 -0
  53. package/images/8.0-fpm/Dockerfile +84 -0
  54. package/images/8.1-apache/Dockerfile +86 -0
  55. package/images/8.1-fpm/Dockerfile +87 -0
  56. package/index.js +3 -0
  57. package/lib/utils.js +60 -0
  58. package/netlify.toml +25 -0
  59. package/package.json +62 -0
  60. package/plugin.yml +29 -0
  61. package/services/php/builder.js +214 -0
  62. package/services/php/default-ssl.conf +188 -0
  63. package/services/php/default-ssl.conf.tpl +30 -0
  64. package/services/php/default.conf +41 -0
  65. package/services/php/default.conf.tpl +20 -0
  66. package/services/php/php.ini +46 -0
  67. package/services/php/zz-lando.conf +3 -0
@@ -0,0 +1,84 @@
1
+ # docker build -t devwithlando/php:8.0-apache-4 .
2
+
3
+ FROM php:8.0-apache-bullseye
4
+
5
+ # Install dependencies we need
6
+ RUN mkdir -p /usr/share/man/man1 /usr/share/man/man7 \
7
+ && apt -y update && apt-get install -y \
8
+ gnupg2 \
9
+ wget \
10
+ && echo 'deb http://apt.postgresql.org/pub/repos/apt/ bullseye-pgdg main' >> /etc/apt/sources.list.d/pgdg.list \
11
+ && wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - \
12
+ && apt-get update && apt-get install -y \
13
+ bzip2 \
14
+ default-mysql-client \
15
+ exiftool \
16
+ git-core \
17
+ imagemagick \
18
+ libbz2-dev \
19
+ libc-client-dev \
20
+ libfreetype6-dev \
21
+ libicu-dev \
22
+ libjpeg62-turbo-dev \
23
+ libkrb5-dev \
24
+ libldap2-dev \
25
+ libmagickwand-dev \
26
+ libmemcached-dev \
27
+ libpng-dev \
28
+ libpq-dev \
29
+ libssl-dev \
30
+ libwebp-dev \
31
+ libxml2-dev \
32
+ libzip-dev \
33
+ libonig-dev \
34
+ openssl \
35
+ postgresql-client-10 \
36
+ pv \
37
+ rsync \
38
+ ssh \
39
+ unzip \
40
+ wget \
41
+ xfonts-75dpi \
42
+ xfonts-base \
43
+ zlib1g-dev \
44
+ && pecl install apcu \
45
+ && pecl install imagick \
46
+ && pecl install memcached \
47
+ && pecl install oauth \
48
+ && pecl install redis-5.3.2 \
49
+ && pecl install xdebug \
50
+ && docker-php-ext-configure ldap --with-libdir=lib/$(uname -m)-linux-gnu/ \
51
+ && docker-php-ext-enable apcu \
52
+ && docker-php-ext-enable imagick \
53
+ && docker-php-ext-enable memcached \
54
+ && docker-php-ext-enable oauth \
55
+ && docker-php-ext-enable redis \
56
+ && docker-php-ext-install bcmath \
57
+ && docker-php-ext-install bz2 \
58
+ && docker-php-ext-install calendar \
59
+ && docker-php-ext-install exif \
60
+ && docker-php-ext-install gettext \
61
+ && docker-php-ext-install intl \
62
+ && docker-php-ext-install ldap \
63
+ && docker-php-ext-install mbstring \
64
+ && docker-php-ext-install mysqli \
65
+ && docker-php-ext-install opcache \
66
+ && docker-php-ext-install pcntl \
67
+ && docker-php-ext-install pdo \
68
+ && docker-php-ext-install pdo_mysql \
69
+ && docker-php-ext-install pdo_pgsql \
70
+ && docker-php-ext-install soap \
71
+ && docker-php-ext-install zip \
72
+ && php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \
73
+ && php composer-setup.php --install-dir=/usr/local/bin --filename=composer --version=2.0.7 \
74
+ && php -r "unlink('composer-setup.php');" \
75
+ && chsh -s /bin/bash www-data && mkdir -p /var/www/.composer && chown -R www-data:www-data /var/www \
76
+ #&& su -c "composer global require hirak/prestissimo" -s /bin/sh www-data \
77
+ && apt-get -y clean \
78
+ && apt-get -y autoclean \
79
+ && apt-get -y autoremove \
80
+ && rm -rf /var/lib/apt/lists/* && rm -rf && rm -rf /var/lib/cache/* && rm -rf /var/lib/log/* && rm -rf /tmp/* \
81
+ && PHP_OPENSSL=yes docker-php-ext-configure imap --with-kerberos --with-imap-ssl \
82
+ && docker-php-ext-install imap \
83
+ && docker-php-ext-configure gd --enable-gd --with-jpeg --with-webp --with-freetype \
84
+ && docker-php-ext-install gd
@@ -0,0 +1,84 @@
1
+ # docker build -t devwithlando/php:8.0-fpm-4 .
2
+
3
+ FROM php:8.0-fpm-bullseye
4
+
5
+ # Install dependencies we need
6
+ RUN mkdir -p /usr/share/man/man1 /usr/share/man/man7 \
7
+ && apt -y update && apt-get install -y \
8
+ gnupg2 \
9
+ wget \
10
+ && echo 'deb http://apt.postgresql.org/pub/repos/apt/ bullseye-pgdg main' >> /etc/apt/sources.list.d/pgdg.list \
11
+ && wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - \
12
+ && apt-get update && apt-get install -y \
13
+ bzip2 \
14
+ default-mysql-client \
15
+ exiftool \
16
+ git-core \
17
+ imagemagick \
18
+ libbz2-dev \
19
+ libc-client-dev \
20
+ libfreetype6-dev \
21
+ libicu-dev \
22
+ libjpeg62-turbo-dev \
23
+ libkrb5-dev \
24
+ libldap2-dev \
25
+ libmagickwand-dev \
26
+ libmemcached-dev \
27
+ libpng-dev \
28
+ libpq-dev \
29
+ libssl-dev \
30
+ libwebp-dev \
31
+ libxml2-dev \
32
+ libzip-dev \
33
+ libonig-dev \
34
+ openssl \
35
+ postgresql-client-10 \
36
+ pv \
37
+ rsync \
38
+ ssh \
39
+ unzip \
40
+ wget \
41
+ xfonts-75dpi \
42
+ xfonts-base \
43
+ zlib1g-dev \
44
+ && pecl install apcu \
45
+ && pecl install imagick \
46
+ && pecl install memcached \
47
+ && pecl install oauth \
48
+ && pecl install redis-5.3.2 \
49
+ && pecl install xdebug \
50
+ && docker-php-ext-configure ldap --with-libdir=lib/$(uname -m)-linux-gnu/ \
51
+ && docker-php-ext-enable apcu \
52
+ && docker-php-ext-enable imagick \
53
+ && docker-php-ext-enable memcached \
54
+ && docker-php-ext-enable oauth \
55
+ && docker-php-ext-enable redis \
56
+ && docker-php-ext-install bcmath \
57
+ && docker-php-ext-install bz2 \
58
+ && docker-php-ext-install calendar \
59
+ && docker-php-ext-install exif \
60
+ && docker-php-ext-install gettext \
61
+ && docker-php-ext-install intl \
62
+ && docker-php-ext-install ldap \
63
+ && docker-php-ext-install mbstring \
64
+ && docker-php-ext-install mysqli \
65
+ && docker-php-ext-install opcache \
66
+ && docker-php-ext-install pcntl \
67
+ && docker-php-ext-install pdo \
68
+ && docker-php-ext-install pdo_mysql \
69
+ && docker-php-ext-install pdo_pgsql \
70
+ && docker-php-ext-install soap \
71
+ && docker-php-ext-install zip \
72
+ && php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \
73
+ && php composer-setup.php --install-dir=/usr/local/bin --filename=composer --version=2.0.7 \
74
+ && php -r "unlink('composer-setup.php');" \
75
+ && chsh -s /bin/bash www-data && mkdir -p /var/www/.composer && chown -R www-data:www-data /var/www \
76
+ #&& su -c "composer global require hirak/prestissimo" -s /bin/sh www-data \
77
+ && apt-get -y clean \
78
+ && apt-get -y autoclean \
79
+ && apt-get -y autoremove \
80
+ && rm -rf /var/lib/apt/lists/* && rm -rf && rm -rf /var/lib/cache/* && rm -rf /var/lib/log/* && rm -rf /tmp/* \
81
+ && PHP_OPENSSL=yes docker-php-ext-configure imap --with-kerberos --with-imap-ssl \
82
+ && docker-php-ext-install imap \
83
+ && docker-php-ext-configure gd --enable-gd --with-jpeg --with-webp --with-freetype \
84
+ && docker-php-ext-install gd
@@ -0,0 +1,86 @@
1
+ # docker build -t devwithlando/php:8.1-apache-4 .
2
+
3
+ FROM php:8.1-apache-bullseye
4
+
5
+ # Install dependencies we need
6
+ RUN mkdir -p /usr/share/man/man1 /usr/share/man/man7 \
7
+ && apt -y update && apt-get install -y \
8
+ gnupg2 \
9
+ wget \
10
+ && echo 'deb http://apt.postgresql.org/pub/repos/apt/ bullseye-pgdg main' >> /etc/apt/sources.list.d/pgdg.list \
11
+ && wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - \
12
+ && apt-get update && apt-get install -y \
13
+ bzip2 \
14
+ default-mysql-client \
15
+ exiftool \
16
+ git-core \
17
+ imagemagick \
18
+ libbz2-dev \
19
+ libc-client-dev \
20
+ libfreetype6-dev \
21
+ libicu-dev \
22
+ libjpeg62-turbo-dev \
23
+ libkrb5-dev \
24
+ libldap2-dev \
25
+ libmagickwand-dev \
26
+ libmemcached-dev \
27
+ libpng-dev \
28
+ libpq-dev \
29
+ libssl-dev \
30
+ libwebp-dev \
31
+ libxml2-dev \
32
+ libzip-dev \
33
+ libonig-dev \
34
+ openssl \
35
+ postgresql-client-10 \
36
+ pv \
37
+ rsync \
38
+ ssh \
39
+ unzip \
40
+ wget \
41
+ xfonts-75dpi \
42
+ xfonts-base \
43
+ zlib1g-dev \
44
+ && pecl install apcu \
45
+ && pecl install imagick \
46
+ && pecl install memcached \
47
+ && pecl install oauth \
48
+ && pecl install redis-5.3.4 \
49
+ && pecl install xdebug \
50
+ && docker-php-ext-configure ldap --with-libdir=lib/$(uname -m)-linux-gnu/ \
51
+ && docker-php-ext-enable apcu \
52
+ && docker-php-ext-enable imagick \
53
+ && docker-php-ext-enable memcached \
54
+ && docker-php-ext-enable oauth \
55
+ && docker-php-ext-enable redis \
56
+ && docker-php-ext-install bcmath \
57
+ && docker-php-ext-install bz2 \
58
+ && docker-php-ext-install calendar \
59
+ && docker-php-ext-install exif \
60
+ && docker-php-ext-install gettext \
61
+ && docker-php-ext-install intl \
62
+ && docker-php-ext-install ldap \
63
+ && docker-php-ext-install mbstring \
64
+ && docker-php-ext-install mysqli \
65
+ && docker-php-ext-install opcache \
66
+ && docker-php-ext-install pcntl \
67
+ && docker-php-ext-install pdo \
68
+ && docker-php-ext-install pdo_mysql \
69
+ && docker-php-ext-install pdo_pgsql \
70
+ && docker-php-ext-install soap \
71
+ && docker-php-ext-install zip \
72
+ && php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \
73
+ && php composer-setup.php --install-dir=/usr/local/bin --filename=composer --version=2.0.7 \
74
+ && php -r "unlink('composer-setup.php');" \
75
+ && chsh -s /bin/bash www-data && mkdir -p /var/www/.composer && chown -R www-data:www-data /var/www \
76
+ #&& su -c "composer global require hirak/prestissimo" -s /bin/sh www-data \
77
+ && apt-get -y clean \
78
+ && apt-get -y autoclean \
79
+ && apt-get -y autoremove \
80
+ && rm -rf /var/lib/apt/lists/* && rm -rf && rm -rf /var/lib/cache/* && rm -rf /var/lib/log/* && rm -rf /tmp/* \
81
+ && PHP_OPENSSL=yes docker-php-ext-configure imap --with-kerberos --with-imap-ssl \
82
+ && docker-php-ext-install imap \
83
+ && docker-php-ext-configure gd --enable-gd --with-jpeg --with-webp --with-freetype \
84
+ && docker-php-ext-install gd
85
+
86
+ RUN curl https://dl.yarnpkg.com
@@ -0,0 +1,87 @@
1
+ # docker build -t devwithlando/php:8.1-fpm-4 .
2
+
3
+ FROM php:8.1-fpm-bullseye
4
+
5
+ # Install dependencies we need
6
+ RUN mkdir -p /usr/share/man/man1 /usr/share/man/man7 \
7
+ && apt -y update && apt-get install -y \
8
+ gnupg2 \
9
+ wget \
10
+ && echo 'deb http://apt.postgresql.org/pub/repos/apt/ bullseye-pgdg main' >> /etc/apt/sources.list.d/pgdg.list \
11
+ && wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - \
12
+ && apt-get update && apt-get install -y \
13
+ bzip2 \
14
+ default-mysql-client \
15
+ exiftool \
16
+ git-core \
17
+ imagemagick \
18
+ libbz2-dev \
19
+ libc-client-dev \
20
+ libfreetype6-dev \
21
+ libicu-dev \
22
+ libjpeg62-turbo-dev \
23
+ libkrb5-dev \
24
+ libldap2-dev \
25
+ libmagickwand-dev \
26
+ libmemcached-dev \
27
+ libpng-dev \
28
+ libpq-dev \
29
+ libssl-dev \
30
+ libwebp-dev \
31
+ libxml2-dev \
32
+ libzip-dev \
33
+ libonig-dev \
34
+ openssl \
35
+ postgresql-client-10 \
36
+ pv \
37
+ rsync \
38
+ ssh \
39
+ unzip \
40
+ wget \
41
+ xfonts-75dpi \
42
+ xfonts-base \
43
+ zlib1g-dev \
44
+ && pecl install apcu \
45
+ && pecl install imagick \
46
+ && pecl install memcached \
47
+ && pecl install oauth \
48
+ && pecl install redis-5.3.4 \
49
+ && pecl install xdebug \
50
+ && docker-php-ext-configure ldap --with-libdir=lib/$(uname -m)-linux-gnu/ \
51
+ && docker-php-ext-enable apcu \
52
+ && docker-php-ext-enable imagick \
53
+ && docker-php-ext-enable memcached \
54
+ && docker-php-ext-enable oauth \
55
+ && docker-php-ext-enable redis \
56
+ && docker-php-ext-install bcmath \
57
+ && docker-php-ext-install bz2 \
58
+ && docker-php-ext-install calendar \
59
+ && docker-php-ext-install exif \
60
+ && docker-php-ext-install gettext \
61
+ && docker-php-ext-install intl \
62
+ && docker-php-ext-install ldap \
63
+ && docker-php-ext-install mbstring \
64
+ && docker-php-ext-install mysqli \
65
+ && docker-php-ext-install opcache \
66
+ && docker-php-ext-install pcntl \
67
+ && docker-php-ext-install pdo \
68
+ && docker-php-ext-install pdo_mysql \
69
+ && docker-php-ext-install pdo_pgsql \
70
+ && docker-php-ext-install soap \
71
+ && docker-php-ext-install zip \
72
+ && php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \
73
+ && php composer-setup.php --install-dir=/usr/local/bin --filename=composer --version=2.0.7 \
74
+ && php -r "unlink('composer-setup.php');" \
75
+ && chsh -s /bin/bash www-data && mkdir -p /var/www/.composer && chown -R www-data:www-data /var/www \
76
+ #&& su -c "composer global require hirak/prestissimo" -s /bin/sh www-data \
77
+ && apt-get -y clean \
78
+ && apt-get -y autoclean \
79
+ && apt-get -y autoremove \
80
+ && rm -rf /var/lib/apt/lists/* && rm -rf && rm -rf /var/lib/cache/* && rm -rf /var/lib/log/* && rm -rf /tmp/* \
81
+ && PHP_OPENSSL=yes docker-php-ext-configure imap --with-kerberos --with-imap-ssl \
82
+ && docker-php-ext-install imap \
83
+ && docker-php-ext-configure gd --enable-gd --with-jpeg --with-webp --with-freetype \
84
+ && docker-php-ext-install gd
85
+
86
+ # Tests
87
+ RUN curl https://dl.yarnpkg.com
package/index.js ADDED
@@ -0,0 +1,3 @@
1
+ 'use strict';
2
+
3
+ module.exports = lando => {};
package/lib/utils.js ADDED
@@ -0,0 +1,60 @@
1
+ 'use strict';
2
+
3
+ // Modules
4
+ const _ = require('lodash');
5
+
6
+ /*
7
+ * Helper to get global deps
8
+ * @TODO: this looks pretty testable? should services have libs?
9
+ */
10
+ exports.addBuildStep = (steps, app, name, step = 'build_internal', front = false) => {
11
+ const current = _.get(app, `config.services.${name}.${step}`, []);
12
+ const add = (front) ? _.flatten([steps, current]) : _.flatten([current, steps]);
13
+ _.set(app, `config.services.${name}.${step}`, _.uniq(add));
14
+ };
15
+
16
+ /*
17
+ * Helper to get global deps
18
+ * @TODO: this looks pretty testable? should services have libs?
19
+ */
20
+ exports.cloneOverrides = (overrides = {}) => {
21
+ const newOverrides = _.cloneDeep(overrides);
22
+ if (_.has(newOverrides, 'image')) delete newOverrides.image;
23
+ if (_.has(newOverrides, 'build')) delete newOverrides.build;
24
+ return newOverrides;
25
+ };
26
+
27
+ /*
28
+ * Helper to get global deps
29
+ * @TODO: this looks pretty testable? should services have libs?
30
+ */
31
+ exports.getInstallCommands = (deps, pkger, prefix = []) => _(deps)
32
+ .map((version, pkg) => _.flatten([prefix, pkger(pkg, version)]))
33
+ .map(command => command.join(' '))
34
+ .value();
35
+
36
+ /*
37
+ * Run build
38
+ */
39
+ exports.runBuild = (app, steps, lockfile, hash = 'YOU SHALL NOT PASS') => {
40
+ if (!_.isEmpty(steps) && !app._lando.cache.get(lockfile)) {
41
+ app.log.info('running build steps...');
42
+ return app.engine.run(steps)
43
+ // Save the new hash if everything works out ok
44
+ .then(() => {
45
+ app._lando.cache.set(lockfile, hash, {persist: true});
46
+ app.log.info('build steps completed. and locked with %s', lockfile);
47
+ })
48
+ // Make sure we don't save a hash if our build fails
49
+ .catch(error => {
50
+ app.addWarning({
51
+ title: `One of your build steps failed`,
52
+ detail: [
53
+ 'This **MAY** prevent your app from working.',
54
+ 'Check for errors above, fix them in your Landofile, and try again by running:',
55
+ ],
56
+ command: 'lando rebuild',
57
+ }, error);
58
+ });
59
+ }
60
+ };
package/netlify.toml ADDED
@@ -0,0 +1,25 @@
1
+ [build]
2
+ base = "./"
3
+ publish = "_site"
4
+ command = "yarn docs:build"
5
+ # This sort of lets us build only on tagged commits to prod
6
+ # [context.production]
7
+ # ignore = "if git diff $CACHED_COMMIT_REF $COMMIT_REF ./package.json | grep - | grep version && git diff $CACHED_COMMIT_REF $COMMIT_REF ./package.json | grep + | grep version; then exit 1; else exit 0; fi"
8
+
9
+ # Sets our asset optimization
10
+ [build.processing.css]
11
+ bundle = true
12
+ minify = true
13
+ [build.processing.js]
14
+ bundle = true
15
+ minify = true
16
+ [build.processing.html]
17
+ pretty_urls = false
18
+ [build.processing.images]
19
+ compress = true
20
+
21
+ # Caches our images for 1 year
22
+ [[headers]]
23
+ for = "/images/*"
24
+ [headers.values]
25
+ Cache-Control = "public, max-age=31536000"
package/package.json ADDED
@@ -0,0 +1,62 @@
1
+ {
2
+ "name": "@lando/php",
3
+ "description": "A Lando plugin that provides a tight integration with PHP.",
4
+ "version": "0.5.0",
5
+ "author": "John Ouellet @labboy0276",
6
+ "license": "GPL-3.0",
7
+ "repository": "lando/php",
8
+ "bugs": "https://github.com/lando/php/issues/new/choose",
9
+ "homepage": "https://github.com/lando/php",
10
+ "keywords": [
11
+ "lando",
12
+ "lando-plugin",
13
+ "php"
14
+ ],
15
+ "engines": {
16
+ "node": ">=14.0.0"
17
+ },
18
+ "main": "index.js",
19
+ "nyc": {
20
+ "include": [
21
+ "lib/**/*.js",
22
+ "recipes/**/*.js",
23
+ "services/**/*.js",
24
+ "types/**/*.js"
25
+ ],
26
+ "exclude": [
27
+ "test/**"
28
+ ],
29
+ "cache": true,
30
+ "all": true
31
+ },
32
+ "scripts": {
33
+ "coverage": "nyc report --reporter=text-lcov | coveralls",
34
+ "docs:dev": "vuepress dev docs",
35
+ "docs:build": "vuepress build docs --dest _site",
36
+ "docs:lint": "eslint -c docs/.eslintrc.json --quiet docs/.vuepress",
37
+ "lint": "eslint --quiet . && yarn docs:lint",
38
+ "release": "bump --prompt --tag --all --push",
39
+ "test:unit": "nyc --reporter=html --reporter=text mocha --timeout 5000 test/**/*.spec.js",
40
+ "test:leia": "yarn leia \"examples/**/README.md\" -c 'Destroy tests' --stdin",
41
+ "test": "yarn lint && yarn test:unit"
42
+ },
43
+ "dependencies": {
44
+ "js-yaml": "^3.4.6",
45
+ "lodash": "^4.17.21",
46
+ "tar": "^6.1.11"
47
+ },
48
+ "devDependencies": {
49
+ "@babel/eslint-parser": "^7.16.0",
50
+ "@lando/leia": "^0.6.4",
51
+ "@lando/vuepress-theme-lando-docs": "^0.2.3",
52
+ "chai": "^4.3.4",
53
+ "command-line-test": "^1.0.10",
54
+ "eslint": "^7.32.0",
55
+ "eslint-config-google": "^0.9.1",
56
+ "eslint-plugin-vue": "^8.0.3",
57
+ "mocha": "^9.1.2",
58
+ "nyc": "^15.1.0",
59
+ "version-bump-prompt": "^4.2.1",
60
+ "vuepress": "^2.0.0-beta.27"
61
+ }
62
+ }
package/plugin.yml ADDED
@@ -0,0 +1,29 @@
1
+ # We don't need this because its in the package.json
2
+ # but we set it anyway just to make sure we know what is what
3
+ name: "@lando/php"
4
+
5
+ # Let lando autoscan this plugin for "legacy" plugin stuff needed for v3
6
+ legacy: true
7
+
8
+ # This is just metadata that something else can use to understand how the docs are organized
9
+ docs:
10
+ # This is the tag we should use when connecting platform.sh content together eg showing guides on the main
11
+ # platform.sh recipe docs
12
+ tag: php
13
+
14
+ # This gets added to the lando/lando docs guides.json
15
+ guides:
16
+ title: PHP
17
+ collapsable: true
18
+ # Note that these are "source/destination" pairs the source is relative to the root of this
19
+ # repo and the desintation is relative to docs/guides in the main lando repo
20
+ # When this gets added to guides.json we map children so its just the destination
21
+ children:
22
+ "guides/adding-tooling": php/adding-tooling
23
+
24
+ # This gets added to the lando/lando docs config.js
25
+ # Below takes docs/usage.md from this repo and puts it into config/CHANGEME.md in lando/lando
26
+ # and then adds CHANGEME to the list of recipes in config.js
27
+ config:
28
+ recipes:
29
+ "php": ./docs/usage.md