Skip to content

Commit be8ad2e

Browse files
committed
CI update
1 parent 37e8721 commit be8ad2e

File tree

1 file changed

+17
-11
lines changed

1 file changed

+17
-11
lines changed

.github/workflows/CI.yml

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ jobs:
44

55
Build:
66
runs-on: ${{ matrix.os }}
7+
permissions:
8+
contents: write
79
strategy:
810
fail-fast: false
911
matrix:
@@ -16,34 +18,37 @@ jobs:
1618

1719
steps:
1820
- name: Checkout code
19-
uses: actions/checkout@v2
21+
uses: actions/checkout@v3
2022
with:
2123
submodules: recursive
2224

23-
- name: Set up Python 3.x
24-
uses: actions/setup-python@v1 # Use pip to install latest CMake, & FORD/Jin2For, etc.
25+
- name: Install Python
26+
uses: actions/setup-python@v4 # Use pip to install latest CMake, & FORD/Jin2For, etc.
2527
with:
2628
python-version: ${{ matrix.python-version }}
2729

2830
- name: Setup Graphviz
2931
uses: ts-graphviz/setup-graphviz@v1
3032

3133
- name: Setup Fortran Package Manager
32-
uses: fortran-lang/setup-fpm@v4
34+
uses: fortran-lang/setup-fpm@v5
3335
with:
3436
github-token: ${{ secrets.GITHUB_TOKEN }}
3537

3638
- name: Install Python dependencies
3739
if: contains( matrix.os, 'ubuntu')
3840
run: |
3941
python -m pip install --upgrade pip
40-
pip install numpy matplotlib ford
42+
pip install ford numpy matplotlib
4143
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
4244
4345
- name: Install GFortran Linux
4446
if: contains( matrix.os, 'ubuntu')
4547
run: |
4648
sudo apt-get install lcov
49+
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
50+
sudo apt-get update
51+
sudo apt-get install -y gcc-${{ matrix.gcc_v }} gfortran-${{ matrix.gcc_v }}
4752
sudo update-alternatives \
4853
--install /usr/bin/gcc gcc /usr/bin/gcc-${{ matrix.gcc_v }} 100 \
4954
--slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${{ matrix.gcc_v }} \
@@ -53,28 +58,29 @@ jobs:
5358
# run: fpm build --profile release
5459

5560
- name: Run tests
56-
run: fpm test --profile debug --flag -coverage
61+
run: fpm test --profile release --flag -coverage
5762

5863
- name: Create coverage report
5964
run: |
6065
mkdir -p ${{ env.COV_DIR }}
61-
lcov --capture --initial --base-directory . --directory build/gfortran_*/ --output-file ${{ env.COV_DIR }}/coverage.base
62-
lcov --capture --base-directory . --directory build/gfortran_*/ --output-file ${{ env.COV_DIR }}/coverage.capture
66+
mv ./build/gfortran_*/*/* ${{ env.COV_DIR }}
67+
lcov --capture --initial --base-directory . --directory ${{ env.COV_DIR }} --output-file ${{ env.COV_DIR }}/coverage.base
68+
lcov --capture --base-directory . --directory ${{ env.COV_DIR }} --output-file ${{ env.COV_DIR }}/coverage.capture
6369
lcov --add-tracefile ${{ env.COV_DIR }}/coverage.base --add-tracefile ${{ env.COV_DIR }}/coverage.capture --output-file ${{ env.COV_DIR }}/coverage.info
6470
env:
6571
COV_DIR: build/coverage
6672

6773
- name: Upload coverage report
68-
uses: codecov/codecov-action@v2
74+
uses: codecov/codecov-action@v3
6975
with:
70-
files: build/coverage/coverage.info
76+
files: build/coverage/coverage.info
7177

7278
- name: Build documentation
7379
run: ford ./pyplot-fortran.md
7480

7581
- name: Deploy Documentation
7682
if: github.ref == 'refs/heads/master'
77-
uses: JamesIves/github-pages-deploy-action@4.1.0
83+
uses: JamesIves/github-pages-deploy-action@v4.4.1
7884
with:
7985
branch: gh-pages # The branch the action should deploy to.
8086
folder: doc # The folder the action should deploy.

0 commit comments

Comments
 (0)