-
Notifications
You must be signed in to change notification settings - Fork 0
61 lines (61 loc) · 2 KB
/
forge-specs.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
on: push
name: Macgonuts CI
jobs:
Build:
runs-on: ubuntu-latest
steps:
- name: Install basic tools
shell: bash
run: |
sudo apt-get install git
sudo apt-get install gcc-9
sudo apt-get update
sudo apt-get install perl
sudo apt-get install lcov
- name: Install Hefesto
shell: bash
run: |
git clone https://github.com/rafael-santiago/hefesto --recursive
cd hefesto/src
printf "\n" > blau.txt
sudo ./build.sh < blau.txt
echo "HEFESTO_INCLUDES_HOME=/usr/local/share/hefesto/include" >> "$GITHUB_ENV"
echo "HEFESTO_MODULES_HOME=/usr/local/share/hefesto/module" >> "$GITHUB_ENV"
sudo chown -R runner /usr/local/share/hefesto
cd ../..
rm -rf hefesto
- name: Install lcov-generator
shell: bash
run: |
git clone https://github.com/rafael-santiago/helios
cd helios
sudo -E hefesto --install=lcov-generator
sudo chown -R runner /usr/local/share/hefesto
cd ../
rm -rf helios
- name: Clone project repo
uses: actions/checkout@v3
with:
submodules: true
- name: Invoke Hefesto
shell: bash
run: |
cd src
sudo -E hefesto --coverage
- name: Tar coverage report
shell: bash
run: |
sudo tar -cvf /home/libmacgonuts-coverage.tar src/reports/macgonuts-static-lib
sudo chown runner /home/libmacgonuts-coverage.tar
- name: Upload LCOV results
uses: actions/upload-artifact@v2
with:
name: libmacgonuts-coverage-report
path: /home/libmacgonuts-coverage.tar
retention-days: 7
- name: Commit and push coverage info when needed
shell: bash
run: |
git config --global user.name "MacgonutsCIBot"
git config --global user.email "macgonutscibot@users.noreply.github.com"
git diff --exit-code --quiet README.md || (git commit -am "Automated coverage update";git push origin ${{ github.ref_name }})