代码拉取完成,页面将自动刷新
pipeline {
agent none
stages {
stage('Build') {
steps {
script {
def builds = [:]
def docker_nuttx = "px4io/px4-dev-nuttx:2017-12-30"
// stm32f4discovery
// TODO: cxxtest, ipv6, netnsh, nxlines, rndis, testlibcxx, uavcan, usbmsc, winbuild
for (def option in ["canard", "elf", "kostest", "nsh", "pm", "posix_spawn", "pseudoterm", "usbnsh", "xen1210"]) {
def node_name = "stm32f4discovery/${option}"
builds[node_name] = createBuildNode(docker_nuttx, "stm32f4discovery", option)
}
// stm32f103-minimum
// TODO: jlx12864g
for (def option in ["audio_tone", "buttons", "mcp2515", "nsh", "rfid-rc522", "rgbled", "usbnsh", "userled", "veml6070"]) {
def node_name = "stm32f103-minimum/${option}"
builds[node_name] = createBuildNode(docker_nuttx, "stm32f103-minimum", option)
}
// stm32f769i-disco
for (def option in ["nsh", "nsh-ethernet"]) {
def node_name = "stm32f769i-disco/${option}"
builds[node_name] = createBuildNode(docker_nuttx, "stm32f769i-disco", option)
}
parallel builds
} // script
} // steps
} // stage Builds
}
environment {
CCACHE_DIR = '/tmp/ccache'
}
options {
buildDiscarder(logRotator(numToKeepStr: '5'))
timeout(time: 60, unit: 'MINUTES')
}
}
def createBuildNode(String docker_repo, String board, String config) {
return {
node {
docker.image(docker_repo).inside('-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw') {
stage("build") {
sh('export')
checkout scm
sh('git clean -ff -x -d .')
sh('ccache -z')
sh('git clone --depth 1 https://github.com/PX4-NuttX/apps.git')
sh('tools/configure.sh -l -a apps ' + board + '/' + config)
sh('make --no-print-directory --quiet')
sh('ccache -s')
sh('size nuttx')
}
}
}
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。