sandwave-io/freenas

FreeNAS RESTful API (v2) 的 PHP SDK

1.0.0 2020-07-21 08:58 UTC

This package is auto-updated.

Last update: 2024-09-13 13:32:45 UTC


README

FreeNAS RESTful API (v2) - PHP SDK

Codecov GitHub Workflow Status Packagist PHP Version Support Packagist PHP Version Support Packagist Downloads

本包基于 FreeNAS API 的 v2.0 版本构建。

如何使用

composer require sandwave-io/freenas-php
$freenas = new \SandwaveIo\FreeNAS\RestClient(
    'https://my-freenas-install.io/api/v2.0/', // base url
    'root',                  // user
    'SuperSecretPassword123' // password
);

// This example shows how to create a dataset, and a user that has access rights to that dataset.

$dataset = $freenas->createDataset(
    'store01',    // pool
    'my-dataset', // dataset
    20 * 1024**3  // size in bytes
);

$user = $freenas->createUser(
    1001,                        // uid
    'my-user',                   // username
    $dataset->getMountPoint(),   // homedir
    'SuperSecretUserPassword123' // password
);

如何贡献

如有任何改进想法,请自由创建 PR。或者创建一个问题。

  • 添加代码时,请确保为其添加测试(phpunit)。
  • 确保代码符合我们的编码标准(使用 php-cs-fixer 检查/修复)。
  • 同时确保 PHPStan 找不到任何错误。
vendor/bin/php-cs-fixer fix

vendor/bin/phpstan analyze

vendor/bin/phpunit --coverage-text

这些工具也会在 GitHub actions 中在 PR 和 master 推送上运行。