正在用 SwisscomDev/Cloudfoundry 解析 unstable/insecure 个版本

Resolving unstable/insecure versions with SwisscomDev/Cloudfoundry

在我们的 manifest.yml 中定义了 buildpack: php_buildpack 根据我的理解,这应该解析为最新的 CloudFoundry PHP Buildpack。

但这解析为 Buildpack 版本 4.3.21,而 Github 提到 4.3.22 为最新版本。这是怎么发生的?我们需要触发something/someone吗?当然,我们不想在清单中指定特定的发布标签。

此外 options.json 中的 "PHP_VERSION": "{PHP_70_LATEST}" 应该解析为最新的稳定 PHP 7 版本,但它解析为 7.0.11,根据 PHP Release Announcements 是一个不安全的版本不应再使用。

同样适用于 PHP_56_LATEST,因为它解析为 5.6.7,它已经过时,有利于 5.6.28(以及安全版本)。

我们没有检查 httpd 和其他人,因为我们会以某种方式依赖于获取最新、稳定和安全的版本。

php_buildpack 是指安装在您正在使用的 Cloud Foundry 安装(即 Swisscom Application Cloud)上的最新版本的 buildpack。它会在 Cloud Foundry 版本更新后立即更新,因为 buildpack 与 CF 捆绑在一起。如果你真的想使用绝对最新的构建包,你必须直接从 GitHub 中提取它。您可以通过指定

buildpack: https://github.com/cloudfoundry/php-buildpack.git

PHP 的版本也与 buildpack 捆绑在一起。它将始终安装您指定范围的最新版本,该版本安装在您正在使用的 buildpack 版本中。您可以在此处找到这些版本:https://github.com/cloudfoundry/php-buildpack/blob/master/manifest.yml(您可以查看构建包的不同 git 标记的文件,以查看它们捆绑了哪些 PHP 版本)。

我认为原因是操作员的 buildpacks 名称没有标准。

例如平台运营商可以上传任何名称和版本的构建包。

将它们保留为默认 names/latest 版本是最佳做法,但并非所有人都遵循该版本。

只需将自定义 buildpack 与您需要的任何版本一起使用(如果平台允许)