help in setting up automated releases

Hi all,
As the title says, I’m looking for some help to set up an automated method of making new releases, ideally triggered by simply pushing on a specific branch on the main repository. I think bitbucket pipelines would work well for this, but I’m open to alternatives as long as they improve on the current situation of manually building the releases on my laptop. I think rawtherapee already has something in place, which maybe can be a good starting point (though they probably use GitHub?).
If someone is interested in helping, they are welcome to contact me. Thanks!

2 Likes

Hi Alberto,

Gitlab is also a solution which allows CI/CD trough pipelines, just like Bitbucket and Github. Gitlab.com has the advantage, maybe, of not being owned by Microsoft.
But among the 3 options, I don’t know whch one is the best.

For my work, I’ve started using Gitlab (hosted on my institutional forge), to publish web pages from quarto files. The pipeline is based on prebuilt docker images. More info here: Run your CI/CD jobs in Docker containers | GitLab

Hi @sguyader, thanks for the feedback!

Just to clarify: I am reasonably familiar with how this works in general (and in fact I also use a Gitlab instance for work), but I just don’t have the time and energy to figure out the details and implement a working solution myself.

So, any kind of documentation/pointer is much appreciated as usual, but this time I’m actually looking for someone to do the work :slight_smile:

Best

1 Like

btw: if you want to speed up your docker based CI… things … you can use the OBS to build you up2date docker images with all dependencies already installed. that’s what we do for all the websites using hugo. speeds up builds a lot.

Did you know … that if you dont have a clue it is ok to not say anything? content removed.

Aren’t you a peach today… we might all be able to learn…instead you could have said the response is useless or what parts are accurate…

A further question to AI provided this script… again it seems plausible that it would possibly work… or might be close…

Answer.txt (1.6 KB)

Hi,
Thanks for the help but unfortunately this does nothing useful I’m afraid.

1 Like

Good to know… hopefully given all that you have contributed someone will be able to step up and kickstart it for you… :slight_smile:

I started looking up how to do this… Is it even possible? There is certainly next to nothing written about it.

I guess the easiest way would be to set up a repo on GitHub (say called “art-releases”) or something like that, and adapt the existing github actions for building rawtherapee, which could be triggered by pushing to that repo (which wouldn’t even need to contain the code, that could stay on bitbucket). Once that is in place, we could add the bells and whistles…
In principle something similar could be done also on bitbucket (or gitlab) I believe, but maybe not – I’ve never tried with bb

So here it is: Releases · agriggio/ART-releases · GitHub

A Mac build is still missing if someone is interested – I’m not giving up hope yet :slight_smile:

5 Likes

You found both the time and the skills… :slight_smile:

Awesome Alberto! Sorry that I couldn’t help you out…

@HIRAM ?

I think the details for the mac build are here: ART 1.20 for macOS notarized build - #65 by Chaps_Ididi
I am not sure how easy it is to automate it, as you need a mac to build it.
But maybe for the moment you can link to @HIRAM repo or agree with him to link his releases repo in yours.

Hi,

That’s the easy part, as Github provides mac runners.
The problem is that I can’t do this myself as I have no experience with OS X and no way of testing whether the thing works properly on a mac (assuming I’m able to set up a pipeline that actually builds something…)

I do have a Mac (mini M1, currently running Sonoma 14.6;1), so I can do tests if it can help.

So far I’ve been successful compiling ART on my Mac, but I’ve always failed packaging my builds in a bundle.

Same at my side. I have a MacBook, I was also able to build, but I always failed the packaging stage…

1 Like

Example macos workflows in RawTherapee

This is the workflow I have developed to make a universal notarized macOS RawTherapee app. It references the identity of my apple key and uses repository secrets to store the credential pass phrases.

At present the RawTherapee workflow functionally builds and test-launches the app for verification purposes, but is not signed with any credential, so not recommended for end-user testing.


ART

Builds of ART that show up in my shared macOS iCloud folder https://art.r42.us are built on command locally.

Command builds ART on x86_64 macOS:

Command builds ART/Universal on arm64 macOS:

2 Likes