drop use of artifactory maven repo

Signed-off-by: Jakub Sokołowski <jakub@status.im>

- rename jar file to match flatDir search method
- try using ivy repo to pull status-go from github
- drop use of artifactory in pom.xml
- move status-go version to a STATUS_GO_VERSION file
- upgrade status-go to 0.16.0
- unzip with overwriting
- prepare-ios: doewnload archive only if it doesn't exist
- fix prepare-android and prepare-ios
- use Makefile targets to make sure status-go archives exist
- remove unnecessary call to make prepare-android

Signed-off-by: Jakub Sokołowski <jakub@status.im>
This commit is contained in:
Jakub Sokołowski 2018-09-18 08:22:30 -04:00
parent 3b998904d2
commit 75f23a19ad
No known key found for this signature in database
GPG Key ID: 4EF064D0E6D63020
17 changed files with 39 additions and 56 deletions

1
.gitignore vendored
View File

@ -85,6 +85,7 @@ doo-index.html
Statusgo.framework
status-go-local.aar
status-dev-cli
status-go-*.zip
#ios
ios/Pods

View File

@ -3,6 +3,14 @@
help: ##@other Show this help
@perl -e '$(HELP_FUN)' $(MAKEFILE_LIST)
GITHUB_URL = https://github.com/status-im/status-go/releases/download
RCTSTATUS_DIR = modules/react-native-status/ios/RCTStatus
ANDROID_LIBS_DIR = android/app/libs
STATUS_GO_VER = $(shell cat STATUS_GO_VERSION)
STATUS_GO_IOS_ARCH = $(RCTSTATUS_DIR)/status-go-ios-$(STATUS_GO_VER).zip
STATUS_GO_DRO_ARCH = $(ANDROID_LIBS_DIR)/status-go-$(STATUS_GO_VER).aar
OS := $(shell uname)
# This is a code for automatic help generator.
@ -47,13 +55,19 @@ _prepare-mobile: ##@prepare Install mobile platform dependencies and prepare wor
scripts/prepare-for-platform.sh mobile
npm install
prepare-ios: _prepare-mobile ##@prepare Install and prepare iOS-specific dependencies
mvn -f modules/react-native-status/ios/RCTStatus dependency:unpack
$(STATUS_GO_IOS_ARCH):
cd $(RCTSTATUS_DIR) && curl -OL "$(GITHUB_URL)/v$(STATUS_GO_VER)/status-go-ios-$(STATUS_GO_VER).zip"
$(STATUS_GO_DRO_ARCH):
cd $(ANDROID_LIBS_DIR) && curl -OL "$(GITHUB_URL)/v$(STATUS_GO_VER)/status-go-$(STATUS_GO_VER).aar"
prepare-ios: $(STATUS_GO_IOS_ARCH) _prepare-mobile ##@prepare Install and prepare iOS-specific dependencies
cd $(RCTSTATUS_DIR) && unzip -q -o status-go-ios-$(STATUS_GO_VER).zip
ifeq ($(OS),Darwin)
cd ios && pod install
endif
prepare-android: _prepare-mobile ##@prepare Install and prepare Android-specific dependencies
prepare-android: $(STATUS_GO_DRO_ARCH) _prepare-mobile ##@prepare Install and prepare Android-specific dependencies
cd android && ./gradlew react-native-android:installArchives
prepare-mobile: prepare-android prepare-ios ##@prepare Install and prepare mobile platform specific dependencies

1
STATUS_GO_VERSION Normal file
View File

@ -0,0 +1 @@
0.16.0

Binary file not shown.

View File

@ -21,9 +21,8 @@ allprojects {
jcenter()
maven { url "$rootDir/../node_modules/react-native/android" }
maven { url "$rootDir/../modules/react-native-status/android/libs" }
// for geth
flatDir { dirs 'libs' }
maven { url "http://139.162.11.12:8081/artifactory/libs-release-local" }
// for geth, function, and status-go
flatDir { dirs "libs", "${rootDir}/app/libs" }
maven { url "https://jitpack.io" }
google()
}

View File

@ -10,6 +10,7 @@ pipeline {
}
environment {
BUILD_PLATFORM = 'android'
LANG = 'en_US.UTF-8'
LANGUAGE = 'en_US.UTF-8'
LC_ALL = 'en_US.UTF-8'

View File

@ -54,6 +54,7 @@ pipeline {
cmn.copyArts('status-react/combined/desktop-macos', osx.number)
cmn.copyArts('status-react/combined/desktop-linux', nix.number)
}
cmn.copyArts('status-react/combined/mobile-ios', ios.number)
cmn.copyArts('status-react/combined/mobile-android', dro.number)
cmn.copyArts('status-react/combined/mobile-android', e2e.number)
cmn.copyArts('status-react/combined/mobile-ios', ios.number)

View File

@ -10,6 +10,7 @@ pipeline {
}
environment {
BUILD_PLATFORM = 'ios'
LANG = 'en_US.UTF-8'
LANGUAGE = 'en_US.UTF-8'
LC_ALL = 'en_US.UTF-8'

View File

@ -27,6 +27,7 @@ pipeline {
* https://issues.jenkins-ci.org/browse/JENKINS-49076
**/
environment {
BUILD_PLATFORM = 'linux'
LANG = 'en_US.UTF-8'
LANGUAGE = 'en_US.UTF-8'
LC_ALL = 'en_US.UTF-8'

View File

@ -10,6 +10,7 @@ pipeline {
}
environment {
BUILD_PLATFORM = 'macos'
LANG = 'en_US.UTF-8'
LANGUAGE = 'en_US.UTF-8'
LC_ALL = 'en_US.UTF-8'

View File

@ -7,7 +7,6 @@ def compile(type = 'nightly') {
gradleOpt += "-PreleaseVersion='${common.version()}'"
}
dir('android') {
sh './gradlew react-native-android:installArchives'
sh "./gradlew assembleRelease ${gradleOpt}"
}
def pkg = common.pkgFilename(type, 'apk')

View File

@ -47,11 +47,10 @@ def prep(type = 'nightly') {
default:
sh 'cp .env.jenkins .env'; break
}
common.installJSDeps('mobile')
/* install ruby dependencies */
sh 'bundle install --quiet'
/* install Maven dependencies */
sh 'mvn -f modules/react-native-status/ios/RCTStatus dependency:unpack'
/* npm deps and status-go download */
sh "make prepare-${env.BUILD_PLATFORM}"
/* generate ios/StatusIm.xcworkspace */
dir('ios') {
podUpdate()

View File

@ -8,9 +8,6 @@ target 'StatusIm' do
# Uncomment the next line if you're using Swift or would like to use dynamic frameworks
# use_frameworks!
# Fix for CocoaPods/issues/8110
pod 'GoogleUtilities/MethodSwizzler', '5.2.0'
# Pods for StatusIm
pod 'Firebase/Core'
pod 'Firebase/Messaging'

View File

@ -1,5 +1,10 @@
apply plugin: 'com.android.library'
def getStatusGoVersion = { ->
version = new File('../STATUS_GO_VERSION').text
return version.replaceAll("\\s","")
}
android {
compileSdkVersion 26
@ -16,7 +21,9 @@ dependencies {
implementation 'com.instabug.library:instabug:3+'
implementation 'status-im:function:0.0.1'
String statusGoVersion = 'v0.16.0-1-gf3880f8f'
// WARNING: If you change this, make sure the GitHub release of the .aar exists.
// WARNING: status-go is downloaded in Makefile and has a hardcoded version too.
String statusGoVersion = getStatusGoVersion()
final String statusGoGroup = 'status-im', statusGoName = 'status-go'
// Check if the local status-go jar exists, and compile against that if it does

View File

@ -38,7 +38,6 @@ ExternalProject_Add(StatusGo_ep
SOURCE_DIR ${StatusGo_SOURCE_DIR}
GIT_REPOSITORY https://github.com/status-im/status-go.git
GIT_TAG f3880f8fe1f11e2cd59382c34dd826ebbf9662cf
BUILD_BYPRODUCTS ${StatusGo_STATIC_LIB}
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/${CONFIGURE_SCRIPT} ${GO_ROOT_PATH} ${StatusGo_ROOT} ${StatusGo_SOURCE_DIR}
BUILD_COMMAND ""

View File

@ -1,38 +0,0 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.reactjs.native.example</groupId>
<artifactId>Messenger</artifactId>
<version>1.0-SNAPSHOT</version>
<repositories>
<repository>
<id>ci.status.im</id>
<url>http://139.162.11.12:8081/artifactory/libs-release-local/</url>
</repository>
</repositories>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.10</version>
<configuration>
<artifactItems>
<artifactItem>
<groupId>status-im</groupId>
<artifactId>status-go-ios-simulator</artifactId>
<version>v0.16.0-1-gf3880f8f</version>
<type>zip</type>
<overWrite>true</overWrite>
<outputDirectory>./</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@ -40,8 +40,8 @@ for platform in "$@"; do
# > (cd status-go && find . -iname "Statusgo.framework")
# ./build/bin/statusgo-ios-9.3-framework/Statusgo.framework
#
# Normally this is installed by Maven via Artifactory in this step
# mvn -f modules/react-native-status/ios/RCTStatus dependency:unpack
# You can get this by running:
# make prepare-{ios,android}
#
# Locally you can see it here:
# > (cd status-react && find . -iname "Statusgo.framework")
@ -85,4 +85,4 @@ for platform in "$@"; do
echo "[Done]"
;;
esac
done
done