Is my automation (using https://github.com/upcmd/up) achieving the exact same thing as goreleaser? #1682
stephencheng
started this conversation in
General
Replies: 1 comment
-
you are exactly right. GoReleaser handles the build, packaging and releasing of projects... you can check the customization docs to see everything that's possible to do... |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Firstly, an admirer of the gorelease project here. I have no in depth knowledge of gorelease, though I wanted to use it longtime ago.
I am the author of https://github.com/upcmd/up, which is a ci/cd automation tool, could be an alternatives/company for tools like Make, Ansible, Ant, Gradle etc.
While I was sharing my implementation of how I automated the build/tag/publish/release in reddit, I was referring to gorelease.
My post is here: https://www.reddit.com/r/devops/comments/htcswy/sharing_how_do_full_automate_build_and_publish_my/
So basically, it is just two entry tasks for me to release either all (32 distros) or (latest master daily build), and essentially to call a common shared reusable task
In this task, what it does are:
Both of these two tasks share the same reusable common task: buildDistros
In buildDistros, it exam if a parameter/var distlist is supplied, in task 2 - daily build of latest version, it supplies the distro to be a list of: osx/linux/windows, in the publish of a tagged version, it just automatically generate a list of all support ox and archtype
Then the build also try to attempt to build all os/arch combinations. If it fails, it ignores the error and iterate through all the list. It comes down to 32 distros generated in the end.
config
https://github.com/upcmd/up/blob/master/up.yml, check the tasks: publish and Publish_latest
According to the definition of gorelease:
I think that I used UPcmd to have achieved the same result nicely. Also the customisation could be done using the orchestration workflow.
I guess UPcmd is more generic for automation, while gorelease is specialised in 'release' scenario/use case. I am just wondering if there is anything that gorelease could do better/more so that I might consider switch to invoke gorelease directly inside of the UPcmd task configuration.
Beta Was this translation helpful? Give feedback.
All reactions