
Release to NPM and Docker Hub with GitHub Actions and Conventional Commits - derberg
https://www.asyncapi.com/blog/automated-releases/
======
rubenfiszel
I agree with a lot of the post.

Shameless plug, I suggest a workflow very similar with my own github action,
[https://github.com/rubenfiszel/autochangelog-
action](https://github.com/rubenfiszel/autochangelog-action). The suggested
workflow is to:

    
    
      - trigger the action through CURL
      - the action generates a changelog diff and some 
        manifest file diff with the version change (such as package.json). 
        The next version is inferred using semantic versioning and 
        conventionnal commits, respecting fix, feat and breaks. 
        With that new content, you generate a PR. 
        That PR is labeled with "autorelease"
      - When that PR is merged, another action is triggered wich do the 
        Github Release and fill the body with the changelog diff

~~~
abatilo
Shameless plug on top of your plug.

I'm one of the people building:

[https://www.actionspanel.app/](https://www.actionspanel.app/)

A GitHub App that lets you trigger your Actions without needing to run cURL

~~~
rubenfiszel
Small world. I found your appp and really wanted to try it. Unfortunately,
when I sign in, I get redirected to the sign-in page
([https://www.actionspanel.app/auth/sign-
in?next=/app](https://www.actionspanel.app/auth/sign-in?next=/app)) in an
endless cycle.

Do you know what could be the issue?

------
time0ut
Great post. Very clear explanation of things.

The semantic release tooling is so good, I've started using it on non-js
projects. I'm using it to manage Terraform modules, base docker images, etc.
Once you're doing that, might as well mix in Husky and commit-lint to manage
your git hooks and commit messages too.

There are comparable things elsewhere, but node is so ubiquitous in my tool
chain already that this is the path of least resistance for me. And it works
great!

~~~
derberg
I wanted to also introduce PR title validation, so there is no mistake
possible on merging and we follow convetional commits 100% but unfortunately
GitHub Actions do not support fork-based workflow properly and those PR checks
would be useless :(

~~~
jakear
> GitHub Actions do not support fork-based workflow properly

Could you elaborate on this?

~~~
derberg
Take a look on my blog post about it [https://dev.to/derberg/github-actions-
when-fascination-turns...](https://dev.to/derberg/github-actions-when-
fascination-turns-into-disappointment-4d75). I already reported this to GitHub
Actions team and seems they are working on that. For reference
[https://github.community/t5/GitHub-Actions/GitHub-Action-
wor...](https://github.community/t5/GitHub-Actions/GitHub-Action-workflow-is-
executed-for-a-PR-from-a-forked-repo/m-p/50654#M7914)

~~~
jakear
Ah yes, fork. My mind read that as branch as we barely ever use forks
(enterprise environment and all)

Issue comment-triggered Actions have a write-access GITHUB_TOKEN, unless I’m
mistaken. You could implement the /ok-to-test flow with that.

(I’m working on converting some of VSCode’s triage automation to Actions, for
reference)

~~~
derberg
Guy from GitHub suggested the same, but how would you really see such workflow
in action? all I have in mind seems so complicated that easier would be to
write and host dedicated bot really. Supporting PR on Issue level sounds
strange

------
fmvilas
This is awesome! It's a pity that Github Actions don't work well with PRs
coming from forks. We could do many more things.

