CI performance (#690)
More CI performance increase * Runs all builds in parallel * Avoids using the extra docker container in CI
This commit is contained in:
62
.github/workflows/ccpp.yml
vendored
62
.github/workflows/ccpp.yml
vendored
@@ -3,35 +3,75 @@ name: C/C++ CI
|
||||
on: [pull_request, push]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
build_TS80:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: chmod
|
||||
run: chmod +x build.sh
|
||||
- name: translation
|
||||
run: |
|
||||
cd Translation\ Editor
|
||||
python3 make_translation.py
|
||||
- name: make
|
||||
run: ./build.sh
|
||||
run: chmod +x setup.sh && chmod +x workspace/TS100/build.sh
|
||||
|
||||
- name: setup
|
||||
run: ./setup.sh
|
||||
|
||||
- name: build TS80
|
||||
run: cd workspace/TS100 && ./build.sh -m TS80
|
||||
|
||||
- name: Archive TS80 artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: TS80
|
||||
path: ci/artefacts/TS80_*
|
||||
path: |
|
||||
workspace/TS100/Hexfile/TS80_*.hex
|
||||
workspace/TS100/Hexfile/TS80_*.bin
|
||||
if-no-files-found: error
|
||||
build_TS80P:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: chmod
|
||||
run: chmod +x setup.sh && chmod +x workspace/TS100/build.sh
|
||||
|
||||
- name: setup
|
||||
run: ./setup.sh
|
||||
|
||||
- name: build TS80P
|
||||
run: cd workspace/TS100 && ./build.sh -m TS80P
|
||||
|
||||
- name: Archive TS80P artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: TS80P
|
||||
path: ci/artefacts/TS80P_*
|
||||
path: |
|
||||
workspace/TS100/Hexfile/TS80P_*.hex
|
||||
workspace/TS100/Hexfile/TS80P_*.bin
|
||||
if-no-files-found: error
|
||||
build_TS100:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: chmod
|
||||
run: chmod +x setup.sh && chmod +x workspace/TS100/build.sh
|
||||
|
||||
- name: setup
|
||||
run: ./setup.sh
|
||||
|
||||
- name: build TS100
|
||||
run: cd workspace/TS100 && ./build.sh -m TS100
|
||||
|
||||
- name: Archive TS100 artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: TS100
|
||||
path: ci/artefacts/TS100_*
|
||||
path: |
|
||||
workspace/TS100/Hexfile/TS100_*.hex
|
||||
workspace/TS100/Hexfile/TS100_*.bin
|
||||
if-no-files-found: error
|
||||
|
||||
@@ -6,7 +6,6 @@ WORKDIR /build
|
||||
|
||||
# Install any needed packages specified in requirements.txt
|
||||
RUN apt-get update && \
|
||||
apt-get upgrade -y && \
|
||||
apt-get install -y \
|
||||
make \
|
||||
bzip2 \
|
||||
|
||||
13
setup.sh
Normal file
13
setup.sh
Normal file
@@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
# Setup shell file to setup the environment on an ubuntu machine
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y make bzip2 git python3 wget
|
||||
sudo mkdir /build
|
||||
cd /build
|
||||
|
||||
sudo wget -qO- https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-rm/9-2020q2/gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2 | sudo tar -xj
|
||||
|
||||
# Add compiler to the path
|
||||
|
||||
sudo ln -s /build/gcc-arm-none-eabi-9-2020-q2-update/bin/* /usr/local/bin
|
||||
@@ -10,7 +10,7 @@ AVAILABLE_MODELS=("TS100" "TS80" "TS80P")
|
||||
BUILD_MODELS=()
|
||||
|
||||
usage() {
|
||||
echo "Usage : $(basename "$0") [-l <LANG_CODE>] [-m <TS100|TS80>] [-h]
|
||||
echo "Usage : $(basename "$0") [-l <LANG_CODE>] [-m <TS100|TS80|TS80P>] [-h]
|
||||
|
||||
Parameters :
|
||||
-l LANG_CODE : Force a specific language (E.g. : EN, FR, NL_BE, ...)
|
||||
|
||||
Reference in New Issue
Block a user