-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Plan: Make Task Runner Drupal agnostic #130
Comments
Proposal look good, only we need to make sure that whatever we do in 1.x does not require any manual fix on libraries that depends on it, such as the Toolkit, but I guess that's what you meant by:
About:
We could create two new repos:
|
Yes, the Toolkit will not be affected.
Great! This add more clarity to the whole ecosystem. I will create 2 new tickets. @ademarco Could you, please, create the 3 new repos with the same perms as this one? |
Yep, will do! |
Problem
Task Runner provides default commands but some of them are Drupal-specific commands. In fact Task Runner it's not supposed to be a "Drupal tool" but a generic command runner. For this reason, the Drupal specific commands should be moved outside, in their own repo, i.e.
openeuropa/task-runner-drupal
.However, this might impact some projects that are using Task Runner, mainly the Toolkit project. Currently, Toolkit uses or overrides some of the Task Runner default commands as follows:
drupal:settings-setup
: Overridden,drupal:permissions-setup
: Used,drupal:site-install
: Used,The problem is with the current
drupal:settings-setup
command. This can be overridden by Toolkit because the Task Runner version is registered before the namespace discovered commands. If we move the Task Runner version in a 3rd party library, we cannot guarantee which version will be discovered first and the Toolkit override might not work. But we want to guarantee that Toolkit is able to override the Task Runner version.Proposal
For this reason, we propose the following strategy:
openeuropa/task-runner-drupal
.openeuropa/task-runner-drupal
, renamedrupal:settings-setup
asdrupal:setup-settings
(ordrupal:build-settings
,drupal:settings
?).openeuropa/task-runner-drupal
as Composer dependency toopeneuropa/task-runner
, so that third-party that are updating their Task Runner version will continue to have available the Drupal commands.drupal:settings-setup
as default command, so that is guaranteed that Toolkit can override it as it does now but remove the command body and replace it with a call to theopeneuropa/task-runner-drupal
method.[deprecated]
prefix to thedrupal:settings-setup
command description.drupal:settings-setup
command:openeuropa/task-runner
.changelog:generate
in a newopeneuropa/task-runner-changelog
repository.openeuropa/task-runner-changelog
for BC reasons.release:create-archive
in a newopeneuropa/task-runner-artifact
repository.openeuropa/task-runner-artifact
for BC reasons.openeuropa/task-runner-drupal
,openeuropa/task-runner-changelog
andopeneuropa/task-runner-artifact
fromopeneuropa/task-runner
. Third party, such as Toolkit, will have to explicitly add these dependencies if they requires them.drupal:settings-setup
command together with the concept of default commands.The text was updated successfully, but these errors were encountered: