---
title: "DI a akcie — Kubernetes API for Laravel | Roundly"
description: "Injektujte KubernetesManager a získate presne API fasády bez statických volaní, alebo naviažte objekty zdrojov na spravovaný klaster — akcie balík nemá."
url: https://roundly-consulting.com/sk/open-source/navody/kubernetes-api-for-laravel/bez-fasady
language: sk
---

[Všetky balíky](https://roundly-consulting.com/sk/open-source.md)

[Kubernetes API for Laravel](https://roundly-consulting.com/sk/open-source/navody/kubernetes-api-for-laravel.md)

# DI a akcie

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í:

```php
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:

```php
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ý bod | Volanie | Kedy ho použiť |
| --- | --- | --- |
| Fasáda | `Kubernetes::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 zdroja | `Deployment::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](https://roundly-consulting.com/sk/podporte-nas.md)

Odoslaním daru súhlasíte s našimi [podmienkami prijímania darov](https://roundly-consulting.com/sk/podmienky-darov.md).

[Podporte našu open-source prácu (otvorí sa v novej karte)](https://donate.stripe.com/dRmeVe8FX5PF1Qd9pXcEw00) [Pridajte sa k nám na Patreone (otvorí sa v novej karte)](https://www.patreon.com/cw/roundly)

## 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.

[Ponuka do 48 hodín](https://roundly-consulting.com/sk/kontakt.md) [Prezrieť všetky balíky](https://roundly-consulting.com/sk/open-source/navody/kubernetes-api-for-laravel.md)
