You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Description:
Our CI (in this repo and many of our others) uses GitHub Actions. For the most part his works well, but there is repetition between the different CI workflow files in each repository. A good example of this is setting up and running ICAT Ansible - DataGateway API, DataGateway and various ICAT repos all follow similar steps to get ICAT Ansible running, yet they're all copied & pasted from each other; the steps are duplicated in this repo more than once because ICAT Ansible has to run in different jobs.
One solution to this might be composite actions. GitHub has written an article that walks through a basic example. basic guide of how they work. I've also found an article on dev.to that compares composite actions against something called reusable workflows. I don't know anything about reusable workflows so this might be something also worth investigating - the article points out some specific differences that might make one more appropriate than the other for our use cases.
It would be good if you could investigate this to find out how we can reduce duplication within our CI workflows. Common points of duplication are as follows:
Installing Nox and Poetry to install dependencies and run Nox sessions (multiple jobs here, SciGateway Auth's CI and OperationsGateway API's CI)
Acceptance criteria:
Investigate how composite actions and reusable workflows work - make a small example so you can learn and demonstrate how it works
Make a plan of how to tackle each of the common points of duplication - should composite actions or reusable workflows be used, be comfortable with how you'd do it etc.
Either do the work within the scope of this issue or split up the changes into different issues (we can work this out nearer the time)
The text was updated successfully, but these errors were encountered:
Description:
Our CI (in this repo and many of our others) uses GitHub Actions. For the most part his works well, but there is repetition between the different CI workflow files in each repository. A good example of this is setting up and running ICAT Ansible - DataGateway API, DataGateway and various ICAT repos all follow similar steps to get ICAT Ansible running, yet they're all copied & pasted from each other; the steps are duplicated in this repo more than once because ICAT Ansible has to run in different jobs.
One solution to this might be composite actions. GitHub has written an article that walks through a basic example. basic guide of how they work. I've also found an article on dev.to that compares composite actions against something called reusable workflows. I don't know anything about reusable workflows so this might be something also worth investigating - the article points out some specific differences that might make one more appropriate than the other for our use cases.
It would be good if you could investigate this to find out how we can reduce duplication within our CI workflows. Common points of duplication are as follows:
Acceptance criteria:
The text was updated successfully, but these errors were encountered: