moonspot / kubernetes
此包的最新版本(v1.29.0)没有可用的许可信息。
用于组成 Kubernetes 对象的类库
v1.29.0
2023-12-14 18:40 UTC
Requires
- php: >=8.0
- exsyst/swagger: ^0.4.2
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-14 20:25:28 UTC
README
此库用于构建、导入和导出 Kubernetes 对象。这些类都是使用位于 kubernetes/kubernetes 仓库中的 Swagger 文件构建的。
构建此库的原始目的是编写与 Kubernetes 对象交互的应用程序。此库不应用于构建配置管理仓库。用于管理对象的 PHP 代码可能比简单地编写所需的 YAML 更冗长和复杂。
版本兼容性
此库的版本遵循官方 Kubernetes 发布的次要/次要版本。仅支持 1.21 及以后的版本。
示例
$configmap = \Moonspot\Kubernetes\Kubernetes::new('ConfigMap'); $configmap->metadata->name = 'MyConfigMap'; $configmap->metadata->labels = [ "app-name" => 'MyApp' ]; $configmap->data = [ 'config.ini' => "some_setting = 1\nsome_setting = 2\n" ]; echo $configmap->toYaml();
结果
--- apiVersion: v1 data: config.ini: | some_setting = 1 some_setting = 2 kind: ConfigMap metadata: labels: app-name: MyApp name: MyConfigMap ...
导入
Kubernetes 类的工厂方法将自动检测对象的类型并创建它。
$configmap = \Moonspot\Kubernetes\Kubernetes::factory(file_get_contents('./configmap.yaml')); echo $configmap->metadata->name . "\n";
结果
MyConfigMap