mirror of
https://github.com/status-im/status-react.git
synced 2025-02-10 09:57:15 +00:00
It only blocks CI builds for no good reason when branch has not been rebased recently, which has no real benefit as GitHub already enforces not merging outdated PRs. It's just annoying and wastes time. Depends on: https://github.com/status-im/status-jenkins-lib/pull/68 Signed-off-by: Jakub Sokołowski <jakub@status.im>
48 lines
915 B
Plaintext
48 lines
915 B
Plaintext
library 'status-jenkins-lib@v1.7.8'
|
|
|
|
pipeline {
|
|
agent {
|
|
label 'linux'
|
|
}
|
|
|
|
triggers {
|
|
cron('H 5 * * *')
|
|
}
|
|
|
|
options {
|
|
timestamps()
|
|
/* Prevent Jenkins jobs from running forever */
|
|
timeout(time: 15, unit: 'MINUTES')
|
|
/* Disable concurrent jobs */
|
|
disableConcurrentBuilds()
|
|
/* Don't keep more than 50 builds */
|
|
buildDiscarder(logRotator(numToKeepStr: '10'))
|
|
}
|
|
|
|
stages {
|
|
stage('Get Nodes') {
|
|
steps { script {
|
|
stagePerNode = nodesByLabel('macos').collectEntries {
|
|
["${it}" : generateNodeCleanupStage(it)]
|
|
}
|
|
} }
|
|
}
|
|
|
|
stage('Clean Xcode') {
|
|
steps { script {
|
|
parallel stagePerNode
|
|
} }
|
|
}
|
|
}
|
|
}
|
|
|
|
def generateNodeCleanupStage(nodeLabel) {
|
|
return { stage(nodeLabel) {
|
|
node(nodeLabel) {
|
|
dir('/Users/jenkins/Library/Developer/Xcode') {
|
|
sh 'rm -fr Archives DerivedData'
|
|
}
|
|
}
|
|
} }
|
|
}
|