4
4
5
5
Build :
6
6
runs-on : ${{ matrix.os }}
7
+ permissions :
8
+ contents : write
7
9
strategy :
8
10
fail-fast : false
9
11
matrix :
@@ -16,34 +18,37 @@ jobs:
16
18
17
19
steps :
18
20
- name : Checkout code
19
- uses : actions/checkout@v2
21
+ uses : actions/checkout@v3
20
22
with :
21
23
submodules : recursive
22
24
23
25
- name : Install Python
24
- uses : actions/setup-python@v1 # Use pip to install latest CMake, & FORD/Jin2For, etc.
26
+ uses : actions/setup-python@v4 # Use pip to install latest CMake, & FORD/Jin2For, etc.
25
27
with :
26
28
python-version : ${{ matrix.python-version }}
27
29
28
30
- name : Setup Graphviz
29
31
uses : ts-graphviz/setup-graphviz@v1
30
32
31
33
- name : Setup Fortran Package Manager
32
- uses : fortran-lang/setup-fpm@v4
34
+ uses : fortran-lang/setup-fpm@v5
33
35
with :
34
36
github-token : ${{ secrets.GITHUB_TOKEN }}
35
37
36
38
- name : Install Python dependencies
37
39
if : contains( matrix.os, 'ubuntu')
38
40
run : |
39
41
python -m pip install --upgrade pip
40
- pip install matplotlib ford
42
+ pip install ford numpy matplotlib
41
43
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
42
44
43
45
- name : Install GFortran Linux
44
46
if : contains( matrix.os, 'ubuntu')
45
47
run : |
46
48
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 }}
47
52
sudo update-alternatives \
48
53
--install /usr/bin/gcc gcc /usr/bin/gcc-${{ matrix.gcc_v }} 100 \
49
54
--slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${{ matrix.gcc_v }} \
@@ -58,23 +63,24 @@ jobs:
58
63
- name : Create coverage report
59
64
run : |
60
65
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
63
69
lcov --add-tracefile ${{ env.COV_DIR }}/coverage.base --add-tracefile ${{ env.COV_DIR }}/coverage.capture --output-file ${{ env.COV_DIR }}/coverage.info
64
70
env :
65
71
COV_DIR : build/coverage
66
72
67
73
- name : Upload coverage report
68
- uses : codecov/codecov-action@v2
74
+ uses : codecov/codecov-action@v3
69
75
with :
70
76
files : build/coverage/coverage.info
71
77
72
78
- name : Build documentation
73
- run : ford ./numdiff .md
79
+ run : ford ./ford .md
74
80
75
81
- name : Deploy Documentation
76
82
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
78
84
with :
79
85
branch : gh-pages # The branch the action should deploy to.
80
86
folder : doc # The folder the action should deploy.
0 commit comments