forked from NOAA-EMC/GSI
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
MEGB added to one version before Sho's localization
- Loading branch information
Showing
400 changed files
with
29,958 additions
and
33,972 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
<!-- PLEASE READ --> | ||
<!-- | ||
Before opening a PR, please note these guidelines: | ||
- Each PR should only address ONE topic and have an associated issue | ||
- No hardcoded or paths to personal directories should be present | ||
- No temporary or backup files should be committed | ||
- Any code that was disabled by being commented out should be removed | ||
--> | ||
|
||
**Description** | ||
|
||
<!-- Please include relevant motivation and context. --> | ||
<!-- Please include a summary of the change and which issue is fixed. --> | ||
<!-- List any dependencies that are required for this change. --> | ||
|
||
<!-- Please provide reference to the issue this pull request is addressing. --> | ||
<!-- For e.g. Fixes #IssueNumber --> | ||
|
||
**Type of change** | ||
|
||
Please delete options that are not relevant. | ||
|
||
- [ ] Bug fix (non-breaking change which fixes an issue) | ||
- [ ] New feature (non-breaking change which adds functionality) | ||
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) | ||
- [ ] This change requires a documentation update | ||
|
||
**How Has This Been Tested?** | ||
|
||
<!-- Please describe the tests that you ran to verify your changes and on the platforms these tests were conducted. --> | ||
<!-- Provide instructions so we can reproduce. --> | ||
<!-- Please also list any relevant details for your test configuration --> | ||
|
||
**Checklist** | ||
|
||
- [ ] My code follows the style guidelines of this project | ||
- [ ] I have performed a self-review of my own code | ||
- [ ] I have commented my code, particularly in hard-to-understand areas | ||
- [ ] New and existing tests pass with my changes | ||
- [ ] Any dependent changes have been merged and published |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
name: GCC Linux Build | ||
on: [push, pull_request] | ||
on: [push, pull_request, workflow_dispatch] | ||
|
||
# Use custom shell with -l so .bash_profile is sourced | ||
# without having to do it in manually every step | ||
|
@@ -8,88 +8,84 @@ defaults: | |
shell: bash -leo pipefail {0} | ||
|
||
env: | ||
cache_key: gcc3 # The number (#) following the cache_key "gcc" is to flush Action cache. | ||
cache_key: gcc | ||
CC: gcc-10 | ||
FC: gfortran-10 | ||
CXX: g++-10 | ||
|
||
# A note on flushing Action cache and relevance to "cache_key" above. | ||
# There is no way to flush the Action cache, and hence a number (#) is appended | ||
# to the "cache_key" (gcc). | ||
# If the dependencies change, increment this number and a new cache will be | ||
# generated by the dependency build step "setup" | ||
# There is a Github issue to force clear the cache. | ||
# See discussion on: | ||
# https://stackoverflow.com/questions/63521430/clear-cache-in-github-actions | ||
|
||
# The jobs are split into: | ||
# 1. a dependency build step (setup), and | ||
# 2. a GSI build step (build) | ||
# 2. a GSI build step (gsi) | ||
# The setup is run once and the environment is cached, | ||
# so each build of GSI can reuse the cached dependencies to save time (and compute). | ||
# so each subsequent build of GSI can reuse the cached dependencies to save time (and compute). | ||
|
||
jobs: | ||
setup: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
# Checkout the GSI to get the ci/spack.yaml file | ||
- name: checkout | ||
if: steps.cache-env.outputs.cache-hit != 'true' | ||
uses: actions/checkout@v4 | ||
with: | ||
path: gsi | ||
|
||
# Cache spack, compiler and dependencies | ||
- name: cache-env | ||
id: cache-env | ||
uses: actions/cache@v2 | ||
uses: actions/cache@v3 | ||
with: | ||
path: | | ||
spack | ||
~/.spack | ||
key: spack-${{ runner.os }}-${{ env.cache_key }} | ||
|
||
- name: checkout-gsi # This is for getting spack.yaml | ||
if: steps.cache-env.outputs.cache-hit != 'true' | ||
uses: actions/checkout@v2 | ||
with: | ||
path: GSI | ||
key: spack-${{ runner.os }}-${{ env.cache_key }}-${{ hashFiles('gsi/ci/spack.yaml') }} | ||
|
||
# Install dependencies using Spack | ||
- name: install-dependencies-with-spack | ||
if: steps.cache-env.outputs.cache-hit != 'true' | ||
run: | | ||
git clone -c feature.manyFiles=true https://github.com/NOAA-EMC/spack.git | ||
sudo apt-get install cmake | ||
git clone -c feature.manyFiles=true https://github.com/JCSDA/spack.git | ||
source spack/share/spack/setup-env.sh | ||
spack env create gsi-env GSI/ci/spack.yaml | ||
spack env create gsi-env gsi/ci/spack.yaml | ||
spack env activate gsi-env | ||
spack compiler find | ||
sudo apt install cmake | ||
spack external find | ||
spack add [email protected] | ||
spack concretize | ||
spack install --dirty -v | ||
spack install -v --fail-fast --dirty | ||
spack clean -a | ||
build: | ||
gsi: | ||
needs: setup | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- name: checkout-gsi | ||
uses: actions/checkout@v2 | ||
- name: checkout | ||
uses: actions/checkout@v4 | ||
with: | ||
path: GSI | ||
path: gsi | ||
|
||
- name: cache-env | ||
id: cache-env | ||
uses: actions/cache@v2 | ||
uses: actions/cache@v3 | ||
with: | ||
path: | | ||
spack | ||
~/.spack | ||
key: spack-${{ runner.os }}-${{ env.cache_key }} | ||
key: spack-${{ runner.os }}-${{ env.cache_key }}-${{ hashFiles('gsi/ci/spack.yaml') }} | ||
|
||
- name: build-gsi | ||
- name: build | ||
run: | | ||
source spack/share/spack/setup-env.sh | ||
spack env activate gsi-env | ||
export CC=mpicc | ||
export FC=mpif90 | ||
cd GSI | ||
cd gsi | ||
mkdir -p build && cd build | ||
cmake -DCMAKE_INSTALL_PREFIX=../install -DGSI_MODE=Regional -DENKF_MODE=GFS -DBUILD_REG_TESTING=OFF -DBUILD_NCDIAG=OFF .. | ||
cmake -DCMAKE_INSTALL_PREFIX=../install -DGSI_MODE=Regional -DENKF_MODE=GFS -DBUILD_REG_TESTING=OFF .. | ||
make -j2 VERBOSE=1 | ||
make install | ||
env: | ||
CC: mpicc | ||
FC: mpif90 |
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,4 @@ | ||
[submodule "fix"] | ||
path = fix | ||
url = gerrit:GSI-fix | ||
[submodule "ncdiag"] | ||
path = src/ncdiag | ||
url = https://github.com/NOAA-EMC/GSI-ncdiag | ||
branch = v1.0.0 | ||
path = fix | ||
url = https://github.com/NOAA-EMC/GSI-fix | ||
branch = develop |
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
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
Oops, something went wrong.