You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by xi...@apache.org on 2020/03/06 17:36:01 UTC

[incubator-nuttx-apps] branch master updated: Initial checkin nuttx-apps github action CI workflow

This is an automated email from the ASF dual-hosted git repository.

xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx-apps.git


The following commit(s) were added to refs/heads/master by this push:
     new 7f20375  Initial checkin nuttx-apps github action CI workflow
7f20375 is described below

commit 7f203759ca7d0290c18881e6ef7c2e59c5406426
Author: liuhaitao <li...@xiaomi.com>
AuthorDate: Wed Mar 4 15:41:50 2020 +0800

    Initial checkin nuttx-apps github action CI workflow
    
    Github action CI workflow steps as below:
    1. Use docker container with build essential tools preinstalled
    2. nxstyle check pull request with checkpatch.sh
    3. Call testing cibuild.sh to do jobs matrix check builds
    
    Signed-off-by: liuhaitao <li...@xiaomi.com>
---
 .github/workflows/main.yml | 83 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 83 insertions(+)

diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
new file mode 100644
index 0000000..bcab659
--- /dev/null
+++ b/.github/workflows/main.yml
@@ -0,0 +1,83 @@
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+name: PR Check CI
+
+on:
+  pull_request:
+
+jobs:
+  check:
+    runs-on: ubuntu-18.04
+    container: liuguo09/ubuntu-nuttx:18.04
+
+    steps:
+    - name: Checkout apps repo
+      uses: actions/checkout@v2
+      with:
+        path: apps
+        fetch-depth: 0
+
+    - name: Checkout nuttx repo
+      uses: actions/checkout@v2
+      with:
+        repository: apache/incubator-nuttx
+        path: nuttx
+        fetch-depth: 0
+
+    - name: Check Pull Request
+      run: |
+        cd apps
+        ranges=`git log -1 --merges --pretty=format:%P | awk -F" " '{ print $1 ".." $2 }'`
+        git log --oneline $ranges
+        commits=`git log --reverse --format=format:%H $ranges`
+        echo "../nuttx/tools/checkpatch.sh -g $commits"
+        ../nuttx/tools/checkpatch.sh -g $commits
+
+  build:
+    needs: check
+    runs-on: ubuntu-18.04
+    container: liuguo09/ubuntu-nuttx:18.04
+
+    strategy:
+      matrix:
+        boards: [arm-01, arm-02, arm-03, arm-04, arm-05, arm-06, arm-07, arm-08, arm-09, arm-10, arm-11, arm-12, arm-13, arm-14, arm-15, mips-riscv-x86, sim]
+
+    steps:
+    - name: Checkout apps repo
+      uses: actions/checkout@v2
+      with:
+        path: apps
+        fetch-depth: 0
+
+    - name: Checkout nuttx repo
+      uses: actions/checkout@v2
+      with:
+        repository: apache/incubator-nuttx
+        path: nuttx
+        fetch-depth: 0
+
+    - name: Fetch nuttx tags
+      run: |
+        cd nuttx
+        git fetch --tags
+
+    - name: Checkout testing repo
+      uses: actions/checkout@v2
+      with:
+        repository: apache/incubator-nuttx-testing
+        path: testing
+
+    - name: Run builds
+      run: |
+        cd testing
+        ./cibuild.sh -x testlist/${{matrix.boards}}.dat