pikselin/platform-sh

此包的最新版本(dev-main)没有可用的许可证信息。

安装次数: 1,286

依赖者: 0

建议者: 0

安全: 0

星级: 0

关注者: 5

分支: 0

开放问题: 0

类型:silverstripe-vendormodule

dev-main 2024-07-29 20:40 UTC

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/*

尽管它在构建/部署钩子中,但似乎它们需要手动运行。