These actions can be in their own repos (like other distributable action types) and have a file called action.yml in repo roots.
There's also an unofficial convention to have local in-repo actions in subdirectories of .github/actions/, with their own action.yml files. I think it's technically possible to put these anywhere so it might make sense to have some configuration for such action paths. Perhaps, those local actions referenced from the workflow definitions could be auto-discovered.
So the composite actions are pretty simple. They have a
steps
key that pretty much resembles the jobsteps
key in workflow definitions: https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-composite-action#creating-an-action-metadata-fileThese actions can be in their own repos (like other distributable action types) and have a file called
action.yml
in repo roots.There's also an unofficial convention to have local in-repo actions in subdirectories of
.github/actions/
, with their ownaction.yml
files. I think it's technically possible to put these anywhere so it might make sense to have some configuration for such action paths. Perhaps, those local actions referenced from the workflow definitions could be auto-discovered.I imagine one would need to extend https://github.com/davidism/gha-update/blob/b752b98/src/gha_update/_core.py#L48-L53 to handle this case.