PhysiCell icon indicating copy to clipboard operation
PhysiCell copied to clipboard

Simplification of the definition of projects to run in GitHub actions

Open vincent-noel opened this issue 8 months ago • 0 comments

I wrote a simpler version of the GitHub actions, using what's called a matrix: https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs

We define the list of projects to run like this:

projects: [
          {project: "virus-macrophage-sample", name: "Virus Macrophage", binary: "virus-sample"},
          {project: "physiboss-cell-lines-sample", name: "PhysiBoSS Cell Lines", binary: "PhysiBoSS_Cell_Lines"},
          {project: "physimess-sample", name: "PhysiMeSS Sample", binary: "project"},
          {project: "physimess-sample", name: "PhysiMeSS Sample", binary: "project", config: "config/Fibre_Initialisation/mymodel_initialisation.xml"},
          {project: "physimess-sample", name: "PhysiMeSS Sample", binary: "project", config: "config/Cell_Fibre_Mechanics/mymodel_rotating.xml"},
          {project: "template", name: "PhysiCell Template", binary: "project"}
]

Each element needs a project, which is the name used when running make <project>, a name, the filename of the binary file, and the optional path of a config file. This needs to be set up for all the different runners: macos-12 (x86_64), macos-14 (arm64), linux, windows. But the syntax is exactly the same.

vincent-noel avatar Jun 04 '24 17:06 vincent-noel