50 return $this->refinery->custom()->transformation(
function (
$data) {
51 $datetimezone = $this->refinery->to()->toNew(\DateTimeZone::class);
52 return new \ilSetupConfig(
53 $this->data->clientId(
$data[
"client_id"] ??
''),
54 $datetimezone->transform([
$data[
"server_timezone"] ??
"UTC"]),
55 $data[
"register_nic"] ?? false
65 return new Setup\Objective\ObjectiveWithPreconditions(
69 "Complete common ILIAS objectives.",
71 new Setup\Condition\PHPVersionCondition(
"7.2.0"),
72 new Setup\Condition\PHPExtensionLoadedCondition(
"dom"),
73 new Setup\Condition\PHPExtensionLoadedCondition(
"xsl"),
74 new Setup\Condition\PHPExtensionLoadedCondition(
"gd"),
79 :
new Setup\ObjectiveCollection(
91 return new Setup\Condition\ExternalConditionObjective(
92 "PHP memory limit >= " . self::PHP_MEMORY_LIMIT,
94 $limit = ini_get(
"memory_limit");
98 $expected = $this->data->dataSize(self::PHP_MEMORY_LIMIT);
99 $current = $this->data->dataSize($limit);
100 return $current->inBytes() >= $expected->inBytes();
102 "To properly execute ILIAS, please take care that the PHP memory limit is at least set to 128M." 114 return new Setup\Objective\NullObjective();
122 return new Setup\Objective\NullObjective();
144 if ($name ==
"registerNICKey") {
146 throw new \RuntimeException(
147 "Missing Config for objective '$name'." 152 throw new \InvalidArgumentException(
153 "There is no named objective '$name'" A objective collection is a objective that is achieved once all subobjectives are achieved...
Contains common objectives for the setup.
getPHPMemoryLimitCondition()
getStatusObjective(Setup\Metrics\Storage $storage)
getArrayToConfigTransformation()
An objective is a desired state of the system that is supposed to be created by the setup...
getUpdateObjective(Setup\Config $config=null)
There seems to already exist an ILIAS installation, an interaction with it should be confirmed...
getInstallObjective(Setup\Config $config=null)
getBuildArtifactObjective()
getNamedObjective(string $name, Setup\Config $config=null)
__construct(Refinery\Factory $refinery, Data\Factory $data)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
An environment holds resources to be used in the setup process.
A configuration for the setup.