From 322a79b394605221e5f83455a9561a9bc5721bfb Mon Sep 17 00:00:00 2001 From: Pritesh Nandgaonkar Date: Thu, 19 Jul 2018 04:17:22 -0700 Subject: [PATCH] Scripts for podspec updation and github tag release Summary: This diff adds the support to automate iOS releases. This diff adds two scripts, one for updating all the `podspecs`, and `podfiles` with updated version number. The script also updates the version used in sample and getting started doc file. The second script publishes a github tag. Following will be the process for iOS release:- 1. From `fbobjc/Libraries/SonarKit/Scripts` run `sh public-ios-podspec-update.sh`, it will update all the podspecs, podfiles and docs with updated version number. Commit it and land this 2. Once the above changes are landed and synced to github, run `sh push-new-github-tag.sh` from `fbobjc/Libraries/SonarKit/Scripts` to push the tag on github As a follow up on this diff, ideally, we should trigger second script automatically when the 1st task changes are synced to github. Reviewed By: jknoxville Differential Revision: D8879958 fbshipit-source-id: 8f0dc9200e8f64578af33e1446629f09c16c43f2 --- docs/getting-started.md | 3 ++- iOS/Sample/Podfile | 4 ++-- iOS/SonarKit.podspec | 6 +++--- xplat/Sonar/Sonar.podspec | 5 +++-- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/docs/getting-started.md b/docs/getting-started.md index 49efc095a..63b65088c 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -71,10 +71,11 @@ source 'https://github.com/facebook/Sonar.git' source 'https://github.com/CocoaPods/Specs' # Uncomment the next line to define a global platform for your project swift_version = "4.1" +sonarkit_version = '0.6.12' target 'MyApp' do - pod 'SonarKit', '~>0.6' + pod 'SonarKit', '~>'+sonarkit_version post_install do |installer| installer.pods_project.targets.each do |target| diff --git a/iOS/Sample/Podfile b/iOS/Sample/Podfile index 98e374d2c..6da52bbae 100644 --- a/iOS/Sample/Podfile +++ b/iOS/Sample/Podfile @@ -3,11 +3,11 @@ source 'https://github.com/facebook/Sonar.git' source 'https://github.com/CocoaPods/Specs' # Uncomment the next line to define a global platform for your project swift_version = "4.1" - +sonarkit_version = '0.6.12' target 'Sample' do - pod 'SonarKit', '~>0.6' + pod 'SonarKit', '~>'+sonarkit_version post_install do |installer| installer.pods_project.targets.each do |target| diff --git a/iOS/SonarKit.podspec b/iOS/SonarKit.podspec index 97d3587d4..0a820bb65 100644 --- a/iOS/SonarKit.podspec +++ b/iOS/SonarKit.podspec @@ -1,7 +1,7 @@ folly_compiler_flags = '-DFB_SONARKIT_ENABLED=1 -DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_LIBGFLAGS=0 -DFOLLY_HAVE_LIBJEMALLOC=0 -DFOLLY_HAVE_PREADV=0 -DFOLLY_HAVE_PWRITEV=0 -DFOLLY_HAVE_TFO=0 -DFOLLY_USE_SYMBOLIZER=0' yoga_version = '~> 1.9' yogakit_version = '~>1.8' - +sonarkit_version = '0.6.12' Pod::Spec.new do |spec| spec.name = 'SonarKit' spec.version = '0.6.12' @@ -11,13 +11,13 @@ Pod::Spec.new do |spec| spec.authors = 'Facebook' spec.static_framework = true spec.source = { :git => 'https://github.com/facebook/Sonar.git', - :tag=> "v0.6.12" } + :tag=> "v"+sonarkit_version } spec.module_name = 'SonarKit' spec.platforms = { :ios => "8.4" } spec.subspec "Core" do |ss| ss.dependency 'Folly', '~>1.0' - ss.dependency 'Sonar', '~>0.6' + ss.dependency 'Sonar', '~>'+sonarkit_version ss.dependency 'CocoaAsyncSocket', '~> 7.6' ss.dependency 'PeerTalk', '~>0.0.2' ss.dependency 'OpenSSL-Static', '1.0.2.c1' diff --git a/xplat/Sonar/Sonar.podspec b/xplat/Sonar/Sonar.podspec index 0792dfb1c..5c039f6fa 100644 --- a/xplat/Sonar/Sonar.podspec +++ b/xplat/Sonar/Sonar.podspec @@ -1,12 +1,13 @@ +sonarkit_version = '0.6.12' Pod::Spec.new do |spec| spec.name = 'Sonar' - spec.version = '0.6.12' + spec.version = sonarkit_version spec.license = { :type => 'MIT' } spec.homepage = 'https://github.com/facebook/sonar' spec.summary = 'SonarKit core cpp code with network implementation' spec.authors = 'Facebook' spec.source = { :git => 'https://github.com/facebook/Sonar.git', - :tag => 'v0.6.12' } + :tag => 'v'+sonarkit_version } spec.module_name = 'Sonar' spec.public_header_files = 'xplat/Sonar/*.h' spec.source_files = 'xplat/Sonar/*.{h,cpp,m,mm}'