Hm. I see your point. The first solution I thought of is a bit blunt, but it will work: We disable command line arguments when using ZeroConf. Only preset commands are allowed. Also, to allow the Solr GHA to run whatever commands needed not just for now, but also for any future changes, we set up regular (not ZeroConf) access for the GHA runner. This way GHA always has the ability to run any commands - but it is strictly controlled by review requests. Regular developers only get to use the commands that are approved by the Solr community leaders.
Would that work? Thanks, -Uv On Jan 26 2023, at 8:09 am, Mike Drob <md...@apache.org> wrote: > Having massive infrastructure to run PRs is pretty cool. > > I'm worried about letting arbitrary people run code on these > machines though - a single 'crave run -- mine_bitcoin.exe' would ruin the > system for everybody, or it's not hard to imagine a slightly more indirect > case where an attacker adds a test that launches an undesirable process and > runs crave. What safeguards exist to protect against this? At least with > GHA we have to approve non-committers tests to run, but opening it up to > local command line access sounds very broad. > > Mike > On Wed, Jan 25, 2023 at 10:34 PM Ishan Chattopadhyaya < > ichattopadhy...@gmail.com> wrote: > > > This is very cool. Thanks for working on this, David. Can multiple > > developers execute their tests at the same time? > > > > On Thu, 26 Jan, 2023, 5:07 am Noble Paul, <noble.p...@gmail.com> wrote: > > > > > This is interesting. > > > > > > So, if the PR is merged , we will have the full test running on crave.io > > > for every PR raised? > > > > > > On Thu, Jan 26, 2023 at 9:22 AM David Smiley <dsmi...@apache.org> wrote: > > > > > > > We haven't been running all our tests in GitHub Actions (i.e. PR > > > > validation) because it was too time consuming to do so. I don't recall > > > how > > > > slow it was when someone last tried; it's probably better now but still > > > > slow. To make up for this, there is a GHA only for SolrJ if a PR > > touches > > > > SolrJ. > > > > > > > > There's now a PR here to introduce a new GHA that builds on Crave.io > > on a > > > > beefy machine: https://github.com/apache/solr/pull/1303 The PR > > > validation > > > > took 11 minutes which is similar to the amount of time it took a GHA to > > > > just do precommit checks -- 10 minutes :-) > > > > I think we can remove the SolrJ specific GHA as it'll be redundant. > > > > > > > > Furthermore, anyone can use this to run tests from the convenience of > > > your > > > > laptop at the CLI while you are in the middle of any change (doesn't > > > matter > > > > what you have committed or not, pushed or not). To do so, run: crave > > run > > > > -- './gradlew localSettings && ./gradlew --max-workers=`nproc` > > > > -Ptests.jvms=48 test' > > > > > > > > Yeah that's long. There is a discussion in JIRA underway that may lead > > > to > > > > eliminating the "localSettings" step if, for example, it's moved to a > > > bash > > > > script executed by the gradle wrapper (my proposal). I should also be > > > able > > > > to configure crave with a default run configuration with this baked in. > > > > I'll post an update when I'm able to do that. > > > > > > > > ~ David Smiley > > > > Apache Lucene/Solr Search Developer > > > > http://www.linkedin.com/in/davidwsmiley > > > > > > > > > > > > > -- > > > ----------------------------------------------------- > > > Noble Paul > > > > > >