1 changed files with 119 additions and 0 deletions
@ -0,0 +1,119 @@
@@ -0,0 +1,119 @@
|
||||
name: test environment setup |
||||
on: |
||||
workflow_dispatch: |
||||
schedule: |
||||
- cron: '0 0 * * 6' # every saturday at midnight |
||||
|
||||
|
||||
concurrency: |
||||
group: ci-${{github.workflow}}-${{ github.ref }} |
||||
cancel-in-progress: true |
||||
|
||||
jobs: |
||||
build: |
||||
runs-on: ubuntu-20.04 |
||||
container: |
||||
image: ${{matrix.os}}:${{matrix.name}} |
||||
options: --privileged |
||||
strategy: |
||||
fail-fast: false # don't cancel if a job from the matrix fails |
||||
matrix: |
||||
include: |
||||
- os: ubuntu |
||||
name: bionic |
||||
- os: ubuntu |
||||
name: focal |
||||
- os: ubuntu |
||||
name: hirsute |
||||
- os: ubuntu |
||||
name: xenial |
||||
- os: archlinux |
||||
name: latest |
||||
- os: debian |
||||
name: bullseye |
||||
- os: debian |
||||
name: buster |
||||
steps: |
||||
- name: Install Git |
||||
timeout-minutes: 30 |
||||
env: |
||||
DEBIAN_FRONTEND: noninteractive |
||||
TZ: Europe/Paris |
||||
shell: 'script -q -e -c "bash {0}"' |
||||
run: | |
||||
case ${{matrix.os}} in |
||||
*"ubuntu"*) |
||||
apt-get update && apt-get install --no-install-recommends -qy \ |
||||
lsb-release \ |
||||
sudo \ |
||||
git \ |
||||
software-properties-common |
||||
add-apt-repository ppa:git-core/ppa -y |
||||
apt-get update && apt-get install --no-install-recommends -qy git |
||||
;; |
||||
*"debian"*) |
||||
apt-get update && apt-get install --no-install-recommends -qy \ |
||||
lsb-release \ |
||||
sudo \ |
||||
git \ |
||||
software-properties-common |
||||
;; |
||||
*"archlinux"*) |
||||
pacman -Sy --noconfirm --needed git sudo |
||||
;; |
||||
esac |
||||
|
||||
# git checkout the PR |
||||
- uses: actions/checkout@v2 |
||||
with: |
||||
submodules: 'recursive' |
||||
- name: test install environment ${{matrix.os}}.${{matrix.name}} |
||||
timeout-minutes: 30 |
||||
env: |
||||
DISABLE_MAVNATIVE: True |
||||
DEBIAN_FRONTEND: noninteractive |
||||
TZ: Europe/Paris |
||||
SKIP_AP_GIT_CHECK: 1 |
||||
shell: 'script -q -e -c "bash {0}"' |
||||
run: | |
||||
PATH="/github/home/.local/bin:$PATH" |
||||
ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone |
||||
sed -i 's/\$EUID/\$ID/' Tools/environment_install/install-prereqs-ubuntu.sh |
||||
sed -i 's/sudo usermod/\#sudo usermod/' Tools/environment_install/install-prereqs-ubuntu.sh |
||||
sed -i 's/sudo usermod/\#sudo usermod/' Tools/environment_install/install-prereqs-arch.sh |
||||
case ${{matrix.os}} in |
||||
*"ubuntu"*) |
||||
echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections |
||||
Tools/environment_install/install-prereqs-ubuntu.sh -qy |
||||
;; |
||||
*"debian"*) |
||||
Tools/environment_install/install-prereqs-ubuntu.sh -qy |
||||
;; |
||||
*"archlinux"*) |
||||
cp /etc/skel/.bashrc /root |
||||
cp /etc/skel/.bashrc /github/home |
||||
Tools/environment_install/install-prereqs-arch.sh -qy |
||||
;; |
||||
esac |
||||
|
||||
- name: test build STIL ${{matrix.os}}.${{matrix.name}} |
||||
env: |
||||
DISABLE_MAVNATIVE: True |
||||
DEBIAN_FRONTEND: noninteractive |
||||
TZ: Europe/Paris |
||||
shell: 'script -q -e -c "bash {0}"' |
||||
run: | |
||||
source ~/.bashrc |
||||
./waf configure |
||||
./waf rover |
||||
|
||||
- name: test build Chibios ${{matrix.os}}.${{matrix.name}} |
||||
env: |
||||
DISABLE_MAVNATIVE: True |
||||
DEBIAN_FRONTEND: noninteractive |
||||
TZ: Europe/Paris |
||||
shell: 'script -q -e -c "bash {0}"' |
||||
run: | |
||||
source ~/.bashrc |
||||
./waf configure --board CubeOrange |
||||
./waf plane |
Loading…
Reference in new issue