Skip to content
Merged
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
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -79,3 +79,9 @@
/node_modules
/libwebrtc
/args.txt


# Stream specifics
fastlane/vendor
fastlane/*.xml
out_ios_libs
14 changes: 14 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,20 @@

This repository is a fork of the WebRTC project. The original README can be found [here](README_webrtc.md).

### Fork Specifics

#### `.gitignore`

Due to the fork specifics, the repo's `.gitignore` has been updated to match the fork's requirements.

#### Building Tools

The fork contains a `fastlane` pipeline to produce builds for iOS. To access the pipeline you need to switch into `src/fastlane` and execute `bundle exec fastlane lanes` to see the available lanes.

##### Building for iOS

- Build the WebRTC library for iOS `bundle exec fastlane ios build`

### License
- [WebRTC](https://webrtc.org) software is licensed under the [BSD license](https://github.com/GetStream/webrtc/blob/main/LICENSE).
- Includes patches from [shiguredo-webrtc-build](https://github.com/shiguredo-webrtc-build), licensed under the [Apache 2.0](https://github.com/shiguredo-webrtc-build/webrtc-build/blob/master/LICENSE).
Expand Down
7 changes: 7 additions & 0 deletions fastlane/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@

FASTLANE_XCODEBUILD_SETTINGS_TIMEOUT=180
FASTLANE_XCODEBUILD_SETTINGS_RETRIES=10
FASTLANE_SKIP_ACTION_SUMMARY=true
FASTLANE_HIDE_PLUGINS_TABLE=true
FASTLANE_SKIP_UPDATE_CHECK=true
FASTLANE_HIDE_CHANGELOG=true
170 changes: 170 additions & 0 deletions fastlane/.rubocop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
---
require:
- rubocop/require_tools
- rubocop-performance
AllCops:
TargetRubyVersion: 2.4
NewCops: enable
Include:
- "**/*.rb"
- "**/*file"
Style/MultipleComparison:
Enabled: false
Style/PercentLiteralDelimiters:
Enabled: false
Style/ClassCheck:
EnforcedStyle: kind_of?
Style/FrozenStringLiteralComment:
Enabled: false
Style/SafeNavigation:
Enabled: false
Performance/RegexpMatch:
Enabled: false
Performance/StringReplacement:
Enabled: false
Style/NumericPredicate:
Enabled: false
Metrics/BlockLength:
Enabled: false
Metrics/ModuleLength:
Enabled: false
Naming/VariableNumber:
Enabled: false
Style/MissingRespondToMissing:
Enabled: false
Style/MultilineBlockChain:
Enabled: false
Style/NumericLiteralPrefix:
Enabled: false
Style/TernaryParentheses:
Enabled: false
Style/EmptyMethod:
Enabled: false
Lint/UselessAssignment:
Exclude:
- "**/spec/**/*"
Require/MissingRequireStatement:
Enabled: false
Layout/FirstHashElementIndentation:
Enabled: false
Layout/HashAlignment:
Enabled: false
Style/HashLikeCase:
Enabled: false
Layout/DotPosition:
Enabled: false
Style/DoubleNegation:
Enabled: false
Style/SymbolArray:
Enabled: false
Layout/HeredocIndentation:
Enabled: false
Style/MixinGrouping:
Exclude:
- "**/spec/**/*"
Lint/SuppressedException:
Enabled: false
Lint/UnusedBlockArgument:
Enabled: false
Lint/AmbiguousBlockAssociation:
Enabled: false
Style/GlobalVars:
Enabled: false
Style/ClassAndModuleChildren:
Enabled: false
Style/SpecialGlobalVars:
Enabled: false
Metrics/AbcSize:
Enabled: false
Metrics/MethodLength:
Enabled: false
Metrics/CyclomaticComplexity:
Enabled: false
Style/WordArray:
MinSize: 19
Style/SignalException:
Enabled: false
Style/RedundantReturn:
Enabled: false
Style/IfUnlessModifier:
Enabled: false
Style/AndOr:
Enabled: true
EnforcedStyle: conditionals
Metrics/ClassLength:
Max: 320
Layout/LineLength:
Max: 370
Metrics/ParameterLists:
Max: 17
Metrics/PerceivedComplexity:
Max: 20
Style/GuardClause:
Enabled: false
Style/StringLiterals:
Enabled: false
Style/ConditionalAssignment:
Enabled: false
Style/RedundantSelf:
Enabled: false
Lint/UnusedMethodArgument:
Enabled: false
Lint/ParenthesesAsGroupedExpression:
Exclude:
- "**/spec/**/*"
Naming/PredicateName:
Enabled: false
Style/PerlBackrefs:
Enabled: false
Naming/FileName:
Exclude:
- "**/Dangerfile"
- "**/Brewfile"
- "**/Gemfile"
- "**/Podfile"
- "**/Rakefile"
- "**/Fastfile"
- "**/Scanfile"
- "**/Matchfile"
- "**/Appfile"
- "**/Allurefile"
- "**/Sonarfile"
- "**/Deliverfile"
- "**/Snapfile"
- "**/Pluginfile"
- "**/*.gemspec"
Style/Documentation:
Enabled: false
Style/MutableConstant:
Enabled: false
Style/ZeroLengthPredicate:
Enabled: false
Style/IfInsideElse:
Enabled: false
Style/CollectionMethods:
Enabled: false
Style/MethodCallWithArgsParentheses:
Enabled: true
IgnoredMethods:
- require
- require_relative
- fastlane_require
- gem
- program
- command
- raise
- attr_accessor
- attr_reader
- desc
- lane
- private_lane
- platform
- to
- not_to
- describe
- it
- be
- context
- before
- after
- and
18 changes: 18 additions & 0 deletions fastlane/Fastfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
skip_docs
opt_out_usage

require 'json'
require 'net/http'
require 'fileutils'

import './lanes/utilities.rb'
import './lanes/gclient.rb'
import './lanes/ios.rb'

before_all do
if is_ci
setup_ci
setup_git_config
end
sh('bundle exec rubocop')
end
17 changes: 17 additions & 0 deletions fastlane/Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
source 'https://rubygems.org'

git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }

gem 'cocoapods'
gem 'fastlane'
gem 'json'
gem 'plist'
gem 'rubocop', '1.38', group: :rubocop_dependencies

group :rubocop_dependencies do
gem 'rubocop-performance'
gem 'rubocop-require_tools'
end

plugins_path = File.join(File.dirname(__FILE__), 'Pluginfile')
eval_gemfile(plugins_path) if File.exist?(plugins_path)
Loading