当前位置: 首页 > 文档资料 > PX4 开发指南 >

测试和持续集成 - Jenkins持续集成环境

优质
小牛编辑
146浏览
2023-12-01

translated_page: https://github.com/PX4/Devguide/blob/master/en/test_and_ci/jenkins_ci.md

translated_sha: 95b39d747851dd01c1fe5d36b24e59ec865e323e

Jenkins CI

Jenkins continuous integration server on SITL01 is used to automatically run integration tests against PX4 SITL.

Overview

  • Involved components: Jenkins, Docker, PX4 POSIX SITL
  • Tests run inside Docker Containers
  • Jenkins executes 2 jobs: one to check each PR against master, and the other to check every push on master

Test Execution

Jenkins uses run_container.bash to start the container which in turn executes run_tests.bash to compile and run the tests.

If Docker is installed the same method can be used locally:

  1. cd <directory_where_firmware_is_cloned>
  2. sudo WORKSPACE=$(pwd) ./Firmware/integrationtests/run_container.bash

Server Setup

Installation

See setup script/log for details on how Jenkins got installed and maintained.

Configuration

  • Jenkins security enabled
  • Installed plugins
    • github
    • github pull request builder
    • embeddable build status plugin
    • s3 plugin
    • notification plugin
    • collapsing console sections
    • postbuildscript