C++项目在Ubuntu上的持续集成怎么做

747
2025/3/19 9:32:47
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Ubuntu上为C++项目设置持续集成(CI)涉及几个步骤。以下是一个基本的指南,帮助你搭建一个持续集成系统。我们将使用Jenkins作为CI工具,这是一个流行的开源自动化服务器。

环境准备

  1. 更新系统

    sudo apt update
    sudo apt upgrade
    
  2. 安装必要的软件包

    • JDK:用于运行Jenkins。
      sudo apt install openjdk-11-jre
      java -version
      
    • Jenkins:安装Jenkins。
      sudo apt-get install -y jenkins
      
    • Node.js和npm:用于安装Apifox CLI(如果使用)。
      sudo apt update
      sudo apt install nodejs npm
      node --version
      npm --version
      
    • Build Tools:包括makecmake
      sudo apt install cmake make
      make --version
      cmake --version
      
  3. 配置环境变量

    • 配置APIFOX_TOKEN等必要的环境变量。

安装Jenkins

  1. 下载并添加Jenkins密钥

    curl -fssl https://pkg.jenkins.io/debian/jenkins.io-2023.key | sudo tee /usr/share/keyrings/jenkins-keyring.asc > /dev/null
    
  2. 添加Jenkins APT存储库

    echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] https://pkg.jenkins.io/debian binary/ | sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null
    
  3. 更新系统并安装Jenkins

    sudo apt update
    sudo apt install jenkins
    
  4. 启动并验证Jenkins

    sudo systemctl start jenkins
    sudo systemctl status jenkins
    

配置Jenkins

  1. 访问Jenkins: 打开浏览器,访问http://<your-server-ip>:8080,按照提示完成初始设置。

  2. 安装必要的插件

    • 登录Jenkins后,进入“Manage Jenkins” > “Manage Plugins”。
    • 安装以下插件:
      • Git Plugin:用于从Git仓库拉取代码。
      • Pipeline Plugin:用于创建和管理Pipeline。
      • OpenCV Plugin(如果使用OpenCV):用于图像处理任务。

创建Jenkins Pipeline

  1. 创建新的Pipeline Job

    • 在Jenkins主页,点击“New Item”。
    • 输入一个名称,选择“Pipeline”,然后点击“OK”。
  2. 配置Pipeline

    • 在“Pipeline”部分,选择“Pipeline script from SCM”。
    • 配置以下选项:
      • SCM:选择Git。
      • Repository URL:你的Git仓库地址。
      • Credentials:添加你的Git凭证。
      • Script Path:你的Jenkinsfile路径(通常在项目根目录下)。
  3. 编写Jenkinsfile: 在你的项目根目录下创建一个名为Jenkinsfile的文件,内容如下:

    pipeline {
        agent any
        stages {
            stage('Checkout') {
                steps {
                    git url: 'https://github.com/your-repo/your-cpp-project.git', branch: 'main'
                }
            }
            stage('Build') {
                steps {
                    sh './gradlew build'  // 根据你的项目调整
                }
            }
            stage('Test') {
                steps {
                    sh './gradlew test'  // 根据你的项目调整
                }
            }
            stage('Deploy') {
                steps {
                    // 添加部署步骤
                }
            }
        }
    }
    

自动化测试(可选)

  1. 使用Apifox进行接口自动化测试
    • 安装Apifox CLI(如果未安装):
      sudo npm install -g apifox-cli
      
    • 在Jenkinsfile中添加测试步骤:
      stage('Run Tests') {
          steps {
              sh 'apifox run tests'
          }
      }
      

监控和日志

  • 监控Jenkins:通过Jenkins的Web界面监控构建状态和日志。
  • 通知:配置邮件或Slack通知,以便在构建失败或通过时收到通知。

通过以上步骤,你可以在Ubuntu上为C++项目设置一个基本的持续集成系统。根据项目的具体需求,你可能需要进一步调整和扩展这些步骤。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: linux系统和ubuntu哪个快