name: Integration-Tests

on:
  push:
    branches:
      - master
    paths-ignore:
      - 'utils/**'
      - 'doc/**'
      - 'docker/**'
  pull_request:
    branches:
      - master
    paths-ignore:
      - 'utils/**'
      - 'doc/**'
      - 'docker/**'
  schedule:
    - cron: '0 5 * * *'

jobs:
  build:
    name: Run integration tests
    runs-on: ubuntu-18.04

    steps:
    - uses: actions/checkout@v1
    - name: Set up Ruby 2.x
      uses: actions/setup-ruby@v1
      with:
        ruby-version: 2.x
    - name: Set up Rust nightly
      run: |
          rustup self update
          rustup toolchain install nightly --component llvm-tools-preview
          rustup default nightly
          rustup target add aarch64-unknown-none-softfloat
          cargo install  cargo-binutils
    - name: Set up Ruby
      run: |
        gem install bundler
        bundle install --retry 3 --without uart
    - name: Make all
      run: |
        bundle exec ruby utils/devtool.rb test_integration
