Папка public / vendor не загружается с помощью cf push

В настоящее время я пытаюсь настроить проект Laravel 5.6 в Swisscom Application Cloud с помощью php-buildpack.

К сожалению, моя общедоступная папка / vendor не загружается или удаляется после загрузки cf push. Если я подключаюсь с помощью cf ssh и перехожу к общедоступной папке, внутри папки нет поставщика. Я попробовал все, включая удаление всего из .cfignore.

options.json

{
"LIBDIR": "vendor",
"WEBDIR": "public",
"PHP_VERSION": "{PHP_70_LATEST}",
"COMPOSER_VENDOR_DIR": "vendor",
"PHP_EXTENSIONS": [ "bz2", "zlib", "openssl", "tokenizer", "curl",
"mcrypt", "mbstring", "pdo", "pdo_mysql", "fileinfo", "gd",
"pdo_sqlite"],
"PHP_MODULES": ["fpm", "cli"],
"ADDITIONAL_PREPROCESS_CMDS": [
"php artisan migrate --force",
"php artisan config:cache"]
}

Если я скопирую свою папку public / vendor в public / vendor2, папка будет доступна на сервере после нажатия cf push.

Редактировать: я должен упомянуть, что папка public / vendor — это не папка, созданная путем установки composer, а включающая в себя все файлы css / html / js, которые должны быть общедоступными. Они должны быть добавлены локально, так как некоторые из них должны быть собраны с npm или изменены.

1

Решение

Есть вопрос с пакетом PHP, который делает cf push игнорировать все папки с vendor как имя

В качестве обходного пути вы можете создать символическая, например, вы можете использовать каталог с именем my-vendor и создайте символическую ссылку на него, используя vendor как имя:

$ cd public
$ mkdir my-vendor
$ ln -s my-vendor vendor

После развертывания cf push . Вы могли бы через cf ssh . и должен иметь созданную символическую ссылку public/vendor, что-то вроде этого:

vcap@aceb5ff2-a9dc-41f4-50be-f234:~/app/public$ ls -al app/public/
total 8
drwxr-xr-x 3 vcap vcap   54 Aug  2 14:13 .
drwxr-xr-x 1 vcap root 4096 Aug  2 14:13 ..
-rw-r--r-- 1 vcap vcap  501 Aug  2 14:01 index.php
drwxr-xr-x 2 vcap vcap   36 Aug  2 13:50 my-vendor
lrwxrwxrwx 1 vcap vcap    9 Aug  2 13:50 vendor -> my-vendor
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]