Jeff King <peff@xxxxxxxx> writes: > On Thu, May 07, 2020 at 08:17:27AM -0400, Jeff King wrote: > >> > But doesn't this (i.e. uses: actions/github-script) still pay the >> > cost of spinning up a VM? How expensive is it to check out a small >> > tree with a single file, whether it is ref-whitelist or allow-ref? >> >> I suspect this script mechanism may be much cheaper. I don't know the >> implementation details, but spinning up a nodejs container to run a >> javascript snippet should be much cheaper than a full ubuntu VM running >> "git clone" (the clone itself should be super cheap because it's a >> shallow single-branch clone of a tree with one file in it, but getting >> there is relatively heavy-weight). > > Sorry, this is all complete nonsense. There is no magical nodejs > container in Actions. You still have to say "runs-on: ubuntu-latest". So > it's still spinning up that VM and then running inside there. Ah, I did see "runs-on: ubuntu-latest" in the tutorial for the node thing, and was very much dissapointed, before I sent that "don't you still spin up a VM anyway?" response. Glad to know that I wasn't totally misreading the documentation, and unhappy that there wasn't a magic bullet after all X-<. > and they took 1, 2, and 3 seconds respectively. They spend 2s getting > the environment set up and the actions loaded. So the API one spent less > than 1s on the network, but the single-file checkout spent slightly > more. Given the timing variations I've seen, I wouldn't be surprised if > it sometimes goes the other way. But even if those numbers are accurate, > I don't think the cost difference is enough to force our hand either > way. Yup, the above tempts me to say "because we are spinning a VM anyway, why not just run an end-user supplied script and let it decide?" would be the best approach. Unless somebody finds a magic bullet, that is, but unfortunately the nodejs one does not seem to be one. Thanks.