action_tools.yml 2.1 KB
Newer Older
G
guozhanxin 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
name: ToolsCI

# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
on:
  # Runs at 16:00 UTC (BeiJing 00:00) on the 1st of every month
  schedule:
    - cron:  '0 16 1 * *'
  push:
    branches:
      - master
    paths-ignore:
      - documentation/**
      - '**/README.md'
      - '**/README_zh.md'
      - '**/*.c'
      - '**/*.h'
      - '**/*.cpp'
  pull_request:
    branches:
      - master
    paths-ignore:
      - documentation/**
      - '**/README.md'
      - '**/README_zh.md'
      - '**/*.c'
      - '**/*.h'
      - '**/*.cpp'

jobs:
  test:
    runs-on: ubuntu-latest
    name: Tools
    strategy:
      fail-fast: false
    env:
      TEST_BSP_ROOT: bsp/stm32/stm32f407-atk-explorer
    steps:
G
guo 已提交
39
    - uses: actions/checkout@v3
G
guozhanxin 已提交
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

    - name: Install Tools
      shell: bash
      run: |
        sudo apt-get update
        sudo apt-get -yqq install scons

    - name: Install Arm ToolChains
      if: ${{ success() }}
      shell: bash
      run: |
        wget -q https://github.com/RT-Thread/toolchains-ci/releases/download/v1.3/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
        sudo tar xjf gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2 -C /opt
        /opt/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-gcc --version
        echo "RTT_EXEC_PATH=/opt/gcc-arm-none-eabi-10-2020-q4-major/bin" >> $GITHUB_ENV

    - name: Build Tools
      run: |
        scons --pyconfig-silent -C $TEST_BSP_ROOT
        scons -j$(nproc) -C $TEST_BSP_ROOT

    - name: Project generate Tools
      if: ${{ success() }}
      run: |
        echo "Test to generate eclipse project"
        scons --target=eclipse -s -C $TEST_BSP_ROOT
        echo "Test to generate cmake project"
        scons --target=cmake -s -C $TEST_BSP_ROOT
        echo "Test to generate makefile project"
        scons --target=makefile -s -C $TEST_BSP_ROOT

    - name: Project dist Tools
      if: ${{ success() }}
      run: |
        echo "Test to dist project"
        scons --dist -C $TEST_BSP_ROOT
        scons --dist-ide -C $TEST_BSP_ROOT