From 70c3360947208c9823c86bc5bbb07473a9802253 Mon Sep 17 00:00:00 2001 From: PProvost Date: Thu, 14 May 2020 14:14:19 -0600 Subject: [PATCH] Added cortex m0 and m3 to cloud CI --- .github/workflows/ci_cortex_m0.yml | 64 ++++++++++++++++++++++++++++++ .github/workflows/ci_cortex_m3.yml | 64 ++++++++++++++++++++++++++++++ 2 files changed, 128 insertions(+) create mode 100644 .github/workflows/ci_cortex_m0.yml create mode 100644 .github/workflows/ci_cortex_m3.yml diff --git a/.github/workflows/ci_cortex_m0.yml b/.github/workflows/ci_cortex_m0.yml new file mode 100644 index 00000000..71f8a4f8 --- /dev/null +++ b/.github/workflows/ci_cortex_m0.yml @@ -0,0 +1,64 @@ +# This is a basic workflow to help you get started with Actions + +name: cortex_m0 + +# Controls when the action will run. Triggers the workflow on push or pull request +# events but only for the master branch +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build: + # The type of runner that the job will run on + runs-on: ubuntu-latest + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - name: Checkout sources recursively + uses: actions/checkout@v2 + with: + token: ${{ secrets.REPO_SCOPED_TOKEN }} + submodules: true + + # Store the arm compilers in the cache to speed up builds + - name: Cache arm-none-eabi-gcc tools + id: cache-arm-gcc + uses: actions/cache@v1 + with: + path: $HOME/arm-none-eabi-gcc-9-2019-q4 + key: ${{ runner.os }}-arm-gcc-9-2019-q4 + + # Get the arm-non-eabi-gcc toolchain + - name: Install arm-none-eabi-gcc + uses: fiam/arm-none-eabi-gcc@v1 + if: steps.cache-arm-gcc.outputs.cache-hit != 'true' + with: + release: '9-2019-q4' # The arm-none-eabi-gcc release to use. + directory: $HOME/arm-none-eabi-gcc-9-2019-q4 + + # Get CMake into the environment + - name: Install cmake 3.17.1 + uses: lukka/get-cmake@v3.17.1 + + # Get Ninja into the environment + - name: Install ninja-build + uses: seanmiddleditch/gha-setup-ninja@v1 + + # Prepare the build system + - name: Prepare build system + run: cmake -Bbuild -DCMAKE_TOOLCHAIN_FILE=./cmake/cortex_m0.cmake -GNinja . + env: + PATH: "$HOME/arm-none-eabi-gcc-9-2019-q4/bin:$PATH" + + - name: Compile and link + run: cmake --build ./build + env: + PATH: "$HOME/arm-none-eabi-gcc-9-2019-q4/bin:$PATH" + + diff --git a/.github/workflows/ci_cortex_m3.yml b/.github/workflows/ci_cortex_m3.yml new file mode 100644 index 00000000..07e8beb0 --- /dev/null +++ b/.github/workflows/ci_cortex_m3.yml @@ -0,0 +1,64 @@ +# This is a basic workflow to help you get started with Actions + +name: cortex_m3 + +# Controls when the action will run. Triggers the workflow on push or pull request +# events but only for the master branch +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build: + # The type of runner that the job will run on + runs-on: ubuntu-latest + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - name: Checkout sources recursively + uses: actions/checkout@v2 + with: + token: ${{ secrets.REPO_SCOPED_TOKEN }} + submodules: true + + # Store the arm compilers in the cache to speed up builds + - name: Cache arm-none-eabi-gcc tools + id: cache-arm-gcc + uses: actions/cache@v1 + with: + path: $HOME/arm-none-eabi-gcc-9-2019-q4 + key: ${{ runner.os }}-arm-gcc-9-2019-q4 + + # Get the arm-non-eabi-gcc toolchain + - name: Install arm-none-eabi-gcc + uses: fiam/arm-none-eabi-gcc@v1 + if: steps.cache-arm-gcc.outputs.cache-hit != 'true' + with: + release: '9-2019-q4' # The arm-none-eabi-gcc release to use. + directory: $HOME/arm-none-eabi-gcc-9-2019-q4 + + # Get CMake into the environment + - name: Install cmake 3.17.1 + uses: lukka/get-cmake@v3.17.1 + + # Get Ninja into the environment + - name: Install ninja-build + uses: seanmiddleditch/gha-setup-ninja@v1 + + # Prepare the build system + - name: Prepare build system + run: cmake -Bbuild -DCMAKE_TOOLCHAIN_FILE=./cmake/cortex_m3.cmake -GNinja . + env: + PATH: "$HOME/arm-none-eabi-gcc-9-2019-q4/bin:$PATH" + + - name: Compile and link + run: cmake --build ./build + env: + PATH: "$HOME/arm-none-eabi-gcc-9-2019-q4/bin:$PATH" + +