Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
149 changes: 80 additions & 69 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -1,149 +1,160 @@
require:
- rubocop-performance

#
# Disabled rules
#

Encoding:
## Layout
# Seems buggy - https://github.com/bbatsov/rubocop/issues/2690
Layout/MultilineOperationIndentation:
Enabled: false

NumericLiterals:
## Lint
# it wants File.exist? instead of File.exists?
Lint/DeprecatedClassMethods:
Enabled: false

MultilineTernaryOperator:
## Metrics
Metrics/AbcSize:
Enabled: false

ModuleLength:
# Unrealistic
Metrics/BlockNesting:
Enabled: false

MethodLength:
Metrics/ClassLength:
Enabled: false

ClassLength:
Metrics/CyclomaticComplexity:
Enabled: false

CyclomaticComplexity:
Metrics/MethodLength:
Enabled: false

# So just keep iterating instead of breaking? wtf.
Next:
Metrics/ModuleLength:
Enabled: false

# While this can be nice, it also can promote errors. Let people
# use what's comfortable for them
GuardClause:
# I don't know what it's metric for "human complexity" is, but it's wrong.
Metrics/PerceivedComplexity:
Enabled: false

AbcSize:
## Naming

# this trips on *any* method called 'get_*' wtf.
Naming/AccessorMethodName:
Enabled: false

# less readable, not more
IfUnlessModifier:
# This blows up on things like base_packages-redhat
Naming/FileName:
Enabled: false

# Really?
PerlBackrefs:
## Performance
# Performance rules have moved to the rubocop-performance gem.

# buggy: https://github.com/bbatsov/rubocop/issues/2639
Performance/RedundantMatch:
Enabled: false

# Unrealistic
BlockNesting:
# https://github.com/bbatsov/rubocop/issues/2676
Performance/RedundantMerge:
Enabled: false

# Disabled because of the way 'variables' works.
BracesAroundHashParameters:
# We'll .times.map all we want.
Performance/TimesMap:
Enabled: false

WordArray:
## Style

Style/CommentAnnotation:
Enabled: false

RedundantReturn:
# Bug with constants? https://phabricator.fb.com/P56108678
Style/ConditionalAssignment:
Enabled: false

RedundantSelf:
Style/Documentation:
Enabled: false

CommentAnnotation:
Style/Encoding:
Enabled: false

# this trips on *any* method called 'get_*' wtf.
AccessorMethodName:
# No more 'Missing frozen string literal comment.' linting violations
Style/FrozenStringLiteralComment:
Enabled: false

# backslash is extra dumb in ruby, we want the OPPOSITE of this rule
LineEndConcatenation:
# While this can be nice, it also can promote errors. Let people
# use what's comfortable for them
Style/GuardClause:
Enabled: false

# this isn't testing for consistency it always wants %w() which is dumb
PercentLiteralDelimiters:
# less readable, not more
Style/IfUnlessModifier:
Enabled: false

# it wants File.exist? instead of File.exists?
DeprecatedClassMethods:
# backslash is extra dumb in ruby, we want the OPPOSITE of this rule
Style/LineEndConcatenation:
Enabled: false

# This blows up on things like base_packages-redhat
FileName:
Style/MultilineTernaryOperator:
Enabled: false

# I don't know what it's metric for "human complexity" is, but it's wrong.
PerceivedComplexity:
# We don't use CAPS just for constants.
Style/MutableConstant:
Enabled: false

# Seems buggy - https://github.com/bbatsov/rubocop/issues/2690
MultilineOperationIndentation:
# So just keep iterating instead of breaking? wtf.
Style/Next:
Enabled: false

# buggy: https://github.com/bbatsov/rubocop/issues/2639
Performance/RedundantMatch:
Style/NumericLiterals:
Enabled: false

# We don't use CAPS just for constants.
Style/MutableConstant:
# this isn't testing for consistency it always wants %w() which is dumb
Style/PercentLiteralDelimiters:
Enabled: false

# We'll .times.map all we want.
Performance/TimesMap:
# Really?
Style/PerlBackrefs:
Enabled: false

# https://github.com/bbatsov/rubocop/issues/2676
Performance/RedundantMerge:
Style/RedundantReturn:
Enabled: false

# Bug with constants? https://phabricator.fb.com/P56108678
Style/ConditionalAssignment:
Style/RedundantSelf:
Enabled: false

# No more 'Missing frozen string literal comment.' linting violations
Style/FrozenStringLiteralComment:
Style/WordArray:
Enabled: false


#
# Modified rules
#
LineLength:
Max: 120

DotPosition:
Layout/DotPosition:
EnforcedStyle: trailing

HashSyntax:
Layout/FirstArrayElementIndentation:
EnforcedStyle: consistent

Layout/LineLength:
Max: 120

Metrics/BlockLength:
Max: 80

Style/HashSyntax:
EnforcedStyle: hash_rockets

Style/Documentation:
Enabled: false
Style/SignalException:
EnforcedStyle: semantic

TrailingCommaInArrayLiteral:
Style/TrailingCommaInArguments:
EnforcedStyleForMultiline: comma

TrailingCommaInHashLiteral:
Style/TrailingCommaInArrayLiteral:
EnforcedStyleForMultiline: comma

TrailingCommaInArguments:
Style/TrailingCommaInHashLiteral:
EnforcedStyleForMultiline: comma

Layout/IndentArray:
EnforcedStyle: consistent

Style/SignalException:
EnforcedStyle: semantic

Metrics/BlockLength:
Max: 80
21 changes: 13 additions & 8 deletions chef/cookbooks/cpe_zoom/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cpe_zoom Cookbook
========================
Install a profile to manage diagnostic information submission settings.
Manages Zoom Desktop Client configuration on macOS and Windows.


Attributes
Expand All @@ -9,18 +9,23 @@ Attributes

Usage
-----
The profile will manage the `us.zoom.config` preference domain.
On macOS, a profile will manage the `us.zoom.config` preference domain.

The profile's organization key defaults to `Uber` unless `node['organization']` is
The profile's organization key defaults to `Uber`, unless `node['organization']` is
configured in your company's custom init recipe. The profile will also use
whichever prefix is set in node['cpe_profiles']['prefix'], which defaults to `com.facebook.chef`

The profile delivers a payload for the above keys in `node['cpe_zoom']`. The three provided have a sane default, which can be overridden in another recipe if desired.
The profile delivers a payload for the above keys in `node['cpe_zoom']`. The three provided have a sensible default, which can be overridden in another recipe if desired.

This cookbook provides zero keys within the default attributes as there are many undocumented keys.
This cookbook doesn't provide any keys within the default attributes as there are many undocumented keys.

For a list of supported keys, please see this [Zoom knowledge base article](https://support.zoom.us/hc/en-us/articles/115001799006-Mass-Deployment-with-Preconfigured-Settings-for-Mac)
On Windows, take care not to deploy Zoom with MSI install arguments which conflict with the registry keys you set via this cookbook.

For example, you could tweak the above values
# Disable the ability for Zoom to turn on your webcam when joining a meeting.
For a list of supported configuration keys, please see the Zoom knowledge base articles for [macOS](https://support.zoom.us/hc/en-us/articles/115001799006-Mass-Deployment-with-Preconfigured-Settings-for-Mac) and [Windows](https://support.zoom.us/hc/en-us/articles/201362163).

Example
-----
```ruby
# Disable activating your webcam when joining meetings.
node.default['cpe_zoom']['ZDisableVideo'] = true
```
2 changes: 0 additions & 2 deletions chef/cookbooks/cpe_zoom/metadata.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,3 @@
chef_version '>= 14.14'

depends 'cpe_profiles'
depends 'cpe_utils'
depends 'uber_helpers'
Loading