@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.
- package/.editorconfig +12 -0
- package/.eslintignore +4 -0
- package/.eslintrc.json +31 -0
- package/.gitattributes +11 -0
- package/.lando.yml +14 -0
- package/.node-version +1 -0
- package/.nyc_output/39d8df6b-751b-4e0f-9b9a-f9f68686a0ed.json +1 -0
- package/.nyc_output/baf1169d-949a-4c6f-955a-88b2e3fe7cb4.json +1 -0
- package/.nyc_output/processinfo/39d8df6b-751b-4e0f-9b9a-f9f68686a0ed.json +1 -0
- package/.nyc_output/processinfo/baf1169d-949a-4c6f-955a-88b2e3fe7cb4.json +1 -0
- package/.nyc_output/processinfo/index.json +1 -0
- package/.tool-versions +1 -0
- package/CHANGELOG.md +7 -0
- package/LICENSE.md +674 -0
- package/PRIVACY.md +169 -0
- package/README.md +74 -0
- package/actions-lando-config.yml +14 -0
- package/coverage/base.css +224 -0
- package/coverage/block-navigation.js +87 -0
- package/coverage/favicon.png +0 -0
- package/coverage/index.html +132 -0
- package/coverage/lib/index.html +117 -0
- package/coverage/lib/utils.js.html +266 -0
- package/coverage/prettify.css +1 -0
- package/coverage/prettify.js +2 -0
- package/coverage/services/php/builder.js.html +728 -0
- package/coverage/services/php/index.html +117 -0
- package/coverage/sort-arrow-sprite.png +0 -0
- package/coverage/sorter.js +196 -0
- package/images/5.3-apache/Dockerfile +83 -0
- package/images/5.3-apache/apache2.conf +64 -0
- package/images/5.3-fpm/Dockerfile +80 -0
- package/images/5.3-fpm/docker-php-ext-enable +83 -0
- package/images/5.3-fpm/php-fpm.conf +65 -0
- package/images/5.4-apache/Dockerfile +79 -0
- package/images/5.4-apache/apache2-foreground +17 -0
- package/images/5.4-fpm/Dockerfile +75 -0
- package/images/5.5-apache/Dockerfile +77 -0
- package/images/5.5-fpm/Dockerfile +76 -0
- package/images/5.6-apache/Dockerfile +78 -0
- package/images/5.6-fpm/Dockerfile +79 -0
- package/images/7.0-apache/Dockerfile +78 -0
- package/images/7.0-fpm/Dockerfile +78 -0
- package/images/7.1-apache/Dockerfile +86 -0
- package/images/7.1-fpm/Dockerfile +86 -0
- package/images/7.2-apache/Dockerfile +84 -0
- package/images/7.2-fpm/Dockerfile +84 -0
- package/images/7.3-apache/Dockerfile +84 -0
- package/images/7.3-fpm/Dockerfile +84 -0
- package/images/7.4-apache/Dockerfile +83 -0
- package/images/7.4-fpm/Dockerfile +83 -0
- package/images/8.0-apache/Dockerfile +84 -0
- package/images/8.0-fpm/Dockerfile +84 -0
- package/images/8.1-apache/Dockerfile +86 -0
- package/images/8.1-fpm/Dockerfile +87 -0
- package/index.js +3 -0
- package/lib/utils.js +60 -0
- package/netlify.toml +25 -0
- package/package.json +62 -0
- package/plugin.yml +29 -0
- package/services/php/builder.js +214 -0
- package/services/php/default-ssl.conf +188 -0
- package/services/php/default-ssl.conf.tpl +30 -0
- package/services/php/default.conf +41 -0
- package/services/php/default.conf.tpl +20 -0
- package/services/php/php.ini +46 -0
- 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
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
|