asyncapi / .github

Location of all reusable community health files
29 stars 65 forks source link

ci: simplify release workflow configuration #204

Closed derberg closed 1 year ago

derberg commented 1 year ago

Description


Breaking Changes

tl;dr After we merge this PR, changes in if-nodejs-release.yml, if-nodejs-version-bump.yml, bump.yml files no longer will be replicated to all nodejs projects

it doesn't mean they will stop working, it's just that future improvements will not be pushed there

Why?

semantic-release uses https://github.com/davidtheclark/cosmiconfig for loading configurations, and according to their docs, unfortunately, first priority is package.json and later dedicated files šŸ˜ž In theory it should not be a problem, but because of different dependencies on package.json level and the ones installed in the workflow...I just do not want to "assume all will be fine"

Also, the cleanup anyway has to be done in the repo before new workflows are applied.

What will maintainers have to do?

There will be instructions, but basically they:


what do you think?

Related issue(s) Resolves https://github.com/asyncapi/.github/issues/172

derberg commented 1 year ago

@KhudaDad414 can you have a look? these topics names šŸ¤”

@jonaslagoni @magicmatatjahu @smoya pinging you so you are aware of this proposal. That with merge of this PR, auto updates of release and other workflows will stop until repo owner opts in again. Advantage in your cases is modelina next releases and parser/parser plugin releases. So you can easily modify bump workflows there as you need for your cases. Then once you are done, you can opt in again. Aaaaaaand long term this will be a feature, that on specific occasion you can just opt-out from release workflows updates whenever you want by just removing the topic. Does it make sense?

derberg commented 1 year ago

@KhudaDad414 dude you expect too much from me. I asked ChatGPT for you but even AI provides stupid answer šŸ¤£

Screenshot 2023-01-13 at 11 05 37

On the serious side. I know https://github.com/nektos/act is there and is very popular, but I was too lazy to try it out šŸ˜„

I have 2 approaches, also because in complex scenarios I do not trust tools to do proper integration tests for me, and I value manual testing more (this is why there are still 100s of companies still having big teams of manual testers)

Sorry for disappointing you šŸ˜„

KhudaDad414 commented 1 year ago

@derberg thanks mate for the explanation. I actually tried act but since our workflows are not that simple it let me down. šŸ˜†

derberg commented 1 year ago

/rtm