19declare(strict_types=1);
35 protected const ARTIFACTS = __DIR__ .
"/../../../../../artifacts";
40 final public static function PATH(): string
42 return realpath(self::ARTIFACTS) .
"/" . md5(static::class) .
".php";
70 return $this->
build();
115 return static::PATH();
125 $artifact = $this->
buildIn($environment);
131 file_put_contents(
$path, $artifact->serialize());
143 $dir = pathinfo(
$path)[
"dirname"];
144 if (!file_exists($dir)) {
145 if (!mkdir($dir, 0755,
true) && !is_dir($dir)) {
146 throw new \RuntimeException(sprintf(
'Directory "%s" was not created', $dir));
This is an objective to build some artifact.
getHash()
Uses hashed Path.
isNotable()
Defaults to 'true'.
isApplicable(Setup\Environment $environment)
makeDirectoryFor(string $path)
const COMPONENTS_DIRECTORY
achieve(Setup\Environment $environment)
Builds the artifact and puts it in its location.
buildIn(Setup\Environment $env)
Builds an artifact in some given Environment.
getPreconditions(Setup\Environment $environment)
Defaults to no preconditions.
build()
Build the artifact based.
getLabel()
Defaults to 'Build ' .
getArtifactName()
Get the filename where the builder wants to put its artifact.
An artifact is some file that is build on demand per installation and is not shipped with the ILIAS s...
An environment holds resources to be used in the setup process.
An objective is a desired state of the system that is supposed to be created by the setup.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...