linkorb/hiera-php

Hiera的PHP实现

dev-master 2015-03-30 08:35 UTC

This package is auto-updated.

Last update: 2024-08-29 03:36:45 UTC


README

Hiera是什么?

根据Hiera网站

Hiera is a key/value lookup tool for configuration data.

Hiera使用可配置的层次结构来实现“级联配置”。

它非常适合基础设施配置(这也是为什么它在Puppet中使用的理由),同时也适用于多租户应用程序。

Hiera-PHP尽量保持直接的端口,保持对原始配置文件、内部类名和接口的支持。

使用方法

hiera-php可以作为库和命令行工具使用

use Hiera\Hiera;
use Hiera\Scope;
use Hiera\ConfigLoader\YamlConfigLoader;

$scope = new Scope();
$scope->setVariable('::environment', 'production');
$scope->setVariable('::clientcert', 'web01.dc1.example.webx');
$scope->setVariable('::country', 'nl');
$hiera = new Hiera();
$loader = new YamlConfigLoader();
$loader->load($hiera, $path_to_hiera_yaml_file);

$key = 'some_configuration_key';
$answer = $hiera->lookup($key, '#default#', $scope);

命令行工具

vendor/bin/hiera-php hiera:lookup some_configuration_key

特性

  • 支持加载原始hiera.yaml文件
  • 支持可插拔后端
  • 包含Yaml后端(支持原始配置yaml文件)
  • 命令行工具执行查找
  • 可嵌入为库
  • Json后端
  • 数据库(PDO、Redis等)后端
  • Memcached后端
  • 数组合并策略

非常欢迎贡献!

许可证

MIT(见LICENSE.md

由LinkORB工程团队提供


查看我们的其他项目linkorb.com/engineering

顺便说一句,我们正在招聘!