diff --git a/.github/workflows/container.yml b/.github/workflows/inert_container.yml similarity index 97% rename from .github/workflows/container.yml rename to .github/workflows/inert_container.yml index 48e6be59..2126b0e2 100644 --- a/.github/workflows/container.yml +++ b/.github/workflows/inert_container.yml @@ -1,4 +1,4 @@ -name: container +name: inert_container on: [ workflow_dispatch ] #on: [ push, workflow_dispatch ] diff --git a/.github/workflows/machine.yml b/.github/workflows/inert_machine.yml similarity index 97% rename from .github/workflows/machine.yml rename to .github/workflows/inert_machine.yml index d92b680b..cec5c62f 100644 --- a/.github/workflows/machine.yml +++ b/.github/workflows/inert_machine.yml @@ -1,4 +1,4 @@ -name: machine +name: inert_machine on: [ workflow_dispatch ] #on: [ push, workflow_dispatch ] diff --git a/.github/workflows/inert_spack.yml b/.github/workflows/inert_spack.yml new file mode 100644 index 00000000..9da3934d --- /dev/null +++ b/.github/workflows/inert_spack.yml @@ -0,0 +1,138 @@ +name: spack_mirror +on: [ workflow_dispatch ] + +jobs: + job_one: + runs-on: ubuntu-latest + steps: + - name: grab main project + uses: actions/checkout@v4 + + - name: spack cache + id: spack-cache + uses: actions/cache@v3 + with: + key: spack-cache-sandlot-4 + path: | + ./spack + ./spack_sandlot_mirror + ./spack_sandlot_env + + - if: ${{ steps.spack-cache.outputs.cache-hit != 'true' }} + name: grab spack + uses: actions/checkout@v4 + with: + repository: 'spack/spack' + ref: 'v0.21.1' + path: './spack' + # + # git clone --depth=1 --single-branch --branch v0.21.1 https://github.com/spack/spack.git + # + + - if: ${{ steps.spack-cache.outputs.cache-hit != 'true' }} + name: create spack cache + run: | + . ./spack/share/spack/setup-env.sh + + spack env create -d ./spack_sandlot_env + spack env activate -p -d ./spack_sandlot_env + + spack config add "config:install_tree:padded_length:128" + + spack install --no-cache --add gcc@13.1.0 + spack load gcc@13.1.0 + spack compiler find + + spack install --no-cache --add cmake %gcc@13.1.0 + spack load cmake %gcc@13.1.0 + + spack concretize -f + spack install --no-cache --add hdf5+fortran+mpi %gcc@13.1.0 + spack load hdf5+fortran+mpi %gcc@13.1.0 + + spack gc -y + + rm -rf ./spack_sandlot_mirror + + spack mirror create -d ./spack_sandlot_mirror --all + spack mirror add sandlot ./spack_sandlot_mirror + + spack gpg create "My Name" "" + + #mkdir ~/private_gpg_backup + #cp ~/spack/opt/spack/gpg/*.gpg ~/private_gpg_backup + #cp ~/spack/opt/spack/gpg/pubring.* ~/mirror + + spack buildcache push ./spack_sandlot_mirror + + spack buildcache keys --install --trust --force + + spack bootstrap mirror --binary-packages ./spack_sandlot_mirror + + #spack bootstrap add --trust local-sources /metadata/sources + #spack bootstrap add --trust local-binaries /metadata/binaries + + spack env deactivate + + + job_two: + needs: job_one + runs-on: ubuntu-latest + steps: + - name: grab main project + uses: actions/checkout@v2 + + - name: spack cache + id: spack-cache + uses: actions/cache@v3 + with: + key: spack-cache-sandlot-4 + path: | + ./spack + ./spack_sandlot_mirror + ./spack_sandlot_env + + - name: build korc + run: | + . ./spack/share/spack/setup-env.sh + + spack env activate -p -d ./spack_sandlot_env + + spack mirror list + + #spack install --no-check-signature --add gcc@13.1.0 + #spack load gcc@13.1.0 + #spack compiler find + + #spack install --no-check-signature --add cmake %gcc@13.1.0 + #spack load cmake %gcc@13.1.0 + + #spack install --no-check-signature --add hdf5+fortran+mpi %gcc@13.1.0 + #spack load hdf5+fortran+mpi %gcc@13.1.0 + + spack find -ldf + + spack find -l + + set -x + which cmake + which gfortran + gfortran --version + set +x + + ./build.sh + + ctest --verbose + + spack env deactivate + + - name: Show Cache + if: failure() + shell: bash + working-directory: ${{runner.workspace}}/KORC + run: | + tree -L 2 + pwd + ls -la + cat CMakeCache.txt + diff --git a/.github/workflows/spack.yml b/.github/workflows/spack.yml index 8c3df8fb..ab06df86 100644 --- a/.github/workflows/spack.yml +++ b/.github/workflows/spack.yml @@ -5,63 +5,41 @@ jobs: job_one: runs-on: ubuntu-latest steps: - - name: grab main project - uses: actions/checkout@v2 - - - name: grab spack - uses: actions/checkout@v2 - with: - repository: spack/spack - path: ./spack - - name: spack cache id: spack-cache uses: actions/cache@v3 with: - path: ~/mirror - key: spack-cache-2 + key: spack-cache-sandlot-6 + path: | + ./spack + ~/.spack - if: ${{ steps.spack-cache.outputs.cache-hit != 'true' }} - name: create spack cache + name: grab spack + uses: actions/checkout@v4 + with: + repository: 'spack/spack' + ref: 'v0.21.1' + path: './spack' + # + # git clone --depth=1 --single-branch --branch v0.21.1 https://github.com/spack/spack.git + # + + - if: ${{ steps.spack-cache.outputs.cache-hit != 'true' }} + name: spack install run: | . ./spack/share/spack/setup-env.sh - spack env create -d . - spack env activate -p -d . - - spack config add "config:install_tree:padded_length:128" + spack config add config:install_tree:padded_length:128 - spack install --no-cache --add gcc@13.1.0 - spack load gcc@13.1.0 spack compiler find + spack install --no-cache gcc@13.2.0 + spack compiler add $(spack location -i gcc@13.2.0) - spack install --no-cache --add cmake %gcc@13.1.0 - spack load cmake %gcc@13.1.0 - - spack install --no-cache --add hdf5+fortran+mpi %gcc@13.1.0 - spack load hdf5+fortran+mpi %gcc@13.1.0 - - rm -rf ~/mirror - - spack mirror create -d ~/mirror --all - spack mirror add nacho ~/mirror - - spack gpg create "My Name" "" - - #mkdir ~/private_gpg_backup - #cp ~/spack/opt/spack/gpg/*.gpg ~/private_gpg_backup - #cp ~/spack/opt/spack/gpg/pubring.* ~/mirror - - spack buildcache push ~/mirror - - spack buildcache keys --install --trust --force + spack install --no-cache cmake %gcc@13.2.0 + spack install --no-cache hdf5+fortran+mpi %gcc@13.2.0 - spack bootstrap mirror --binary-packages ~/mirror - - #spack bootstrap add --trust local-sources /metadata/sources - #spack bootstrap add --trust local-binaries /metadata/binaries - - spack env deactivate + spack gc -y job_two: @@ -69,61 +47,50 @@ jobs: runs-on: ubuntu-latest steps: - name: grab main project - uses: actions/checkout@v2 - - - name: grab spack - uses: actions/checkout@v2 + uses: actions/checkout@v4 with: - repository: spack/spack - path: ./spack + path: './KORC' - name: spack cache id: spack-cache uses: actions/cache@v3 with: - path: ~/mirror - key: spack-cache-2 + key: spack-cache-sandlot-6 + path: | + ./spack + ~/.spack - name: build korc run: | - . ./spack/share/spack/setup-env.sh - spack env create -d . - spack env activate -p -d ./ - - spack config add "config:install_tree:padded_length:128" - - spack mirror add nacho ~/mirror - spack mirror list + pwd + tree -L 2 - spack install --no-check-signature --add gcc@13.1.0 - spack load gcc@13.1.0 - spack compiler find + . ./spack/share/spack/setup-env.sh - spack install --no-check-signature --add cmake %gcc@13.1.0 - spack load cmake %gcc@13.1.0 + #spack find -ldf + spack compilers - spack install --no-check-signature --add hdf5+fortran+mpi %gcc@13.1.0 - spack load hdf5+fortran+mpi %gcc@13.1.0 + spack load gcc@13.2.0 + spack load cmake %gcc@13.2.0 + spack load hdf5+fortran+mpi %gcc@13.2.0 set -x - which cmake - which gfortran - gfortran --version - set +x + which cmake && cmake --version + which gfortran && gfortran --version + which h5diff && h5diff --version + set -x + cd ./KORC ./build.sh - ctest --verbose - - spack env deactivate - - name: Show Cache if: failure() shell: bash - working-directory: ${{runner.workspace}}/KORC run: | tree -L 2 pwd ls -la - cat CMakeCache.txt + cat ./KORC/CMakeCache.txt + + diff --git a/README.md b/README.md index 48224be0..95e04988 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,7 @@ Spack provides an easy way to setup the gfortran compiler toolchain and other de [KORC] [user@localhost KORC]$ spack install --no-cache --add cmake %gcc@13.1.0 [KORC] [user@localhost KORC]$ spack load cmake %gcc@13.1.0 +[KORC] [user@localhost KORC]$ spack concretize -f [KORC] [user@localhost KORC]$ spack install --no-cache --add hdf5+fortran+mpi %gcc@13.1.0 [KORC] [user@localhost KORC]$ spack load hdf5+fortran+mpi %gcc@13.1.0 ```