foreman_remote_execution 3.0.3 → 3.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (126) hide show
  1. checksums.yaml +4 -4
  2. data/.eslintrc +5 -30
  3. data/.github/workflows/ci.yml +100 -0
  4. data/.gitignore +1 -0
  5. data/.rubocop.yml +80 -50
  6. data/.rubocop_todo.yml +116 -73
  7. data/Gemfile +4 -0
  8. data/app/controllers/api/v2/foreign_input_sets_controller.rb +3 -2
  9. data/app/controllers/api/v2/job_invocations_controller.rb +7 -6
  10. data/app/controllers/api/v2/job_templates_controller.rb +3 -2
  11. data/app/controllers/api/v2/remote_execution_features_controller.rb +3 -2
  12. data/app/controllers/api/v2/template_invocations_controller.rb +1 -1
  13. data/app/controllers/cockpit_controller.rb +1 -0
  14. data/app/controllers/concerns/foreman/controller/parameters/foreign_input_set.rb +1 -1
  15. data/app/controllers/concerns/foreman/controller/parameters/job_template.rb +4 -4
  16. data/app/controllers/job_invocations_controller.rb +10 -6
  17. data/app/controllers/job_templates_controller.rb +1 -1
  18. data/app/controllers/remote_execution_features_controller.rb +3 -2
  19. data/app/helpers/concerns/foreman_remote_execution/hosts_helper_extensions.rb +16 -5
  20. data/app/helpers/job_invocations_chart_helper.rb +13 -10
  21. data/app/helpers/job_invocations_helper.rb +18 -5
  22. data/app/helpers/remote_execution_helper.rb +49 -48
  23. data/app/lib/actions/remote_execution/run_host_job.rb +8 -8
  24. data/app/lib/actions/remote_execution/run_hosts_job.rb +2 -2
  25. data/app/lib/foreman_remote_execution/renderer/scope/input.rb +1 -0
  26. data/app/lib/proxy_api/remote_execution_ssh.rb +6 -0
  27. data/app/models/concerns/foreman_remote_execution/errors_flattener.rb +0 -2
  28. data/app/models/concerns/foreman_remote_execution/host_extensions.rb +3 -5
  29. data/app/models/concerns/foreman_remote_execution/nic_extensions.rb +1 -0
  30. data/app/models/concerns/foreman_remote_execution/orchestration/ssh.rb +63 -0
  31. data/app/models/concerns/foreman_remote_execution/smart_proxy_extensions.rb +5 -0
  32. data/app/models/foreign_input_set.rb +3 -2
  33. data/app/models/host_status/execution_status.rb +9 -1
  34. data/app/models/input_template_renderer.rb +1 -1
  35. data/app/models/job_invocation.rb +10 -12
  36. data/app/models/job_invocation_composer.rb +20 -14
  37. data/app/models/job_invocation_task_group.rb +1 -1
  38. data/app/models/job_template.rb +3 -3
  39. data/app/models/remote_execution_feature.rb +0 -2
  40. data/app/models/remote_execution_provider.rb +9 -2
  41. data/app/models/setting/remote_execution.rb +54 -56
  42. data/app/models/ssh_execution_provider.rb +2 -2
  43. data/app/models/targeting.rb +1 -0
  44. data/app/models/template_invocation.rb +2 -3
  45. data/app/services/default_proxy_proxy_selector.rb +18 -0
  46. data/app/views/api/v2/job_invocations/base.json.rabl +1 -1
  47. data/app/views/api/v2/job_invocations/main.json.rabl +5 -2
  48. data/app/views/job_invocations/_card_results.html.erb +1 -0
  49. data/app/views/job_invocations/_card_target_hosts.html.erb +12 -0
  50. data/app/views/job_invocations/_card_user_input.html.erb +1 -1
  51. data/app/views/job_invocations/_form.html.erb +3 -2
  52. data/app/views/job_invocations/_host_status_td.html.erb +1 -1
  53. data/app/views/job_invocations/_rerun_taxonomies.html.erb +22 -0
  54. data/app/views/job_invocations/_tab_overview.html.erb +1 -1
  55. data/app/views/job_invocations/_user_input.html.erb +1 -1
  56. data/app/views/job_invocations/show.html.erb +3 -1
  57. data/config/routes.rb +2 -1
  58. data/db/migrate/20151215114631_add_host_id_to_template_invocation.rb +1 -0
  59. data/db/migrate/20180110104432_rename_template_invocation_permission.rb +1 -0
  60. data/db/seeds.d/50-notification_blueprints.rb +4 -4
  61. data/db/seeds.d/70-job_templates.rb +1 -1
  62. data/db/seeds.d/90-bookmarks.rb +1 -0
  63. data/extra/cockpit/foreman-cockpit-session +7 -2
  64. data/foreman_remote_execution.gemspec +4 -5
  65. data/lib/foreman_remote_execution/engine.rb +20 -17
  66. data/lib/foreman_remote_execution/version.rb +1 -1
  67. data/locale/action_names.rb +3 -3
  68. data/locale/de/LC_MESSAGES/foreman_remote_execution.mo +0 -0
  69. data/locale/de/foreman_remote_execution.po +65 -16
  70. data/locale/en/foreman_remote_execution.po +63 -15
  71. data/locale/en_GB/LC_MESSAGES/foreman_remote_execution.mo +0 -0
  72. data/locale/en_GB/foreman_remote_execution.po +64 -15
  73. data/locale/es/LC_MESSAGES/foreman_remote_execution.mo +0 -0
  74. data/locale/es/foreman_remote_execution.po +66 -17
  75. data/locale/foreman_remote_execution.pot +193 -148
  76. data/locale/fr/LC_MESSAGES/foreman_remote_execution.mo +0 -0
  77. data/locale/fr/foreman_remote_execution.po +66 -17
  78. data/locale/ja/LC_MESSAGES/foreman_remote_execution.mo +0 -0
  79. data/locale/ja/foreman_remote_execution.po +66 -17
  80. data/locale/ko/LC_MESSAGES/foreman_remote_execution.mo +0 -0
  81. data/locale/ko/foreman_remote_execution.po +65 -15
  82. data/locale/pt_BR/LC_MESSAGES/foreman_remote_execution.mo +0 -0
  83. data/locale/pt_BR/foreman_remote_execution.po +66 -17
  84. data/locale/ru/LC_MESSAGES/foreman_remote_execution.mo +0 -0
  85. data/locale/ru/foreman_remote_execution.po +65 -18
  86. data/locale/zh_CN/LC_MESSAGES/foreman_remote_execution.mo +0 -0
  87. data/locale/zh_CN/foreman_remote_execution.po +66 -17
  88. data/locale/zh_TW/LC_MESSAGES/foreman_remote_execution.mo +0 -0
  89. data/locale/zh_TW/foreman_remote_execution.po +65 -16
  90. data/package.json +16 -33
  91. data/test/benchmark/run_hosts_job_benchmark.rb +1 -1
  92. data/test/factories/foreman_remote_execution_factories.rb +1 -1
  93. data/test/functional/api/v2/job_invocations_controller_test.rb +9 -9
  94. data/test/functional/api/v2/job_templates_controller_test.rb +1 -1
  95. data/test/functional/api/v2/remote_execution_features_controller_test.rb +2 -2
  96. data/test/functional/api/v2/template_invocations_controller_test.rb +4 -4
  97. data/test/functional/job_invocations_controller_test.rb +23 -11
  98. data/test/functional/job_templates_controller_test.rb +1 -1
  99. data/test/models/orchestration/ssh_test.rb +56 -0
  100. data/test/unit/actions/run_hosts_job_test.rb +8 -8
  101. data/test/unit/concerns/foreman_tasks_cleaner_extensions_test.rb +3 -3
  102. data/test/unit/concerns/host_extensions_test.rb +19 -19
  103. data/test/unit/concerns/nic_extensions_test.rb +1 -1
  104. data/test/unit/execution_task_status_mapper_test.rb +10 -10
  105. data/test/unit/input_template_renderer_test.rb +77 -77
  106. data/test/unit/job_invocation_composer_test.rb +100 -96
  107. data/test/unit/job_invocation_test.rb +29 -29
  108. data/test/unit/job_template_effective_user_test.rb +3 -3
  109. data/test/unit/job_template_test.rb +31 -31
  110. data/test/unit/remote_execution_feature_test.rb +19 -19
  111. data/test/unit/remote_execution_provider_test.rb +33 -30
  112. data/test/unit/renderer_scope_input.rb +6 -6
  113. data/test/unit/targeting_test.rb +6 -6
  114. data/test/unit/template_invocation_input_value_test.rb +3 -3
  115. data/webpack/index.js +1 -17
  116. data/webpack/react_app/components/jobInvocations/AggregateStatus/index.js +10 -0
  117. data/webpack/react_app/components/jobInvocations/AggregateStatus/index.test.js +6 -3
  118. data/webpack/react_app/components/jobInvocations/index.js +19 -7
  119. data/webpack/react_app/redux/actions/jobInvocations/index.js +12 -8
  120. data/webpack/react_app/redux/consts.js +1 -2
  121. data/webpack/react_app/redux/reducers/jobInvocations/index.fixtures.js +8 -40
  122. data/webpack/react_app/redux/reducers/jobInvocations/index.test.js +17 -11
  123. data/webpack/test_setup.js +2 -1
  124. metadata +10 -6
  125. data/.hound.yml +0 -18
  126. data/.travis.yml +0 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2777d0423d3991a7905e82695c6a1b5e4726e831d9ccb1afcb2b096e04ab2526
4
- data.tar.gz: 8c460357a1f5e5f502472fdf84b61a86da8aeef2a13f78d3cd6cc3adb8a9c4ca
3
+ metadata.gz: b85a9cedafe92aa9f2183d1dd5569baa99bd15005b43c26e2ae22ac064b810ee
4
+ data.tar.gz: ffa0a77c6d12ff977e897933ce9d74072cf5e57495cfbef55a933d1d5f802fd3
5
5
  SHA512:
6
- metadata.gz: 952dbb1462ba0a4ab9937737555259d37c0eaad0ec9d3cbb3876cf5cbd0d7c3e7c4f58dc734bc4e54f1c8c1d8e0159c96477846037ed94bc6c3586ccd9a51e69
7
- data.tar.gz: 16244d22bd7111fe1682b4d2e6bb5b62b791a9f69eb24e37456104253a675fd681a0cbf77eaa2efaa3a0b4ccb33828787a9a1dc1513665e8abb9f026c107084c
6
+ metadata.gz: d2b5947c13f9831c4312f9ab0af739fb8357cc6f31dbf621021267d906dabd013087a1880a319ea65b59957b91550324fa350ff05789924bbf9aebf61c982693
7
+ data.tar.gz: 28e4246d181f3f772e929c8fbc0626cbe4dcceff5de718d8d8da0e87b9fc8363a0b16841868f5a0f0e3b2cc9b785c8c072bfda90f059edd24a993927f06bf0c8
data/.eslintrc CHANGED
@@ -1,32 +1,7 @@
1
1
  {
2
- "root": true,
3
- "extends": ["airbnb-base", "./node_modules/@theforeman/vendor-dev/eslint.extends.js"],
4
- "plugins": [
5
- "react"
6
- ],
7
- "env": {
8
- "browser": true,
9
- "es6": true,
10
- "node": true,
11
- "jasmine": true,
12
- "jest": true
13
- },
14
- "parser": "babel-eslint",
15
- "rules": {
16
- "react/jsx-uses-vars": "error",
17
- "react/jsx-uses-react": "error",
18
- "no-unused-vars": [
19
- "error",
20
- {
21
- "vars": "all",
22
- "args": "none"
23
- }
24
- ],
25
- "no-underscore-dangle": "off",
26
- "no-use-before-define": "off",
27
- "import/prefer-default-export": "off",
28
- // Import rules off for now due to HoundCI issue
29
- "import/no-unresolved": "off",
30
- "import/extensions": "off"
31
- }
2
+ "plugins": ["@theforeman/foreman"],
3
+ "extends": [
4
+ "plugin:@theforeman/foreman/core",
5
+ "plugin:@theforeman/foreman/plugins"
6
+ ]
32
7
  }
@@ -0,0 +1,100 @@
1
+ name: CI
2
+ on: [pull_request]
3
+ env:
4
+ RAILS_ENV: test
5
+ DATABASE_URL: postgresql://postgres:@localhost/test
6
+ DATABASE_CLEANER_ALLOW_REMOTE_DATABASE_URL: true
7
+ jobs:
8
+ rubocop:
9
+ runs-on: ubuntu-latest
10
+ steps:
11
+ - uses: actions/checkout@v2
12
+ - name: Setup Ruby
13
+ uses: ruby/setup-ruby@v1
14
+ with:
15
+ ruby-version: 2.6
16
+ - name: Setup
17
+ run: |
18
+ gem install bundler
19
+ bundle install --jobs=3 --retry=3
20
+ - name: Run rubocop
21
+ run: bundle exec rubocop
22
+ test_ruby:
23
+ runs-on: ubuntu-latest
24
+ needs: rubocop
25
+ services:
26
+ postgres:
27
+ image: postgres:12.1
28
+ ports: ['5432:5432']
29
+ options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
30
+ strategy:
31
+ fail-fast: false
32
+ matrix:
33
+ foreman-core-branch: [2.1-stable, develop]
34
+ ruby-version: [2.5, 2.6]
35
+ node-version: [12]
36
+ steps:
37
+ - run: sudo apt-get install build-essential libcurl4-openssl-dev zlib1g-dev libpq-dev
38
+ - uses: actions/checkout@v2
39
+ with:
40
+ repository: theforeman/foreman
41
+ ref: ${{ matrix.foreman-core-branch }}
42
+ - uses: actions/checkout@v2
43
+ with:
44
+ path: foreman_remote_execution
45
+ - name: Setup Ruby
46
+ uses: ruby/setup-ruby@v1
47
+ with:
48
+ ruby-version: ${{ matrix.ruby-version }}
49
+ - name: Setup Node
50
+ uses: actions/setup-node@v1
51
+ with:
52
+ node-version: ${{ matrix.node-version }}
53
+ - uses: actions/cache@v1
54
+ with:
55
+ path: vendor/bundle
56
+ key: ${{ runner.os }}-fgems-${{ matrix.ruby-version }}-${{ hashFiles('Gemfile.lock') }}
57
+ restore-keys: |
58
+ ${{ runner.os }}-fgems-${{ matrix.ruby-version }}-
59
+ - name: Setup Bundler
60
+ run: |
61
+ echo "gem 'foreman_remote_execution', path: './foreman_remote_execution'" > bundler.d/foreman_remote_execution.local.rb
62
+ gem install bundler
63
+ bundle config set without journald development console libvirt
64
+ bundle config set path vendor/bundle
65
+ - name: Prepare test env
66
+ run: |
67
+ bundle install --jobs=3 --retry=3
68
+ bundle exec rake db:create
69
+ bundle exec rake db:migrate
70
+ - name: Run plugin tests
71
+ run: |
72
+ bundle exec rake test:foreman_remote_execution
73
+ bundle exec rake test TEST="test/unit/foreman/access_permissions_test.rb"
74
+ test_js:
75
+ runs-on: ubuntu-latest
76
+ needs: rubocop
77
+ strategy:
78
+ fail-fast: false
79
+ matrix:
80
+ ruby-version: [2.6]
81
+ node-version: [10, 12]
82
+ steps:
83
+ - uses: actions/checkout@v2
84
+ - name: Setup Ruby
85
+ uses: ruby/setup-ruby@v1
86
+ with:
87
+ ruby-version: ${{ matrix.ruby-version }}
88
+ - name: Setup Node
89
+ uses: actions/setup-node@v1
90
+ with:
91
+ node-version: ${{ matrix.node-version }}
92
+ - name: Nmp install
93
+ run: |
94
+ npm install
95
+ - name: Run plugin linter
96
+ run: |
97
+ npm run lint
98
+ - name: Run plugin tests
99
+ run: |
100
+ npm run test
data/.gitignore CHANGED
@@ -14,3 +14,4 @@ locale/*/*.po.time_stamp
14
14
  Gemfile.lock
15
15
  node_modules/
16
16
  package-lock.json
17
+ coverage/
@@ -1,111 +1,141 @@
1
- inherit_from:
2
- - .rubocop_todo.yml
1
+ require:
2
+ - rubocop-minitest
3
+ - rubocop-performance
4
+ - rubocop-rails
5
+
6
+ inherit_from: .rubocop_todo.yml
3
7
 
4
8
  AllCops:
9
+ TargetRubyVersion: 2.5
10
+ TargetRailsVersion: 5.2
5
11
  Exclude:
6
- - 'config/routes.rb'
7
- - 'node_modules/**'
8
- - 'test/**/*'
9
- - 'doc/plugins/**'
12
+ - 'node_modules/**/*'
10
13
 
11
- Rails:
12
- Enabled: true
13
- Exclude:
14
- - 'lib/foreman_remote_execution_core/**'
15
- - 'node_modules/**'
14
+ Bundler/OrderedGems:
15
+ Enabled: false
16
16
 
17
- Rails/Date:
17
+ Layout/ArgumentAlignment:
18
+ EnforcedStyle: with_fixed_indentation
19
+ IndentationWidth: 2
20
+
21
+ Layout/DotPosition:
18
22
  Enabled: false
19
23
 
20
- Metrics:
24
+ Layout/FirstArgumentIndentation:
25
+ EnforcedStyle: consistent
26
+
27
+ Layout/HashAlignment:
21
28
  Enabled: false
22
29
 
23
- Style/Documentation:
30
+ Layout/LineLength:
24
31
  Enabled: false
25
32
 
26
- Style/TrailingCommaInArrayLiteral:
33
+ Layout/ParameterAlignment:
27
34
  Enabled: false
28
35
 
29
- Style/TrailingCommaInHashLiteral:
36
+ Lint/BooleanSymbol:
30
37
  Enabled: false
31
38
 
32
- #Style/TrailingCommaInArguments:
33
- #Enabled: false
39
+ Metrics:
40
+ Enabled: false
34
41
 
35
- Naming/AccessorMethodName:
42
+ Performance/Casecmp:
36
43
  Enabled: false
37
44
 
38
- Style/RedundantSelf:
45
+ Performance/RedundantMatch:
46
+ Enabled: true
47
+
48
+ Performance/RedundantMerge:
49
+ Enabled: true
50
+
51
+ Performance/RegexpMatch:
39
52
  Enabled: false
40
53
 
41
- Naming/FileName:
54
+ Rails:
42
55
  Exclude:
43
- - 'db/seeds.d/*'
44
- - 'node_modules/font-awesome-sass/lib/font-awesome-sass.rb'
56
+ - 'lib/foreman_remote_execution_core/**/*'
57
+ - 'lib/foreman_remote_execution_core.rb'
45
58
 
46
- Style/WordArray:
47
- Enabled: false
59
+ Rails/Blank:
60
+ UnlessPresent: false
48
61
 
49
- Style/BracesAroundHashParameters:
62
+ # Won't work with sqlite
63
+ Rails/BulkChangeTable:
50
64
  Enabled: false
51
65
 
52
- Style/RescueModifier:
66
+ Rails/RefuteMethods:
53
67
  Enabled: false
54
68
 
55
- Style/ClassAndModuleChildren:
56
- Enabled: false
69
+ Style/Alias:
70
+ EnforcedStyle: prefer_alias_method
71
+
72
+ Style/AndOr:
73
+ EnforcedStyle: conditionals
57
74
 
58
- Style/EachWithObject:
75
+ # Don't prefer is_a? over kind_of?
76
+ Style/ClassCheck:
59
77
  Enabled: false
60
78
 
61
- Style/GuardClause:
79
+ # Don't enforce certain methods, e.g. detect over find
80
+ Style/CollectionMethods:
62
81
  Enabled: false
63
82
 
64
- Naming/VariableNumber:
83
+ Style/ConditionalAssignment:
65
84
  Enabled: false
66
85
 
67
- # a == 0 is not the same as a.zero?, when a is not a number
68
- Style/NumericPredicate:
86
+ # Don't enforce documentation
87
+ Style/Documentation:
69
88
  Enabled: false
70
89
 
71
- Style/FormatStringToken:
72
- EnforcedStyle: template
90
+ Style/EmptyMethod:
91
+ EnforcedStyle: expanded
73
92
 
74
- Rails/SkipsModelValidations:
93
+ # Don't enforce frozen string literals
94
+ Style/FrozenStringLiteralComment:
75
95
  Enabled: false
76
96
 
77
- Style/SymbolArray:
97
+ # Support both, Ruby 1.9 hashmap and hash-rocket syntax
98
+ Style/HashSyntax:
78
99
  Enabled: false
79
100
 
80
- Style/FormatString:
101
+ Style/IfUnlessModifier:
81
102
  Enabled: false
82
103
 
83
- Naming/HeredocDelimiterNaming:
104
+ Style/InverseMethods:
84
105
  Enabled: false
85
106
 
86
- Style/RescueStandardError:
107
+ # disabled until we can configure "+" as concat sign
108
+ Style/LineEndConcatenation:
87
109
  Enabled: false
88
110
 
89
- Style/SafeNavigation:
111
+ Style/MultipleComparison:
90
112
  Enabled: false
91
113
 
92
- Lint/BooleanSymbol:
114
+ Style/NumericPredicate:
93
115
  Enabled: false
94
116
 
95
- Style/FrozenStringLiteralComment:
117
+ Style/ParallelAssignment:
96
118
  Enabled: false
97
119
 
98
- Layout/EmptyLineAfterGuardClause:
120
+ Style/ParenthesesAroundCondition:
99
121
  Enabled: false
100
122
 
101
- Layout/AlignHash:
123
+ Style/PreferredHashMethods:
102
124
  Enabled: false
103
125
 
104
- Rails/ReflectionClassName:
126
+ # Both double and single quotes are OK
127
+ Style/StringLiterals:
105
128
  Enabled: false
106
129
 
107
- Rails/HelperInstanceVariable:
108
- Enabled: false
130
+ Style/TernaryParentheses:
131
+ EnforcedStyle: require_parentheses_when_complex
132
+
133
+ Style/TrailingCommaInArrayLiteral:
134
+ EnforcedStyleForMultiline: comma
135
+
136
+ Style/TrailingCommaInHashLiteral:
137
+ EnforcedStyleForMultiline: comma
109
138
 
110
- Naming/RescuedExceptionsVariableName:
139
+ #Allow both ['a', 'b'], %w[a b] and %w(a b) style arrays
140
+ Style/WordArray:
111
141
  Enabled: false
@@ -1,31 +1,34 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config --exclude-limit 0`
3
- # on 2018-04-02 18:24:49 +0200 using RuboCop version 0.54.0.
3
+ # on 2020-03-14 13:43:47 +0100 using RuboCop version 0.80.1.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
7
7
  # versions of RuboCop, may require this file to be generated again.
8
8
 
9
+ Minitest/GlobalExpectations:
10
+ Enabled: false
11
+
9
12
  # Offense count: 2
10
13
  # Cop supports --auto-correct.
11
- # Configuration parameters: Include, TreatCommentsAsGroupSeparators.
14
+ # Configuration parameters: TreatCommentsAsGroupSeparators, Include.
12
15
  # Include: **/*.gemspec
13
16
  Gemspec/OrderedDependencies:
14
17
  Enabled: false
15
18
 
16
- # Offense count: 17
19
+ # Offense count: 14
17
20
  # Cop supports --auto-correct.
18
21
  # Configuration parameters: EnforcedStyle, IndentOneStep, IndentationWidth.
19
22
  # SupportedStyles: case, end
20
23
  Layout/CaseIndentation:
21
24
  Enabled: false
22
25
 
23
- # Offense count: 6
26
+ # Offense count: 4
24
27
  # Cop supports --auto-correct.
25
28
  Layout/EmptyLines:
26
29
  Enabled: false
27
30
 
28
- # Offense count: 7
31
+ # Offense count: 6
29
32
  # Cop supports --auto-correct.
30
33
  # Configuration parameters: EnforcedStyle.
31
34
  # SupportedStyles: empty_lines, no_empty_lines
@@ -39,38 +42,39 @@ Layout/EmptyLinesAroundBlockBody:
39
42
  Layout/EmptyLinesAroundClassBody:
40
43
  Enabled: false
41
44
 
42
- # Offense count: 3
45
+ # Offense count: 4
43
46
  # Cop supports --auto-correct.
44
47
  # Configuration parameters: EnforcedStyle.
45
48
  # SupportedStyles: empty_lines, empty_lines_except_namespace, empty_lines_special, no_empty_lines
46
49
  Layout/EmptyLinesAroundModuleBody:
47
50
  Enabled: false
48
51
 
49
- # Offense count: 1
52
+ # Offense count: 6
50
53
  # Cop supports --auto-correct.
51
54
  # Configuration parameters: Width, IgnoredPatterns.
52
55
  Layout/IndentationWidth:
53
56
  Enabled: false
54
57
 
55
- # Offense count: 8
58
+ # Offense count: 9
56
59
  # Cop supports --auto-correct.
57
60
  # Configuration parameters: EnforcedStyle, IndentationWidth.
58
61
  # SupportedStyles: aligned, indented
59
62
  Layout/MultilineOperationIndentation:
60
63
  Enabled: false
61
64
 
62
- # Offense count: 1
65
+ # Offense count: 5
63
66
  # Cop supports --auto-correct.
64
67
  Layout/SpaceAfterComma:
65
68
  Enabled: false
66
69
 
67
- # Offense count: 4
70
+ # Offense count: 28
68
71
  # Cop supports --auto-correct.
69
- # Configuration parameters: AllowForAlignment.
72
+ # Configuration parameters: AllowForAlignment, EnforcedStyleForExponentOperator.
73
+ # SupportedStylesForExponentOperator: space, no_space
70
74
  Layout/SpaceAroundOperators:
71
75
  Enabled: false
72
76
 
73
- # Offense count: 46
77
+ # Offense count: 54
74
78
  # Cop supports --auto-correct.
75
79
  # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBrackets.
76
80
  # SupportedStyles: space, no_space, compact
@@ -78,7 +82,7 @@ Layout/SpaceAroundOperators:
78
82
  Layout/SpaceInsideArrayLiteralBrackets:
79
83
  Enabled: false
80
84
 
81
- # Offense count: 85
85
+ # Offense count: 95
82
86
  # Cop supports --auto-correct.
83
87
  # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces.
84
88
  # SupportedStyles: space, no_space, compact
@@ -86,60 +90,54 @@ Layout/SpaceInsideArrayLiteralBrackets:
86
90
  Layout/SpaceInsideHashLiteralBraces:
87
91
  Enabled: false
88
92
 
89
- # Offense count: 5
90
- # Configuration parameters: MaximumRangeSize.
91
- Lint/MissingCopEnableDirective:
92
- Enabled: false
93
-
94
- # Offense count: 1
95
- # Cop supports --auto-correct.
96
- Lint/UnneededCopDisableDirective:
97
- Enabled: false
98
-
99
- # Offense count: 1
100
- # Cop supports --auto-correct.
101
- Lint/UnneededCopEnableDirective:
102
- Enabled: false
103
-
104
93
  # Offense count: 10
105
94
  # Cop supports --auto-correct.
106
95
  # Configuration parameters: IgnoreEmptyBlocks, AllowUnusedKeywordArguments.
107
96
  Lint/UnusedBlockArgument:
108
97
  Enabled: false
109
98
 
110
- # Offense count: 14
99
+ # Offense count: 15
111
100
  # Cop supports --auto-correct.
112
101
  # Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods.
113
102
  Lint/UnusedMethodArgument:
114
103
  Enabled: false
115
104
 
116
- # Offense count: 1
105
+ # Offense count: 4
117
106
  Lint/UselessAssignment:
118
107
  Enabled: false
119
108
 
120
- # Offense count: 5
121
- Metrics/CyclomaticComplexity:
122
- Max: 8
109
+ # Offense count: 1
110
+ Naming/AccessorMethodName:
111
+ Enabled: false
123
112
 
124
- # Offense count: 940
125
- # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
126
- # URISchemes: http, https
127
- Metrics/LineLength:
128
- Max: 204
113
+ # Offense count: 5
114
+ # Configuration parameters: ExpectMatchingDefinition, Regex, IgnoreExecutableScripts, AllowedAcronyms.
115
+ # AllowedAcronyms: CLI, DSL, ACL, API, ASCII, CPU, CSS, DNS, EOF, GUID, HTML, HTTP, HTTPS, ID, IP, JSON, LHS, QPS, RAM, RHS, RPC, SLA, SMTP, SQL, SSH, TCP, TLS, TTL, UDP, UI, UID, UUID, URI, URL, UTF8, VM, XML, XMPP, XSRF, XSS
116
+ Naming/FileName:
117
+ Enabled: false
129
118
 
130
- # Offense count: 2
131
- Naming/MemoizedInstanceVariableName:
119
+ # Offense count: 1
120
+ # Configuration parameters: ForbiddenDelimiters.
121
+ # ForbiddenDelimiters: (?-mix:(^|\s)(EO[A-Z]{1}|END)(\s|$))
122
+ Naming/HeredocDelimiterNaming:
132
123
  Enabled: false
133
124
 
134
- # Offense count: 3
125
+ # Offense count: 2
135
126
  # Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
136
- # AllowedNames: io, id, to
137
- Naming/UncommunicativeMethodParamName:
127
+ # AllowedNames: io, id, to, by, on, in, at, ip, db, os, pp
128
+ Naming/MethodParameterName:
138
129
  Enabled: false
139
130
 
140
- # Offense count: 15
131
+ # Offense count: 1
141
132
  # Cop supports --auto-correct.
142
- Rails/ActiveRecordAliases:
133
+ # Configuration parameters: PreferredName.
134
+ Naming/RescuedExceptionsVariableName:
135
+ Enabled: false
136
+
137
+ # Offense count: 1
138
+ # Configuration parameters: EnforcedStyle.
139
+ # SupportedStyles: snake_case, normalcase, non_integer
140
+ Naming/VariableNumber:
143
141
  Enabled: false
144
142
 
145
143
  # Offense count: 7
@@ -149,13 +147,18 @@ Rails/CreateTableWithTimestamps:
149
147
  Enabled: false
150
148
 
151
149
  # Offense count: 1
152
- # Cop supports --auto-correct.
153
150
  # Configuration parameters: EnforcedStyle.
154
- # SupportedStyles: numeric, symbolic
155
- Rails/HttpStatus:
151
+ # SupportedStyles: strict, flexible
152
+ Rails/Date:
156
153
  Enabled: false
157
154
 
158
- # Offense count: 23
155
+ # Offense count: 13
156
+ # Configuration parameters: Include.
157
+ # Include: app/helpers/**/*.rb
158
+ Rails/HelperInstanceVariable:
159
+ Enabled: false
160
+
161
+ # Offense count: 13
159
162
  # Configuration parameters: Include.
160
163
  # Include: app/models/**/*.rb
161
164
  Rails/InverseOf:
@@ -168,17 +171,36 @@ Rails/LexicallyScopedActionFilter:
168
171
  Enabled: false
169
172
 
170
173
  # Offense count: 1
171
- # Cop supports --auto-correct.
172
- Rails/Presence:
174
+ # Configuration parameters: Include.
175
+ # Include: **/Rakefile, **/*.rake
176
+ Rails/RakeEnvironment:
173
177
  Enabled: false
174
178
 
175
- # Offense count: 3
179
+ # Offense count: 1
180
+ Rails/ReflectionClassName:
181
+ Enabled: false
182
+
183
+ # Offense count: 21
184
+ # Configuration parameters: Blacklist, Whitelist.
185
+ # Blacklist: decrement!, decrement_counter, increment!, increment_counter, toggle!, touch, update_all, update_attribute, update_column, update_columns, update_counters
186
+ Rails/SkipsModelValidations:
187
+ Enabled: false
188
+
189
+ # Offense count: 6
190
+ # Cop supports --auto-correct.
176
191
  # Configuration parameters: EnforcedStyle.
177
192
  # SupportedStyles: strict, flexible
178
193
  Rails/TimeZone:
179
194
  Enabled: false
180
195
 
181
- # Offense count: 3
196
+ # Offense count: 7
197
+ # Cop supports --auto-correct.
198
+ # Configuration parameters: AutoCorrect, EnforcedStyle.
199
+ # SupportedStyles: nested, compact
200
+ Style/ClassAndModuleChildren:
201
+ Enabled: false
202
+
203
+ # Offense count: 2
182
204
  # Cop supports --auto-correct.
183
205
  # Configuration parameters: Keywords.
184
206
  # Keywords: TODO, FIXME, OPTIMIZE, HACK, REVIEW
@@ -194,35 +216,39 @@ Style/DoubleNegation:
194
216
  Style/Encoding:
195
217
  Enabled: false
196
218
 
197
- # Offense count: 7
219
+ # Offense count: 8
198
220
  # Cop supports --auto-correct.
199
221
  Style/ExpandPathArguments:
200
222
  Enabled: false
201
223
 
202
- # Offense count: 15
224
+ # Offense count: 12
225
+ # Cop supports --auto-correct.
226
+ # Configuration parameters: EnforcedStyle.
227
+ # SupportedStyles: format, sprintf, percent
228
+ Style/FormatString:
229
+ Enabled: false
230
+
231
+ # Offense count: 62
203
232
  # Configuration parameters: EnforcedStyle.
204
233
  # SupportedStyles: annotated, template, unannotated
205
234
  Style/FormatStringToken:
206
235
  Enabled: false
207
236
 
208
- # Offense count: 1527
209
- # Cop supports --auto-correct.
210
- # Configuration parameters: EnforcedStyle, UseHashRocketsWithSymbolValues, PreferHashRocketsForNonAlnumEndingSymbols.
211
- # SupportedStyles: ruby19, hash_rockets, no_mixed_keys, ruby19_no_mixed_keys
212
- Style/HashSyntax:
237
+ # Offense count: 21
238
+ # Configuration parameters: MinBodyLength.
239
+ Style/GuardClause:
213
240
  Enabled: false
214
241
 
215
- # Offense count: 17
216
- # Cop supports --auto-correct.
217
- Style/IfUnlessModifier:
242
+ Style/HashEachMethods:
218
243
  Enabled: false
219
244
 
220
- # Offense count: 12
221
- # Cop supports --auto-correct.
222
- Style/LineEndConcatenation:
245
+ Style/HashTransformKeys:
223
246
  Enabled: false
224
247
 
225
- # Offense count: 22
248
+ Style/HashTransformValues:
249
+ Enabled: false
250
+
251
+ # Offense count: 26
226
252
  # Cop supports --auto-correct.
227
253
  # Configuration parameters: PreferredDelimiters.
228
254
  Style/PercentLiteralDelimiters:
@@ -235,20 +261,37 @@ Style/PercentLiteralDelimiters:
235
261
  Style/RaiseArgs:
236
262
  Enabled: false
237
263
 
238
- # Offense count: 14
264
+ # Offense count: 15
239
265
  # Cop supports --auto-correct.
240
266
  # Configuration parameters: AllowMultipleReturnValues.
241
267
  Style/RedundantReturn:
242
268
  Enabled: false
243
269
 
244
- # Offense count: 5
270
+ # Offense count: 76
245
271
  # Cop supports --auto-correct.
246
- # Configuration parameters: EnforcedStyle, ConsistentQuotesInMultiline.
247
- # SupportedStyles: single_quotes, double_quotes
248
- Style/StringLiterals:
272
+ Style/RedundantSelf:
249
273
  Enabled: false
250
274
 
251
- # Offense count: 2
275
+ # Offense count: 3
276
+ # Cop supports --auto-correct.
277
+ Style/RescueModifier:
278
+ Enabled: false
279
+
280
+ # Offense count: 11
281
+ # Cop supports --auto-correct.
282
+ # Configuration parameters: EnforcedStyle.
283
+ # SupportedStyles: implicit, explicit
284
+ Style/RescueStandardError:
285
+ Enabled: false
286
+
287
+ # Offense count: 37
288
+ # Cop supports --auto-correct.
289
+ # Configuration parameters: MinSize.
290
+ # SupportedStyles: percent, brackets
291
+ Style/SymbolArray:
292
+ EnforcedStyle: brackets
293
+
294
+ # Offense count: 3
252
295
  # Cop supports --auto-correct.
253
296
  # Configuration parameters: IgnoredMethods.
254
297
  # IgnoredMethods: respond_to, define_method