Closed frozenfrank closed 3 weeks ago
Maybe we should use the action created by GitHub even though it is not maintained. I believe it is the base for the action that we are currently suggesting.
Maybe we should use the action created by GitHub even though it is not maintained. I believe it is the base for the action that we are currently suggesting.
@leesjensen That sounds like a great idea. We are not using any fancy, bleeding edge features of the action, and we do not need to rely on anyone to maintain the action.
While I don't know the man personally, I do see that the ncipollo/release-action repository is one of the 4 endorsed by the surviving official GitHub action. For me, the official endorsement gives me sufficient confidence to trust in the author, but I understand why that is a general concern.
Maintained Actions:
- elgohr/Github-Release-Action
- marvinpinto/action-automatic-releases
- softprops/action-gh-release
- ncipollo/release-action
Source: actions/create-release
I looked in to it more and used the unmaintained version of actions/create-release
in my repository.
Here are the relevant runner logs:
The action is definitely not maintained, and I would not recommend using it for the following reasons:
GITHUB_TOKEN
via an environment variablenode12
) which will soon be deprecatedset-output
The runtime warnings are just not worth it. The features may disappear at any time and (randomly) cause the workflow to stop working.
Continue using the ncipollo
action which is officially endorsed by the actions/create-release
repo.
Overview
In class, @leesjensen has warned us about the dangers of using 3rd party actions. There is a potential threat that they could update their code to exfiltrate our CI secrets or perform other nefarious actions within our secure context.
Observation
ncipollo/release-action@v1
is in the form<GITHUB_USERNAME>/<REPO_NAME>@SHA
(see Using tags for [actions] version management).In this case,
v1
is a tag which resolves to a commit.Resolution
Correctness
This change was tested and was verified to work. See this workflow run #12 where the change existed and the jobs all passed.