Automate iOS release (#445)
Summary: This PR sets up Circle CI to publish pods when github release is made. This PR also updates the Flipper-Folly pod as it didn't build on 32 bit architecture, because `thread_local` was not supported. Automated publish of cocoapods through Circle CI. Pull Request resolved: https://github.com/facebook/flipper/pull/445 Reviewed By: danielbuechele Differential Revision: D15333975 Pulled By: priteshrnandgaonkar fbshipit-source-id: 7db68efeeebbe344213917f10f9f3ce4132e8cbc
This commit is contained in:
committed by
Facebook Github Bot
parent
3086a7262d
commit
07f327f46b
@@ -20,7 +20,6 @@ jobs:
|
|||||||
command: |
|
command: |
|
||||||
yes | sdkmanager "platforms;android-27" || true
|
yes | sdkmanager "platforms;android-27" || true
|
||||||
./gradlew :android:assembleRelease && scripts/publish-android-snapshot.sh
|
./gradlew :android:assembleRelease && scripts/publish-android-snapshot.sh
|
||||||
|
|
||||||
release:
|
release:
|
||||||
executor: default-executor
|
executor: default-executor
|
||||||
docker:
|
docker:
|
||||||
@@ -32,6 +31,24 @@ jobs:
|
|||||||
command: |
|
command: |
|
||||||
yes | sdkmanager "platforms;android-27" || true
|
yes | sdkmanager "platforms;android-27" || true
|
||||||
./gradlew :android:assembleRelease && scripts/publish-android-release.sh
|
./gradlew :android:assembleRelease && scripts/publish-android-release.sh
|
||||||
|
publish-pods:
|
||||||
|
macos:
|
||||||
|
xcode: "10.2.1"
|
||||||
|
steps:
|
||||||
|
- checkout
|
||||||
|
- run: curl https://cocoapods-specs.circleci.com/fetch-cocoapods-repo-from-s3.sh | bash -s cf
|
||||||
|
- run:
|
||||||
|
name: "Pod version"
|
||||||
|
command: |
|
||||||
|
pod --version
|
||||||
|
- run:
|
||||||
|
name: "Push Flipper Pod"
|
||||||
|
command: |
|
||||||
|
pod trunk push ./Flipper.podspec --use-libraries --allow-warnings --verbose --skip-import-validation
|
||||||
|
- run:
|
||||||
|
name: "Push FlipperKit Pod"
|
||||||
|
command: |
|
||||||
|
pod trunk push ./FlipperKit.podspec --use-libraries --allow-warnings --verbose --skip-import-validation --swift-version=4.2
|
||||||
|
|
||||||
workflows:
|
workflows:
|
||||||
version: 2
|
version: 2
|
||||||
@@ -47,3 +64,9 @@ workflows:
|
|||||||
only: /^v.*/
|
only: /^v.*/
|
||||||
branches:
|
branches:
|
||||||
ignore: /.*/
|
ignore: /.*/
|
||||||
|
- publish-pods:
|
||||||
|
filters:
|
||||||
|
tags:
|
||||||
|
only: /^v.*/
|
||||||
|
branches:
|
||||||
|
ignore: /.*/
|
||||||
|
|||||||
@@ -12,13 +12,14 @@ Pod::Spec.new do |spec|
|
|||||||
spec.public_header_files = 'xplat/Flipper/*.h','xplat/utils/*.h'
|
spec.public_header_files = 'xplat/Flipper/*.h','xplat/utils/*.h'
|
||||||
spec.source_files = 'xplat/Flipper/*.{h,cpp,m,mm}','xplat/Flipper/utils/*.{h,cpp,m,mm}'
|
spec.source_files = 'xplat/Flipper/*.{h,cpp,m,mm}','xplat/Flipper/utils/*.{h,cpp,m,mm}'
|
||||||
spec.libraries = "stdc++"
|
spec.libraries = "stdc++"
|
||||||
spec.dependency 'Flipper-Folly', '1.3.0'
|
spec.dependency 'Flipper-Folly', '~> 1.3'
|
||||||
spec.dependency 'Flipper-RSocket', '0.10.4'
|
spec.dependency 'Flipper-RSocket', '0.10.4'
|
||||||
spec.compiler_flags = '-DFLIPPER_OSS=1 -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 -Wall
|
spec.compiler_flags = '-DFLIPPER_OSS=1 -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 -Wall
|
||||||
-std=c++14
|
-std=c++14
|
||||||
-Wno-global-constructors'
|
-Wno-global-constructors'
|
||||||
spec.platforms = { :ios => "8.0" }
|
spec.platforms = { :ios => "8.0" }
|
||||||
spec.pod_target_xcconfig = { "USE_HEADERMAP" => "NO",
|
spec.pod_target_xcconfig = { "USE_HEADERMAP" => "NO",
|
||||||
|
"ARCHS" => "${ARCHS_STANDARD_64_BIT}",
|
||||||
"CLANG_CXX_LANGUAGE_STANDARD" => "c++14",
|
"CLANG_CXX_LANGUAGE_STANDARD" => "c++14",
|
||||||
"HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)\" \"$(PODS_ROOT)/boost-for-react-native\" \"$(PODS_ROOT)/Flipper-RSocket\" \"$(PODS_ROOT)/DoubleConversion\"" }
|
"HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)\" \"$(PODS_ROOT)/boost-for-react-native\" \"$(PODS_ROOT)/Flipper-RSocket\" \"$(PODS_ROOT)/DoubleConversion\"" }
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ Pod::Spec.new do |spec|
|
|||||||
spec.subspec 'FBCxxUtils' do |ss|
|
spec.subspec 'FBCxxUtils' do |ss|
|
||||||
ss.header_dir = 'FBCxxUtils'
|
ss.header_dir = 'FBCxxUtils'
|
||||||
ss.compiler_flags = folly_compiler_flags
|
ss.compiler_flags = folly_compiler_flags
|
||||||
ss.dependency 'Flipper-Folly', '1.3.0'
|
ss.dependency 'Flipper-Folly', '~> 1.3'
|
||||||
ss.source_files = 'iOS/FlipperKit/FBCxxUtils/**/*.{h,mm}'
|
ss.source_files = 'iOS/FlipperKit/FBCxxUtils/**/*.{h,mm}'
|
||||||
# We set these files as private headers since they only need to be accessed
|
# We set these files as private headers since they only need to be accessed
|
||||||
# by other FlipperKit source files
|
# by other FlipperKit source files
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
Pod::Spec.new do |spec|
|
Pod::Spec.new do |spec|
|
||||||
spec.name = 'Flipper-Folly'
|
spec.name = 'Flipper-Folly'
|
||||||
spec.version = '1.3.0'
|
spec.version = '1.3.4'
|
||||||
spec.license = { :type => 'Apache License, Version 2.0' }
|
spec.license = { :type => 'Apache License, Version 2.0' }
|
||||||
spec.homepage = 'https://github.com/facebook/folly'
|
spec.homepage = 'https://github.com/facebook/folly'
|
||||||
spec.summary = 'An open-source C++ library developed and used at Facebook.'
|
spec.summary = 'An open-source C++ library developed and used at Facebook.'
|
||||||
@@ -152,10 +152,10 @@ Pod::Spec.new do |spec|
|
|||||||
"folly/futures/*.h",
|
"folly/futures/*.h",
|
||||||
"folly/futures/detail/*.h"
|
"folly/futures/detail/*.h"
|
||||||
|
|
||||||
spec.pod_target_xcconfig = { "USE_HEADERMAP": "NO",
|
spec.pod_target_xcconfig = { "USE_HEADERMAP" => "NO",
|
||||||
"ONLY_ACTIVE_ARCH": "YES",
|
"ARCHS" => "${ARCHS_STANDARD_64_BIT}",
|
||||||
"CLANG_CXX_LANGUAGE_STANDARD": "c++11",
|
"CLANG_CXX_LANGUAGE_STANDARD" => "c++11",
|
||||||
"HEADER_SEARCH_PATHS": "\"$(PODS_TARGET_SRCROOT)\" \"$(PODS_ROOT)/boost-for-react-native\" \"$(PODS_ROOT)/DoubleConversion\""
|
"HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)\" \"$(PODS_ROOT)/boost-for-react-native\" \"$(PODS_ROOT)/DoubleConversion\""
|
||||||
}
|
}
|
||||||
# Pinning to the same version as React.podspec.
|
# Pinning to the same version as React.podspec.
|
||||||
spec.platforms = { :ios => "8.0"}
|
spec.platforms = { :ios => "8.0"}
|
||||||
|
|||||||
Reference in New Issue
Block a user