I have a repo, in which there is one folder at the root with a Makefile to build a C library. In the same repo, there is another folder at the root with a folder with another Makefile for building a node C addon via Node-API, and a small JS/TS API using said addon. The NAPI addon is dependent on the C library.
I have a workflow file for the C which runs when there is a commit on the C folder, and runs with any push or PR. I have another workflow file that runs when there is a commit+push/PR to the JS/TS folder, OR when the C workflow has completed successfully.
My goal is (of course) to only have the minimal amount of workflows run, depending on “how high in the stack the commits were”. If commits touch only the C, I want both the C and NAPI addon to be checked. If commits touch only the NAPI addon, I want only the NAPI addon to be checked. If commits touch both the C and NAPI addon, I want both the C and NAPI to be checked; but for NAPI to only be checked once.
For now, when the commits touch both the C and NAPI addon, the CI for the NAPI addon is launched twice: once for the commits affecting the NAPI folder, once for the successful completion of the C workflow.
How do I fix this ?
NB: I’ve tried using
fkirc/skip-duplicate-actions@master, but it didn’t do the job.
NB: I first asked this question here: How do I prevent a given GitHub Workflow from being launched twice from two almost simultaneous events? - DevOps Stack Exchange
But didn’t receive any reply.