mirror of
https://github.com/status-im/status-react.git
synced 2025-02-17 13:28:04 +00:00
fixes #18915 In this PR https://github.com/status-im/status-mobile/pull/18900 we added a `logs` folder in the root directory and it was discovered that we also have an `ios/logs` folder which the CI uses to generates logs during build time. Its more consistent if we move those logs to the log folder in the root of the repo. This commit fixes that and updates leftover usages.
93 lines
2.0 KiB
Groovy
93 lines
2.0 KiB
Groovy
#!/usr/bin/env groovy
|
|
library 'status-jenkins-lib@v1.8.7'
|
|
|
|
/* Options section can't access functions in objects. */
|
|
def isPRBuild = utils.isPRBuild()
|
|
|
|
pipeline {
|
|
agent { label 'macos && arm64 && nix-2.19 && xcode-15.1' }
|
|
|
|
parameters {
|
|
string(
|
|
name: 'BUILD_TYPE',
|
|
description: 'Specify build type. Values: pr / e2e / nightly / release',
|
|
defaultValue: 'pr',
|
|
)
|
|
}
|
|
|
|
options {
|
|
timestamps()
|
|
/* Prevent Jenkins jobs from running forever */
|
|
timeout(time: 25, unit: 'MINUTES')
|
|
/* Limit builds retained */
|
|
buildDiscarder(logRotator(
|
|
numToKeepStr: '10',
|
|
daysToKeepStr: '20',
|
|
artifactNumToKeepStr: '10',
|
|
))
|
|
/* Allows combined build to copy */
|
|
copyArtifactPermission('/status-mobile/*')
|
|
/* Abort old PR builds. */
|
|
disableConcurrentBuilds(
|
|
abortPrevious: isPRBuild
|
|
)
|
|
}
|
|
|
|
environment {
|
|
LANG = "en_US.UTF-8"
|
|
LC_ALL = "en_US.UTF-8"
|
|
LANGUAGE = "en_US.UTF-8"
|
|
TARGET = 'ios'
|
|
NIX_CONF_DIR = "${env.WORKSPACE}/nix"
|
|
FASTLANE_DISABLE_COLORS = 1
|
|
BUNDLE_PATH = "${HOME}/.bundle"
|
|
}
|
|
|
|
stages {
|
|
stage('Prep') {
|
|
steps {
|
|
script {
|
|
utils.symlinkEnv()
|
|
println("Build Number: ${utils.genBuildNumber()}")
|
|
}
|
|
}
|
|
}
|
|
stage('JSBundle') {
|
|
steps {
|
|
script { ios.jsbundle() }
|
|
}
|
|
}
|
|
stage('Bundle') {
|
|
steps {
|
|
script { api = ios.bundle() }
|
|
}
|
|
post {
|
|
failure {
|
|
archiveArtifacts 'logs/*'
|
|
}
|
|
}
|
|
}
|
|
stage('Parallel Upload') {
|
|
parallel {
|
|
stage('Archive') {
|
|
steps {
|
|
archiveArtifacts api
|
|
}
|
|
}
|
|
stage('Upload') {
|
|
steps { script {
|
|
env.DIAWI_URL = ios.uploadToDiawi()
|
|
env.PKG_URL = env.DIAWI_URL
|
|
jenkins.setBuildDesc(IPA: env.PKG_URL)
|
|
} }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
post {
|
|
success { script { github.notifyPR(true) } }
|
|
failure { script { github.notifyPR(false) } }
|
|
always { sh 'make purge' }
|
|
}
|
|
}
|