mxcl / xcodebuild

A continuously resilient `xcodebuild` “GitHub Action”. Also it’s the best.
The Unlicense
304 stars 25 forks source link

Doesn't work with `ruby/setup-ruby`'s `bundler-cache: true` #84

Open quad opened 2 years ago

quad commented 2 years ago

We've got a build that looks something like:

- uses: ruby/setup-ruby@v1
  with:
    bundler-cache: true

- uses: mxcl/xcodebuild@v1
  with:
    working-directory: app/ios
    scheme: AppTests
    platform: iOS

When there's no bundler-cache, the build succeeds. When bundler-cache is true, the xcodebuild step fails:

xcodebuild test
  Error: spawn xcpretty ENOENT
      at Process.ChildProcess._handle.onexit (node:internal/child_process:282:[19](https://github.com/squareup/wallet/actions/runs/3318014846/jobs/5481488702#step:7:20))
      at onErrorNT (node:internal/child_process:477:16)
      at processTicksAndRejections (node:internal/process/task_queues:83:[21](https://github.com/squareup/wallet/actions/runs/3318014846/jobs/5481488702#step:7:22))

I lightly suspect it's because setup-ruby changes the bundle configuration. Is there a way for xcodebuild to detect that xcpretty was installed via bundle and to run bundle exec xcpretty instead?

mxcl commented 2 years ago

Yeah we should figure out what we can do here. In the meantime you can workaround this by setting verbosity: quiet or verbosity: verbose.

(the default is verbosity: xcpretty)