Add some TODO in the spec

This commit is contained in:
southerntofu 2021-01-04 16:23:16 +01:00
parent 402c844d0b
commit ec89f19465
1 changed files with 6 additions and 1 deletions

View File

@ -63,7 +63,7 @@ For example, `forgebuild -f` will run all tasks who have a source, ignoring sour
### Discovery
All executable files within the basedir, as well as symlinks within the basedir pointing to an executable file, **MUST** be considered tasks.
All executable files within the basedir, as well as symlinks within the basedir pointing to an executable file, **MUST** be considered tasks, except for files containing a dot (hidden files and task.when).
### Ordering
@ -89,6 +89,8 @@ Tasks **MAY** have associated parameters defining a remote source repository to
Submodules of the source repository **MUST** be cloned when cloning said repository.
TODO: PGP security here? task.key contains the commit where a guix authorisation file is initialized
### Managing submodules
Tasks **MAY** have a `subupdates` setting. When they do, submodule updates will trigger the task. Otherwise, only source repository updates will trigger the task.
@ -101,4 +103,7 @@ Tasks **MAY** have a `subupdates` setting controlling how submodule updates affe
- file does not exist: submodules are not updated automatically
- `update`: submodules are updated, but tasks are only run when the main repositories is updated
- `trigger`: submodule updates trigger tasks
TODO: actually, submodule update always triggers task when subupdates is defined. If the file is not empty, it contains one entry per lines of submodules to autoupdate. Others will not be updated.
TODO: does auto-updating subs break when main repo is updated? what could be a strategy here? when the main repo is updated, check if it tries to update submodules and if so revert back the submodule to its upstream version so we can merge the update, then update submodules again according to subupdates policy?
```