ACCESS-NRI / access-nri-intake-catalog

Tools and configuration info used to manage ACCESS-NRI's intake catalogue
https://access-nri-intake-catalog.rtfd.io
Apache License 2.0
7 stars 0 forks source link

Github Action to Build Catalog #133

Open anton-seaice opened 8 months ago

anton-seaice commented 8 months ago

Is your feature request related to a problem? Please describe.

To build the catalog currently requires manual intervention.

Describe the feature you'd like

When a pull request is created - build a copy of the catalog on Gadi, and make available to the developer/reviewer to fix any issues.

When a new version is tagged - build a copy of the catalog on Gadi and move it to the public copy (initially with an extra step for a human to confirm first?)

This should be possible with github actions.

Describe alternatives you've considered

We could write an instruction for a reviewer on how to build the catalog, or use the access-dev jenkins server or similar.

Additional context

dougiesquire commented 8 months ago

I agree it would be nice to have a full CD workflow. This has been on my todo list for a long time, but I've been waiting for the Github runners Aidan's team are setting up on Nirin (we definitely don't want to use access-dev as that will not be available very soon). We could instead just ssh from a Github runner.

One difficulty is that the full build takes ~1.5 hours and so we probably don't want to be doing this with every pull request. But we could set things up so that users could trigger a "non-release" build from Github if they wanted to.

anton-seaice commented 8 months ago

Thanks

The Nirin solution sounds like it could be the neatest, so lets wait.

I think run the full build so we know it all works, and just make sure it goes into scratch and gets cleaned up regularly.

dougiesquire commented 8 months ago

Aidan says they're still testing the Nirin Github runner, but it should be ready in the next week or so

dougiesquire commented 5 months ago

Note @rbeucher made a start on this but I'm not sure how much further he plans to take it? What he's added so far is a github workflow to manually trigger the build job on Gadi. As discussed in this thread, it would be good to have the build happen automatically on releases and PRs, but a little extra logic is required for handling non-release builds (could be as simple as building to tmp). @rbeucher, have you finished what you've been adding or are you planning to do more?