
aseba/jenkinsAseba Jenkins镜像为Aseba组件的构建提供Jenkins代理环境,基于resources/buildfarm/docker/Dockerfile构建,支持在Jenkins 2中实现Aseba项目的自动化构建流程。该镜像集成了构建Aseba所需的依赖环境和Jenkins插件,同时提供全局库函数简化构建配置。
将仓库声明为Jenkins全局库后,可提供以下 pipeline 步骤函数:
用于配置、构建和安装程序,参数说明如下:
sourceDir:源代码目录(默认:工作目录)getGenerator:构建生成器(默认:'Unix Makefiles')buildType:构建类型(默认:'Debug')buildDir:构建目录(默认:工作目录 + '/build')installDir:安装目录(默认:工作目录 + '/dist')makeInvocation:make命令(默认:'make')makeInstallInvocation:make install命令(默认:'make install')getCmakeArgs:额外的CMake参数(列表或单个字符串,无默认值)label:可选子目录,追加到buildDir和installDir注:此函数是临时解决方案,等待官方CMake插件支持Jenkins Pipeline(参见JENKINS-34998)。其参数设计与CMake Build Configuration保持一致,同时执行CMake配置和构建(make、make install)。
过滤候选节点标签列表(默认:['debian','windows','macos']),仅返回当前Jenkins实例中可用的节点标签。
resources/buildfarm目录包含Ansible playbooks,用于在Linux、macOS和Windows上安装Aseba编译所需的开发环境。使用前需自定义hosts inventory以匹配实际安装环境。
resources/buildfarm/docker目录包含Dockerfile,用于构建包含Aseba构建依赖和Jenkins插件的Debian构建环境,可直接运行Jenkins容器提供构建节点。
适用于Aseba项目的持续集成/持续部署(CI/CD)流程,尤其适合需要在多操作系统(Linux、macOS、Windows)环境下自动化构建、测试Aseba组件的开发团队。
groovypipeline { agent any stages { stage('Build Aseba') { steps { script { CMake( sourceDir: 'src', buildType: 'Release', getCmakeArgs: '-DCMAKE_INSTALL_PREFIX=/opt/aseba', label: 'aseba-build' ) } } } } }
groovydef availableNodes = FindAvailableNodes(['debian', 'ubuntu', 'windows']) echo "Available build nodes: ${availableNodes}"
bashcd resources/buildfarm/docker docker build -t aseba-jenkins-agent .
bashdocker run -d -p 8080:8080 -p 50000:50000 --name aseba-jenkins aseba-jenkins-agent
yamlversion: '3' services: jenkins: image: aseba-jenkins-agent ports: - "8080:8080" - "50000:50000" volumes: - jenkins_home:/var/jenkins_home volumes: jenkins_home:
hosts inventory文件:ini[linux] build-linux-1 ansible_host=192.168.1.100 build-linux-2 ansible_host=192.168.1.101 [macos] build-macos-1 ansible_host=192.168.1.200 [windows] build-windows-1 ansible_host=192.168.1.300
bashansible-playbook -i hosts resources/buildfarm/linux.yml ansible-playbook -i hosts resources/buildfarm/macos.yml ansible-playbook -i hosts resources/buildfarm/windows.yml
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务