Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

danger-swiftlint 0.34.0 fails on Jenkins CI #197

Open
ilkeyucel opened this issue Dec 12, 2023 · 2 comments
Open

danger-swiftlint 0.34.0 fails on Jenkins CI #197

ilkeyucel opened this issue Dec 12, 2023 · 2 comments

Comments

@ilkeyucel
Copy link

After installing danger-swiftlint 0.34.0 PRs are breaking with the following error:

Ruby version: ruby 3.2.2 (2023-03-30 revision e51014f9c0) [arm64-darwin22]
bundler version: Bundler version 2.4.22

23:36:02  [!] The exception involves the following plugins:
23:36:02   -  danger-swiftlint
23:36:02  
23:36:02  
23:36:02  +---------------------------------------+
23:36:02  |           fastlane summary            |
23:36:02  +------+------------------+-------------+
23:36:02  | Step | Action           | Time (in s) |
23:36:02  +------+------------------+-------------+
23:36:02  | 1    | default_platform | 0           |
23:36:02  | 2    | setup_jenkins    | 0           |
23:36:02  | 3    | is_ci            | 0           |
23:36:02  | 4    | reset_git_repo   | 0           |
23:36:02  | 💥   | danger           | 5           |
23:36:02  | 6    | danger           | 3           |
23:36:02  +------+------------------+-------------+
23:36:02  
23:36:02  fastlane finished with errors
23:36:02  
23:36:02  Looking for related GitHub issues on fastlane/fastlane...
23:36:02  
23:36:02  bundler: failed to load command: fastlane (/Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/bin/fastlane)
23:36:02  /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/fastlane-2.217.0/fastlane_core/lib/fastlane_core/ui/interface.rb:153:in `shell_error!': [!] Exit status of command 'bundle exec danger --danger_id=Basic --dangerfile=fastlane/basic.Dangerfile' was 1 instead of 0. (FastlaneCore::Interface::FastlaneShellError)
23:36:02  bundler: failed to load command: danger (/Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/bin/danger)
23:36:02  /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-swiftlint-0.32.0/lib/danger_plugin.rb:68:in `lint_files':  (Danger::DSLError)
23:36:02  [!] Invalid `basic.Dangerfile` file: swiftlint is not installed
23:36:02   #  from fastlane/basic.Dangerfile:14
23:36:02   #  -------------------------------------------
23:36:02   #  
23:36:02   >  swiftlint.lint_files
23:36:02   #  
23:36:02   #  -------------------------------------------
23:36:02  
23:36:02  	from fastlane/basic.Dangerfile:14:in `eval_file'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/dangerfile.rb:311:in `eval'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/dangerfile.rb:311:in `eval_file'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/dangerfile.rb:204:in `block in parse'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/dangerfile.rb:201:in `instance_eval'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/dangerfile.rb:201:in `parse'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/dangerfile.rb:287:in `run'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/executor.rb:28:in `run'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/commands/runner.rb:73:in `run'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/claide-1.1.0/lib/claide/command.rb:334:in `run'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/bin/danger:5:in `<top (required)>'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/bin/danger:25:in `load'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/bin/danger:25:in `<top (required)>'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/cli/exec.rb:58:in `load'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/cli/exec.rb:58:in `kernel_load'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/cli/exec.rb:23:in `run'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/cli.rb:492:in `exec'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/vendor/thor/lib/thor/command.rb:28:in `run'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/vendor/thor/lib/thor.rb:527:in `dispatch'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/cli.rb:34:in `dispatch'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/vendor/thor/lib/thor/base.rb:584:in `start'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/cli.rb:28:in `start'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/exe/bundle:37:in `block in <top (required)>'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/friendly_errors.rb:117:in `with_friendly_errors'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/exe/bundle:29:in `<top (required)>'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/bin/bundle:25:in `load'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/bin/bundle:25:in `<main>'
23:36:02  /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-swiftlint-0.32.0/lib/danger_plugin.rb:68:in `lint_files': swiftlint is not installed (RuntimeError)
23:36:02  	from fastlane/basic.Dangerfile:14:in `eval_file'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/dangerfile.rb:311:in `eval'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/dangerfile.rb:311:in `eval_file'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/dangerfile.rb:204:in `block in parse'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/dangerfile.rb:201:in `instance_eval'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/dangerfile.rb:201:in `parse'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/dangerfile.rb:287:in `run'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/danger_core/executor.rb:28:in `run'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/lib/danger/commands/runner.rb:73:in `run'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/claide-1.1.0/lib/claide/command.rb:334:in `run'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/gems/danger-9.4.1/bin/danger:5:in `<top (required)>'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/bin/danger:25:in `load'
23:36:02  	from /Users/****/JenkinsWorkspace/workspace/ios-test-pr/vendor/bundle/ruby/3.2.0/bin/danger:25:in `<top (required)>'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/cli/exec.rb:58:in `load'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/cli/exec.rb:58:in `kernel_load'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/cli/exec.rb:23:in `run'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/cli.rb:492:in `exec'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/vendor/thor/lib/thor/command.rb:28:in `run'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/vendor/thor/lib/thor.rb:527:in `dispatch'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/cli.rb:34:in `dispatch'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/vendor/thor/lib/thor/base.rb:584:in `start'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/cli.rb:28:in `start'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/exe/bundle:37:in `block in <top (required)>'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/lib/bundler/friendly_errors.rb:117:in `with_friendly_errors'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/gems/bundler-2.4.22/exe/bundle:29:in `<top (required)>'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/bin/bundle:25:in `load'
23:36:02  	from /Users/****/.gem/ruby/3.2.2/bin/bundle:25:in `<main>'
@dirtyhabits97
Copy link
Collaborator

From the error you provided

23:36:02 [!] Invalid basic.Dangerfile file: swiftlint is not installed

It looks like you're hitting this error:

raise 'swiftlint is not installed' unless swiftlint.installed?

Also tested here:
it 'handles swiftlint not being installed' do
allow_any_instance_of(Swiftlint).to receive(:installed?).and_return(false)
expect { @swiftlint.lint_files }.to raise_error('swiftlint is not installed')
end

The program can't find the SwiftLint executable. Can you make sure swiftlint is installed in the jenkins node?

puts `which swiftlint`

You can add the above code before invoking the swiftlint plugin in your dangerfile.

@aiKrice
Copy link
Collaborator

aiKrice commented May 21, 2024

@ilkeyucel Did you fix your issue ? I will close it soon

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants