Open Stefan-Kosker opened 5 years ago
I would expect the kickstart package to ask for the target folder for the newly created package, because there are two different use cases:
DistributionPackages
Packages
(or Plugins
)That would indeed be a nice new feature and shouldn't be too hard to implement.
I created two PRs for this, see https://github.com/neos/flow-development-collection/pull/1823 and https://github.com/neos/flow-development-distribution/pull/42
If this is a possible solution i could also create a PR for the documentation?
@albe Can we have this closed, as PR https://github.com/neos/flow-development-distribution/pull/42 was merged (and this ticket was not automatically closed)
That PR only added the DistributionPackages
folder to the installation, but one of the ideas was to make the kickstarter create packages in that folder.
Letting the user choose from a list works and also the new package and it's files get created at the correct place.
But when choosing something different as Packages
as the path, it looks like PackageManager
's $this->rescanPackages();
does not recognize the newly created package and the next line throws the following exception:
Warning: Undefined array key "opsdev/foobar" in /var/www/html/Packages/Framework/Neos.Flow/Classes/Package/PackageManager.php line 418
@albe any idea on how to solve this?
Hmm, not so sure about the PackageManager - @kitsunet knows much more about it.
The line that throws the error is
$this->registerPackageFromStateConfiguration($manifest['name'], $this->packageStatesConfiguration['packages'][$manifest['name']]);
So it looks like the "packageStatesConfiguration" array doesn't contain the package entry after the scan. After a quick look the scan uses FLOW_PATH_PACKAGES
as the root directory to scan, which defaults to define('FLOW_PATH_PACKAGES', FLOW_PATH_ROOT . 'Packages/');
in Bootstrap::defineConstants()
. So I guess that needs to be adjusted as well?
Description
./flow kickstart
and documentation needs an update to fit into best practice folder structure described here:Neos.io Blogpost
Steps to Reproduce
Expected behavior
./flow kickstart
creates your package inDistributionPackages
Documentation about creating a new package should make it clear that you create your packages inDistributionPackages
Actual behavior
./flow kickstart
creates the new package inPackages
.Affected Versions
Neos: 4.3.3
Flow: 5.3.2
but this is standard afaik, so should be on all versions.