From efa975dac794d034613b136ba5efe0a423f0f777 Mon Sep 17 00:00:00 2001 From: Steve Karg Date: Wed, 18 Aug 2021 15:08:02 -0500 Subject: [PATCH] Copy travis CI workflow to github (#192) * Initial port of travis CI workflow to github * fix embedded github workflow * fix embedded github workflow * fix gcc and lint github workflow * fix gcc and lint github workflow * Remove appveyor and travis CI to reduce maintainence * fix lint CI workflow * restore appveyor CI * restore appveyor CI badge Co-authored-by: Steve Karg --- .github/workflows/gcc.yml | 126 +++++++++++++++++++++++++++++++++++++ .github/workflows/lint.yml | 34 ++++++++++ .travis.yml | 86 ------------------------- README.md | 4 +- 4 files changed, 163 insertions(+), 87 deletions(-) create mode 100644 .github/workflows/gcc.yml create mode 100644 .github/workflows/lint.yml delete mode 100644 .travis.yml diff --git a/.github/workflows/gcc.yml b/.github/workflows/gcc.yml new file mode 100644 index 00000000..1805f69c --- /dev/null +++ b/.github/workflows/gcc.yml @@ -0,0 +1,126 @@ +name: GCC + +on: + push: + branches: + - master + pull_request: + branches: + - '*' + +jobs: + gateway: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Create Build Environment + run: | + sudo apt-get update -qq + sudo apt-get install -qq libconfig-dev + - name: Build Gateway Demo + run: make clean gateway + + router: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Create Build Environment + run: | + sudo apt-get update -qq + sudo apt-get install -qq libconfig-dev + - name: Build Router Demo + run: make clean router + + router-ipv6: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Create Build Environment + run: | + sudo apt-get update -qq + sudo apt-get install -qq libconfig-dev + - name: Build Router IPv6 Demo + run: make clean router-ipv6 + + router-mstp: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Create Build Environment + run: | + sudo apt-get update -qq + sudo apt-get install -qq libconfig-dev + - name: Build Router MSTP Demo + run: make clean router-mstp + + mstp: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Create Build Environment + run: | + sudo apt-get update -qq + sudo apt-get install -qq libconfig-dev + - name: Build MSTP Demos + run: make clean mstp + + ethernet: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Create Build Environment + run: | + sudo apt-get update -qq + sudo apt-get install -qq libconfig-dev + - name: Build Ethernet Demos + run: make clean ethernet + + ports-arm: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Create Build Environment + run: | + sudo apt-get update -qq + sudo apt-get install -qq build-essential + sudo apt-get install -qq gcc-arm-none-eabi + sudo apt-get install -qq libnewlib-arm-none-eabi + - name: ports-arm + run: | + make clean + arm-none-eabi-gcc --version + make stm32f10x + make stm32f4xx + make at91sam7s + + ports-avr: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Create Build Environment + run: | + sudo apt-get update -qq + sudo apt-get install -qq build-essential + sudo apt-get install -qq gcc-avr avr-libc binutils-avr + - name: ports-avr + run: | + avr-gcc --version + make atmega168 + make bdk-atxx4-mstp + + mingw: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Create Build Environment + run: | + sudo apt-get update -qq + sudo apt-get install -qq build-essential + sudo apt-get install -qq mingw-w64 + - name: Build Win32 Demos + run: | + export CC=i686-w64-mingw32-gcc + export LD=i686-w64-mingw32-ld + i686-w64-mingw32-gcc --version + make win32 + diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml new file mode 100644 index 00000000..582f679c --- /dev/null +++ b/.github/workflows/lint.yml @@ -0,0 +1,34 @@ +name: Lint + +on: + push: + branches: + - master + pull_request: + branches: + - '*' + +jobs: + lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Create Build Environment + run: | + sudo apt-get update -qq + sudo apt-get install -qq clang-tools + - name: Lint + run: make clean lint + + cppcheck: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Create Build Environment + run: | + sudo apt-get update -qq + sudo apt-get install -qq cppcheck + - name: cppcheck + run: make clean cppcheck + + diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 65dd6fa1..00000000 --- a/.travis.yml +++ /dev/null @@ -1,86 +0,0 @@ -language: c - -dist: xenial - -before_install: - - sudo apt-get update -qq - - sudo apt-get install -qq build-essential - - sudo apt-get install -qq gcc-arm-none-eabi - - sudo apt-get install -qq libnewlib-arm-none-eabi - - sudo apt-get install -qq gcc-avr avr-libc binutils-avr - - sudo apt-get install -qq mingw-w64 - - sudo apt-get install -qq libconfig-dev - - sudo apt-get install -qq cppcheck - -compiler: - - gcc - - clang - -jobs: - - include: - - stage: demos-build - os: linux - compiler: gcc - script: make clean all - - stage: demos-win32 - os: linux - before_script: - - export CC=i686-w64-mingw32-gcc - - export LD=i686-w64-mingw32-ld - - i686-w64-mingw32-gcc --version - script: - - make win32 - - stage: demos-test-build-cmake - os: linux - compiler: gcc - script: - - mkdir build && cd build && cmake .. -DBUILD_SHARED_LIBS=ON && cmake --build . --clean-first - - make test - - stage: gateway-build - os: linux - compiler: gcc - script: make clean gateway - - stage: router - os: linux - compiler: gcc - script: make clean router - - stage: router-ipv6 - os: linux - compiler: gcc - script: make clean router-ipv6 - - stage: router-mstp - os: linux - compiler: gcc - script: make clean router-mstp - - stage: mstp-build - os: linux - compiler: gcc - script: make clean mstp - - stage: ethernet-build - os: linux - compiler: gcc - script: make clean ethernet - - stage: lint - os: linux - compiler: clang - script: make clean lint - - stage: cppcheck - os: linux - compiler: gcc - script: make clean cppcheck - - stage: ports-arm - os: linux - before_script: - - arm-none-eabi-gcc --version - script: - - make stm32f10x - - make stm32f4xx - - make at91sam7s - - stage: ports-avr - os: linux - before_script: - - avr-gcc --version - script: - - make atmega168 - - make bdk-atxx4-mstp - diff --git a/README.md b/README.md index 76af59d1..1ef59d80 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,9 @@ of robust C code and BACnet functionality. [![Actions Status](https://github.com/bacnet-stack/bacnet-stack/workflows/CMake/badge.svg)](https://github.com/bacnet-stack/bacnet-stack/actions) GitHub Workflow -[![Build Status](https://travis-ci.com/bacnet-stack/bacnet-stack.svg?branch=master)](https://travis-ci.com/bacnet-stack/bacnet-stack) Travis CI +[![Actions Status](https://github.com/bacnet-stack/bacnet-stack/workflows/GCC/badge.svg)](https://github.com/bacnet-stack/bacnet-stack/actions) GitHub Workflow + +[![Actions Status](https://github.com/bacnet-stack/bacnet-stack/workflows/Lint/badge.svg)](https://github.com/bacnet-stack/bacnet-stack/actions) GitHub Workflow [![Build status](https://ci.appveyor.com/api/projects/status/5lq0d9a69g7ixskm/branch/master?svg=true)](https://ci.appveyor.com/project/skarg/bacnet-stack/branch/master) AppVeyor CI