Added plugins and build tools

This commit is contained in:
2021-12-09 00:58:28 +01:00
parent a0d68a606c
commit eefe53a438
46 changed files with 4049 additions and 1 deletions

View File

@ -0,0 +1,42 @@
<?php
namespace SparkPlug\Com\Noccy\Docker\DockerCompose;
use Symfony\Component\Yaml\Yaml;
class Stack
{
private array $compose;
private string $version;
private array $services;
public function __construct(string $filename)
{
$this->compose = Yaml::parseFile($filename);
$this->version = $this->compose['version']??null;
$this->enumServices();
}
private function enumServices()
{
foreach ($this->compose['services'] as $service=>$config) {
$this->services[$service] = new Service($config, $this);
}
}
public function getServiceNames(): array
{
return array_keys($this->services);
}
public function getService(string $name): ?Service
{
return $this->services[$name] ?? null;
}
}