Feature/jobshell fugaku #218
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: build_FE-Project | |
on: | |
pull_request: | |
types: [opened, synchronize] | |
#push: | |
# branches: | |
# - feature/ci_* | |
jobs: | |
build: | |
name: Build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout FE-project repository | |
uses: actions/checkout@v1 | |
- name: Install Fortran compiler & NetCDF & OpenMPI & lapack & openssh | |
run: | | |
sudo apt-get update | |
echo "Update information of package list.." | |
sudo apt-get update | |
echo "Install Fortran compiler .." | |
sudo apt-get install -y gfortran | |
echo "Install NetCDF library .." | |
sudo apt-get install -y libnetcdf-dev libnetcdff-dev | |
echo "Install OpenMPI library .." | |
sudo apt-get install -y openmpi-bin libopenmpi-dev | |
echo "Install lapack .." | |
sudo apt-get install -y libopenblas-dev liblapack-dev | |
echo "Install openssh .." | |
sudo apt-get install -y openssh-client | |
- name: Install SSH key | |
uses: shimataro/ssh-key-action@v2 | |
with: | |
key: ${{ secrets.SSH_KEY }} | |
name: id_rsa | |
known_hosts: ${{ secrets.KNOWN_HOSTS }} | |
config: | | |
Host scalelib_host | |
HostName ${{ secrets.SCALELIB_SERVER_HOST }} | |
User ${{ secrets.SCALELIB_SERVER_USER }} | |
IdentityFile ~/.ssh/id_rsa | |
- name: Install SCALE library | |
run: | | |
cd ${GITHUB_WORKSPACE}/.. | |
scp scalelib_host:FE-Project_GitActions/scalelib_ubuntu_latest.zip . | |
unzip scalelib_ubuntu_latest.zip && mv scalelib_ubuntu_latest scale | |
- name: Build FElib | |
run: | | |
echo "Build FE library .." | |
export SCALE_FE_SYS=Linux64-gnu-ompi | |
export SCALE=${GITHUB_WORKSPACE}/../scale | |
make -j 2 -C FElib/src | |
- name: unit test for common | |
env: | |
testdirs: linkedlist time_manager sparsemat timeint_rk | |
run: | | |
echo "Perform unit tests .." | |
export SCALE_FE_SYS=Linux64-gnu-ompi | |
export SCALE=${GITHUB_WORKSPACE}/../scale | |
cd FElib/test/common | |
for testdir in ${testdirs}; do | |
make -C ${testdir} && make -C ${testdir} run | |
done | |
- name: unit test for FE | |
env: | |
testdirs: polynominal mesh_linedom1d mesh_rectdom2d_quadrilateral mesh_cubedsphere2d mesh_cubedom3d_hexahedral mesh_cubedsphere3d field_linedom1d field_rectdom2d_quadrilateral field_cubedspheredom2d field_cubedom3d_hexahedral field_cubedspheredom3d | |
run: | | |
echo "Perform unit tests .." | |
export SCALE_FE_SYS=Linux64-gnu-ompi | |
export SCALE=${GITHUB_WORKSPACE}/../scale | |
cd FElib/test/FE | |
for testdir in ${testdirs}; do | |
make -C ${testdir} && make -C ${testdir} run | |
done | |
- name: unit test for model framework | |
env: | |
testdirs: model_framework | |
run: | | |
echo "Perform unit tests .." | |
export SCALE_FE_SYS=Linux64-gnu-ompi | |
export SCALE=${GITHUB_WORKSPACE}/../scale | |
cd FElib/test/framework | |
for testdir in ${testdirs}; do | |
make -C ${testdir} && make -C ${testdir} run | |
done | |
- name: samples | |
run: | | |
echo "Build samples .." | |
export SCALE_FE_SYS=Linux64-gnu-ompi | |
export SCALE=${GITHUB_WORKSPACE}/../scale | |
cd sample/ | |
make -C advect1d | |
make -C advect1d_fvm | |
make -C advdiff1d | |
make -C advect2d | |
make -C advect2dGlobal | |
make -C advect2d_fvm | |
make -C advect3d | |
make -C advect3dGlobal | |
make -C advect3d_hevi | |
make -C euler3d_hevi | |
make -C eigen_analysis | |
- name: Build model | |
run: | | |
echo "Build models .." | |
cd model/ | |
export SCALE_FE_SYS=Linux64-gnu-ompi | |
export SCALE=${GITHUB_WORKSPACE}/../scale | |
echo "Build global shallow water model" | |
make -C global_shallow_water/src | |
echo "Build 2D nonhydrostatic atmospheric model" | |
make -C atm_nonhydro2d/src | |
echo "Build 3D nonhydrostatic atmospheric model" | |
make -C atm_nonhydro3d/src | |
echo "Build 3D nonhydrostatic atmospheric model / utils" | |
make -C atm_nonhydro3d/util/regrid_tool | |