NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky

Fasáda je najkratšia cesta a odporúčaná voľba, no je len skratkou nad RoundlyConsulting\KubernetesApi\KubernetesManager — koreňom fasády, zaregistrovaným ako singleton v kontajneri. Ak manager injektujete, máte to isté API s explicitnou závislosťou a bez statických volaní:

use RoundlyConsulting\KubernetesApi\DataTransferObjects\Scale;
use RoundlyConsulting\KubernetesApi\KubernetesManager;

final class ScaleCheckout
{
    public function __construct(private KubernetesManager $kubernetes) {}

    public function __invoke(int $replicas): Scale
    {
        return $this->kubernetes->cluster('production')
            ->deployments()
            ->setName('checkout')
            ->scale($replicas);
    }
}

Objekty zdrojov namiesto akcií

Balík je klient vzdialeného API, preto nemá triedy akcií: prípadmi použitia sú samotné objekty zdrojov. Zdroj zostavíte priamo a naviažete ho na klaster z managera — prejde tým istým transportom aj tým istým fake:

use RoundlyConsulting\KubernetesApi\Resources\ConfigMap;

ConfigMap::make()
    ->setCluster($kubernetes->cluster('production'))
    ->setNamespace('shop')
    ->setName('settings')
    ->setData(['FEATURE_X' => 'on'])
    ->create();

Tri vstupné body, jeden transport

Vstupný bodVolanieKedy ho použiť
FasádaKubernetes::cluster('production')->deployments()->setName('checkout')->scale(5)Odporúčaná voľba — najkratšia a používajú ju všetky príklady v dokumentácii.
Injektovaný manager$this->kubernetes->cluster('production')->deployments()->setName('checkout')->scale(5)Chcete explicitnú závislosť v konštruktore a žiadne statické volania.
Objekt zdrojaDeployment::make()->setCluster($kubernetes->cluster('production'))->setName('checkout')->scale(5)Zdroj najprv zostavíte a až potom ho naviažete na spravovaný klaster.
  • Kubernetes::fake() vymení manager za fasádou aj v kontajneri, takže fake dostane aj injektovaný KubernetesManager.
  • Zdroje naviazané na klaster z managera — pomenovaný, predvolený, ad-hoc aj obmedzený na namespace — používajú transport tohto klastra, takže aj ich nahradí fake.
  • Klaster vytvorený mimo managera (new Cluster, Cluster::make()) používa skutočný HTTP transport a fake obíde — klastre preto získavajte cez fasádu alebo manager.

Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

Ďalšie spôsoby podpory vrátane kryptomien

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.