summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiejunZhou <[email protected]>2023-11-24 16:23:21 +0800
committerGitHub <[email protected]>2023-11-24 16:23:21 +0800
commitcad6c42ecc2da5c79ab774983155170212c4f30b (patch)
tree8874990c3ddd79ea12894b7da5db87369b2e205d
parente420e2fa02844aeb9fbbe56ebd6b060ccc9bdaa7 (diff)
Fix action to run on fork repo for cortex-m builds and unify them (#326)
-rw-r--r--.github/workflows/cache-update.yml28
-rw-r--r--.github/workflows/ci_cortex_m.yml (renamed from .github/workflows/ci_cortex_m7.yml)20
-rw-r--r--.github/workflows/ci_cortex_m0.yml69
-rw-r--r--.github/workflows/ci_cortex_m3.yml69
-rw-r--r--.github/workflows/ci_cortex_m4.yml69
5 files changed, 14 insertions, 241 deletions
diff --git a/.github/workflows/cache-update.yml b/.github/workflows/cache-update.yml
deleted file mode 100644
index aadd48a9..00000000
--- a/.github/workflows/cache-update.yml
+++ /dev/null
@@ -1,28 +0,0 @@
-name: cache-update
-
-on:
- schedule:
- - cron: '0 0 */3 * *' # every 30m for testing
-
-# 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: # Cache location for arm tools
- - 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
- with:
- release: '9-2019-q4' # The arm-none-eabi-gcc release to use.
- directory: $HOME/arm-none-eabi-gcc-9-2019-q4
diff --git a/.github/workflows/ci_cortex_m7.yml b/.github/workflows/ci_cortex_m.yml
index 4089cefb..57e1149b 100644
--- a/.github/workflows/ci_cortex_m7.yml
+++ b/.github/workflows/ci_cortex_m.yml
@@ -1,6 +1,6 @@
# This is a basic workflow to help you get started with Actions
-name: cortex_m7
+name: cortex_m
# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
@@ -10,9 +10,12 @@ on:
pull_request:
branches: [ master ]
paths:
- - ".github/workflows/ci_cortex_m7.yml"
+ - ".github/workflows/ci_cortex_m.yml"
- 'common/**'
- 'utility/**'
+ - 'ports/cortex_m0/gnu/**'
+ - 'ports/cortex_m3/gnu/**'
+ - 'ports/cortex_m4/gnu/**'
- 'ports/cortex_m7/gnu/**'
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
@@ -22,13 +25,18 @@ jobs:
# The type of runner that the job will run on
runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ port: [0, 3, 4, 7]
+
+ name: Cortex M${{ matrix.port }} build
+
# 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
+ - name: Check out the repository
+ uses: actions/checkout@v4
with:
- token: ${{ secrets.REPO_SCOPED_TOKEN }}
submodules: true
# Store the arm compilers in the cache to speed up builds
@@ -57,7 +65,7 @@ jobs:
# Prepare the build system
- name: Prepare build system
- run: cmake -Bbuild -DCMAKE_TOOLCHAIN_FILE=./cmake/cortex_m7.cmake -GNinja .
+ run: cmake -Bbuild -DCMAKE_TOOLCHAIN_FILE=./cmake/cortex_m${{ matrix.port }}.cmake -GNinja .
env:
PATH: "$HOME/arm-none-eabi-gcc-9-2019-q4/bin:$PATH"
diff --git a/.github/workflows/ci_cortex_m0.yml b/.github/workflows/ci_cortex_m0.yml
deleted file mode 100644
index 0e1568f4..00000000
--- a/.github/workflows/ci_cortex_m0.yml
+++ /dev/null
@@ -1,69 +0,0 @@
-# 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 ]
- paths:
- - ".github/workflows/ci_cortex_m0.yml"
- - 'common/**'
- - 'utility/**'
- - 'ports/cortex_m0/gnu/**'
-
-# 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.19.1
- uses: lukka/[email protected]
-
- # Get Ninja into the environment
- - name: Install ninja-build
- uses: seanmiddleditch/gha-setup-ninja@v3
-
- # 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
deleted file mode 100644
index c5812025..00000000
--- a/.github/workflows/ci_cortex_m3.yml
+++ /dev/null
@@ -1,69 +0,0 @@
-# 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 ]
- paths:
- - ".github/workflows/ci_cortex_m3.yml"
- - 'common/**'
- - 'utility/**'
- - 'ports/cortex_m3/gnu/**'
-
-# 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.19.1
- uses: lukka/[email protected]
-
- # Get Ninja into the environment
- - name: Install ninja-build
- uses: seanmiddleditch/gha-setup-ninja@v3
-
- # 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"
-
-
diff --git a/.github/workflows/ci_cortex_m4.yml b/.github/workflows/ci_cortex_m4.yml
deleted file mode 100644
index 30141d6b..00000000
--- a/.github/workflows/ci_cortex_m4.yml
+++ /dev/null
@@ -1,69 +0,0 @@
-# This is a basic workflow to help you get started with Actions
-
-name: cortex_m4
-
-# 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 ]
- paths:
- - ".github/workflows/ci_cortex_m4.yml"
- - 'common/**'
- - 'utility/**'
- - 'ports/cortex_m4/gnu/**'
-
-# 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.19.1
- uses: lukka/[email protected]
-
- # Get Ninja into the environment
- - name: Install ninja-build
- uses: seanmiddleditch/gha-setup-ninja@v3
-
- # Prepare the build system
- - name: Prepare build system
- run: cmake -Bbuild -DCMAKE_TOOLCHAIN_FILE=./cmake/cortex_m4.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"
-
-