pikselin / platform-sh
此包的最新版本(dev-main)没有可用的许可证信息。
dev-main
2024-07-29 20:40 UTC
Requires
- php: ^7.4 || ^8
- platformsh/config-reader: ^2.4.0
This package is auto-updated.
Last update: 2024-08-29 20:52:07 UTC
README
此模块旨在将platform.sh中设置的每个环境变量传递给Silverstripe的配置/环境。
安装
composer require pikselin/platform-sh
复制(手动操作,抱歉),vendor/pikselin/platform-sh/.environment
到您的项目根目录。
此bash脚本将根据Platform控制台中设置的SS_ENVIRONMENT_TYPE
设置环境变量。
用法
在您的 _config.php
中初始化platform-sh
<?php use Pikselin\Platform\PlatformService; PlatformService::init();
环境加固。
为了防止环境变量泄露,列出了允许的环境变量并进行了检查。
请注意,明确地,环境类型被排除在允许的变量列表之外。
这是为了避免在shell脚本已设置后重复设置。
要添加自己的允许键列表,创建一个YML文件如下
--- name: 'my-allowed-envs' after: 'platformsh-config' --- Pikselin\Platform\PlatformService: env_variables: - MY_ADDITIONAL_KEY
如果您要添加SS_MFA_SECRET_KEY
,您还必须在.environment
文件中添加以下行
export SS_MFA_SECRET_KEY=$(echo $PLATFORM_VARIABLES | base64 --decode | jq -r ".SS_MFA_SECRET_KEY")
也有可能其他.env变量也以这种方式工作。
故障排除
如果您遇到服务器错误或在日志中找到如下内容 未捕获的异常 TypeError: "in_array(): 第2个参数($haystack)必须为数组,给定了null"
SSH进入服务器
platform ssh
并手动删除缓存
rm -rf silverstripe-cache/web/*
尽管它在构建/部署钩子中,但似乎它们需要手动运行。