Overview
The reference is the implementation of the feature for GitLab: https://docs.tuleap.org/user-guide/code-versioning/gitlab.html#close-tuleap-artifact-with-gitlab-commit-messages. See the corresponding story: story #17183
It means that when:
- a commit that contains one of the keywords is integrated in a repository default branch
-
and the repository is configured to allow smart commits
-
and the target artifact allows the transition
Then, the corresponding artifact is transitioned to the Done state by the user that push the commit.
Note: while gitlab closing is done with TULEAP-1234 reference, the smart commit with Tuleap Git is done with regular tuleap references (bug #1234
, art #1234
)
Processing
The processing of the smart commits is done asynchronously (so will requires Redis & workers) in order to limit the blocking time for the end user.
Administration
The configuration of the feature is done by a checkbox bellow the definition of default branch.
It's set on for all new repositories but false for existing ones.
Forks
Forked repositories should be deactivated by default. It should be possible to re-activate the feature afterward.
If we don't deactivate, it means that a merge in the fork would close the artifact and it's unlikely the expected default behaviour.