From a345d659cf450086ef9cc5779e4645a1e6a462b7 Mon Sep 17 00:00:00 2001 From: eap Date: Tue, 16 Jul 2024 12:41:06 -0600 Subject: [PATCH 1/9] Doc updates --- doc/source/KnownIssues.rst | 4 ++-- doc/source/NewSiteConfigs.rst | 14 ++++++++++---- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/doc/source/KnownIssues.rst b/doc/source/KnownIssues.rst index 453a27289..8df5e6ece 100644 --- a/doc/source/KnownIssues.rst +++ b/doc/source/KnownIssues.rst @@ -123,9 +123,9 @@ macOS Can happen when trying to use the raster plotting scripts in ``fv3-jedi-tools``. In that case, exporting ``DYLD_LIBRARY_PATH=/usr/lib/:$DYLD_LIBRARY_PATH`` can help. If ``git`` commands fail after this, you might need to verify where ``which git`` points to (Homebrew vs module) and unload the ``git`` module. -6. ``apple-clang@15.0.0`` not yet supported +6. Not all versions of ``apple-clang@15.0.0`` are currently supported. - Building with ``apple-clang@15.0.0`` is under development and should be working soon. In the meantime, please use ``apple-clang@14.x`` or older versions. + If you are running macOS Sonoma 14.5 you may have a recent version of clang that does not yet build spack packages. On the console you should run ``clang --version`` and verify that the underlying clang compiler is ``clang-1500.1.0.2.5`` which is the version provided with Command Line Tools for XCode 15.1. You can downgrade your Command Line Tool packages by first running ``sudo rm -rf /Library/Developer/CommandLineTools`` then you can download and install the Command Line Tools 15.1 APK from `developer.apple.com _`. The Apple Developer site requires an iCloud login. ============================== Ubuntu diff --git a/doc/source/NewSiteConfigs.rst b/doc/source/NewSiteConfigs.rst index e2a3da857..3afcdb840 100644 --- a/doc/source/NewSiteConfigs.rst +++ b/doc/source/NewSiteConfigs.rst @@ -93,6 +93,9 @@ These instructions are meant to be a reference that users can follow to set up t .. note:: If you encounter build errors for gdal later on in spack-stack (see :numref:`Section %s `), you may need to install the full ``Xcode`` application and then switch ``xcode-select`` over with ``sudo xcode-select -s /Applications/Xcode.app/Contents/Developer`` (change the path if you installed Xcode somewhere else). +.. note:: + I you have clang 15.x, please read the Known Issues entry on clang 15.x (see :numref:`Section %s `). + 2. Set up an environment using the native architecture a. Arm @@ -226,20 +229,23 @@ Remember to activate the ``lua`` module environment and have MacTeX in your sear spack external find --scope system \ --exclude bison --exclude openssl \ --exclude python --exclude gettext - spack external find --scope system libiconv spack external find --scope system perl spack external find --scope system wget - # Note - only needed for running JCSDA's + # Note - only needed for running JCSDA\'s # JEDI-Skylab system (using R2D2 localhost) spack external find --scope system mysql + # Some dependency paths may be complicated by the use of homebrew casks. + # These dependencies require PATH modification to enable spack external find. + PATH="$HOMEBREW_ROOT/opt/libiconv/bin:$PATH" \ + spack external find --scope system libiconv + PATH="$HOMEBREW_ROOT/opt/curl/bin:$PATH" \ spack external find --scope system curl - # Note - Path to qt can differ by homebrew version. Check path if qt is not found. PATH="$HOMEBREW_ROOT/opt/qt@5/bin:$PATH" \ - spack external find --scope system qt + spack external find --scope system qt # Optional, only if planning to build jedi-tools environment with LaTeX support # The texlive bin directory must have been added to PATH (see above) From 19b1579a4c2ee00c757317009f5be70d1f27479a Mon Sep 17 00:00:00 2001 From: eap Date: Tue, 16 Jul 2024 12:58:49 -0600 Subject: [PATCH 2/9] Fix text for qt5 spack find, the at sign was breaking formatting --- doc/source/NewSiteConfigs.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/source/NewSiteConfigs.rst b/doc/source/NewSiteConfigs.rst index 3afcdb840..f8343caee 100644 --- a/doc/source/NewSiteConfigs.rst +++ b/doc/source/NewSiteConfigs.rst @@ -94,7 +94,7 @@ These instructions are meant to be a reference that users can follow to set up t If you encounter build errors for gdal later on in spack-stack (see :numref:`Section %s `), you may need to install the full ``Xcode`` application and then switch ``xcode-select`` over with ``sudo xcode-select -s /Applications/Xcode.app/Contents/Developer`` (change the path if you installed Xcode somewhere else). .. note:: - I you have clang 15.x, please read the Known Issues entry on clang 15.x (see :numref:`Section %s `). + If you have clang 15.x, please read the Known Issues entry on clang 15.x (see :numref:`Section %s `). 2. Set up an environment using the native architecture @@ -244,8 +244,8 @@ Remember to activate the ``lua`` module environment and have MacTeX in your sear PATH="$HOMEBREW_ROOT/opt/curl/bin:$PATH" \ spack external find --scope system curl - PATH="$HOMEBREW_ROOT/opt/qt@5/bin:$PATH" \ - spack external find --scope system qt + ``PATH="$HOMEBREW_ROOT/opt/qt@5/bin:$PATH" \ + spack external find --scope system qt`` # Optional, only if planning to build jedi-tools environment with LaTeX support # The texlive bin directory must have been added to PATH (see above) From 86bfc9083d1ed6103b40d7efb050d51b0de387b2 Mon Sep 17 00:00:00 2001 From: eap Date: Tue, 16 Jul 2024 13:04:29 -0600 Subject: [PATCH 3/9] Try backslash escape --- doc/source/NewSiteConfigs.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/source/NewSiteConfigs.rst b/doc/source/NewSiteConfigs.rst index f8343caee..ae23b56ce 100644 --- a/doc/source/NewSiteConfigs.rst +++ b/doc/source/NewSiteConfigs.rst @@ -244,8 +244,8 @@ Remember to activate the ``lua`` module environment and have MacTeX in your sear PATH="$HOMEBREW_ROOT/opt/curl/bin:$PATH" \ spack external find --scope system curl - ``PATH="$HOMEBREW_ROOT/opt/qt@5/bin:$PATH" \ - spack external find --scope system qt`` + PATH="$HOMEBREW_ROOT/opt/qt\@5/bin:$PATH" \ + spack external find --scope system qt # Optional, only if planning to build jedi-tools environment with LaTeX support # The texlive bin directory must have been added to PATH (see above) From c2fa9d02595aaf5ef9b6aec6392f2ee9977d2100 Mon Sep 17 00:00:00 2001 From: eap Date: Tue, 16 Jul 2024 13:21:11 -0600 Subject: [PATCH 4/9] giving up on this, seems to be a sphinx error. Rst renderers cannot reproduce the misformatted qt find command --- doc/source/NewSiteConfigs.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/source/NewSiteConfigs.rst b/doc/source/NewSiteConfigs.rst index ae23b56ce..14ceaf341 100644 --- a/doc/source/NewSiteConfigs.rst +++ b/doc/source/NewSiteConfigs.rst @@ -232,7 +232,7 @@ Remember to activate the ``lua`` module environment and have MacTeX in your sear spack external find --scope system perl spack external find --scope system wget - # Note - only needed for running JCSDA\'s + # Note - only needed for running JCSDA's # JEDI-Skylab system (using R2D2 localhost) spack external find --scope system mysql @@ -244,7 +244,7 @@ Remember to activate the ``lua`` module environment and have MacTeX in your sear PATH="$HOMEBREW_ROOT/opt/curl/bin:$PATH" \ spack external find --scope system curl - PATH="$HOMEBREW_ROOT/opt/qt\@5/bin:$PATH" \ + PATH="$HOMEBREW_ROOT/opt/qt@5/bin:$PATH" \ spack external find --scope system qt # Optional, only if planning to build jedi-tools environment with LaTeX support From 2033af03c3496abfe85dbdebf91cbf7b41121c32 Mon Sep 17 00:00:00 2001 From: Evan Parker Date: Wed, 17 Jul 2024 13:28:20 -0600 Subject: [PATCH 5/9] Update doc/source/KnownIssues.rst Co-authored-by: Stephen Herbener <32968781+srherbener@users.noreply.github.com> --- doc/source/KnownIssues.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/source/KnownIssues.rst b/doc/source/KnownIssues.rst index 8df5e6ece..f4b3cbc68 100644 --- a/doc/source/KnownIssues.rst +++ b/doc/source/KnownIssues.rst @@ -125,7 +125,7 @@ macOS 6. Not all versions of ``apple-clang@15.0.0`` are currently supported. - If you are running macOS Sonoma 14.5 you may have a recent version of clang that does not yet build spack packages. On the console you should run ``clang --version`` and verify that the underlying clang compiler is ``clang-1500.1.0.2.5`` which is the version provided with Command Line Tools for XCode 15.1. You can downgrade your Command Line Tool packages by first running ``sudo rm -rf /Library/Developer/CommandLineTools`` then you can download and install the Command Line Tools 15.1 APK from `developer.apple.com _`. The Apple Developer site requires an iCloud login. + If you are running macOS Sonoma 14.5 you may have a recent version of clang that does not yet build spack packages. On the console you should run ``clang --version`` and verify that the underlying clang compiler is ``clang-1500.1.0.2.5`` which is the version provided with Command Line Tools for XCode 15.1. You can downgrade your Command Line Tool packages by first running ``sudo rm -rf /Library/Developer/CommandLineTools`` then you can download and install the Command Line Tools 15.1 APK from `developer.apple.com `_. The Apple Developer site requires an iCloud login. ============================== Ubuntu From 7a5895b881e29fca05fb1e2d11a8689f118cd447 Mon Sep 17 00:00:00 2001 From: eap Date: Thu, 18 Jul 2024 11:55:54 -0600 Subject: [PATCH 6/9] add libiconv install --- doc/source/NewSiteConfigs.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/source/NewSiteConfigs.rst b/doc/source/NewSiteConfigs.rst index 14ceaf341..132abb3d1 100644 --- a/doc/source/NewSiteConfigs.rst +++ b/doc/source/NewSiteConfigs.rst @@ -149,6 +149,7 @@ These instructions are meant to be a reference that users can follow to set up t brew install curl brew install cmake brew install openssl + brew install libiconv # Note - need to pin to version 5 brew install qt@5 From 173e1b16f363bab4cde8204cda0d041488182226 Mon Sep 17 00:00:00 2001 From: eap Date: Thu, 18 Jul 2024 21:40:32 -0600 Subject: [PATCH 7/9] trigger-ci From 70e1cfede7fb2d3382826aafa00e0c4371a46cb0 Mon Sep 17 00:00:00 2001 From: eap Date: Thu, 18 Jul 2024 22:14:47 -0600 Subject: [PATCH 8/9] add notest copies of required workflows that only run for ignored paths --- .../workflows/macos-ci-aarch64-notest.yaml | 23 +++++++++++++++++++ .../ubuntu-ci-x86_64-gnu-notest.yaml | 23 +++++++++++++++++++ .../ubuntu-ci-x86_64-intel-notest.yaml | 23 +++++++++++++++++++ 3 files changed, 69 insertions(+) create mode 100644 .github/workflows/macos-ci-aarch64-notest.yaml create mode 100644 .github/workflows/ubuntu-ci-x86_64-gnu-notest.yaml create mode 100644 .github/workflows/ubuntu-ci-x86_64-intel-notest.yaml diff --git a/.github/workflows/macos-ci-aarch64-notest.yaml b/.github/workflows/macos-ci-aarch64-notest.yaml new file mode 100644 index 000000000..5d7389557 --- /dev/null +++ b/.github/workflows/macos-ci-aarch64-notest.yaml @@ -0,0 +1,23 @@ +name: macos-ci-aarch64-build +on: + pull_request: + paths: + - 'configs/sites/**' + - 'doc/**' + - '**.md' + - '.github/ISSUE_TEMPLATE/*' + - '.gitignore' + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +defaults: + run: + shell: bash + +jobs: + macos-ci-aarch64-build: + runs-on: [macos-ci-aarch64] + steps: + - run: 'echo "No build required"' diff --git a/.github/workflows/ubuntu-ci-x86_64-gnu-notest.yaml b/.github/workflows/ubuntu-ci-x86_64-gnu-notest.yaml new file mode 100644 index 000000000..59ca6d5d9 --- /dev/null +++ b/.github/workflows/ubuntu-ci-x86_64-gnu-notest.yaml @@ -0,0 +1,23 @@ +name: ubuntu-ci-c6a-x86_64-gnu-build +on: + pull_request: + paths: + - 'configs/sites/**' + - 'doc/**' + - '**.md' + - '.github/ISSUE_TEMPLATE/*' + - '.gitignore' + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +defaults: + run: + shell: bash + +jobs: + ubuntu-ci-c6a-x86_64-gnu-build: + runs-on: [ubuntu-ci-c6a-x86_64] + steps: + - run: 'echo "No build required"' diff --git a/.github/workflows/ubuntu-ci-x86_64-intel-notest.yaml b/.github/workflows/ubuntu-ci-x86_64-intel-notest.yaml new file mode 100644 index 000000000..733b43675 --- /dev/null +++ b/.github/workflows/ubuntu-ci-x86_64-intel-notest.yaml @@ -0,0 +1,23 @@ +name: ubuntu-ci-c6a-x86_64-intel-build +on: + pull_request: + paths: + - 'configs/sites/**' + - 'doc/**' + - '**.md' + - '.github/ISSUE_TEMPLATE/*' + - '.gitignore' + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +defaults: + run: + shell: bash + +jobs: + ubuntu-ci-c6a-x86_64-intel-build: + runs-on: [ubuntu-ci-c6a-x86_64] + steps: + - run: 'echo "No build required"' From b1135563eb4ffd7855c7c9516c70ff710943c899 Mon Sep 17 00:00:00 2001 From: eap Date: Thu, 18 Jul 2024 22:33:15 -0600 Subject: [PATCH 9/9] remove notest workflows, add rule to ignore them in tests --- .../workflows/macos-ci-aarch64-notest.yaml | 23 ------------------- .github/workflows/macos-ci-aarch64.yaml | 1 + .../ubuntu-ci-x86_64-gnu-notest.yaml | 23 ------------------- .github/workflows/ubuntu-ci-x86_64-gnu.yaml | 1 + .../ubuntu-ci-x86_64-intel-notest.yaml | 23 ------------------- .github/workflows/ubuntu-ci-x86_64-intel.yaml | 1 + 6 files changed, 3 insertions(+), 69 deletions(-) delete mode 100644 .github/workflows/macos-ci-aarch64-notest.yaml delete mode 100644 .github/workflows/ubuntu-ci-x86_64-gnu-notest.yaml delete mode 100644 .github/workflows/ubuntu-ci-x86_64-intel-notest.yaml diff --git a/.github/workflows/macos-ci-aarch64-notest.yaml b/.github/workflows/macos-ci-aarch64-notest.yaml deleted file mode 100644 index 5d7389557..000000000 --- a/.github/workflows/macos-ci-aarch64-notest.yaml +++ /dev/null @@ -1,23 +0,0 @@ -name: macos-ci-aarch64-build -on: - pull_request: - paths: - - 'configs/sites/**' - - 'doc/**' - - '**.md' - - '.github/ISSUE_TEMPLATE/*' - - '.gitignore' - -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} - cancel-in-progress: true - -defaults: - run: - shell: bash - -jobs: - macos-ci-aarch64-build: - runs-on: [macos-ci-aarch64] - steps: - - run: 'echo "No build required"' diff --git a/.github/workflows/macos-ci-aarch64.yaml b/.github/workflows/macos-ci-aarch64.yaml index 233a2222f..49a4db694 100644 --- a/.github/workflows/macos-ci-aarch64.yaml +++ b/.github/workflows/macos-ci-aarch64.yaml @@ -6,6 +6,7 @@ on: - 'doc/**' - '**.md' - '.github/ISSUE_TEMPLATE/*' + - '.github/workflows/macos-ci-aarch64-notest.yaml' - '.gitignore' workflow_dispatch: diff --git a/.github/workflows/ubuntu-ci-x86_64-gnu-notest.yaml b/.github/workflows/ubuntu-ci-x86_64-gnu-notest.yaml deleted file mode 100644 index 59ca6d5d9..000000000 --- a/.github/workflows/ubuntu-ci-x86_64-gnu-notest.yaml +++ /dev/null @@ -1,23 +0,0 @@ -name: ubuntu-ci-c6a-x86_64-gnu-build -on: - pull_request: - paths: - - 'configs/sites/**' - - 'doc/**' - - '**.md' - - '.github/ISSUE_TEMPLATE/*' - - '.gitignore' - -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} - cancel-in-progress: true - -defaults: - run: - shell: bash - -jobs: - ubuntu-ci-c6a-x86_64-gnu-build: - runs-on: [ubuntu-ci-c6a-x86_64] - steps: - - run: 'echo "No build required"' diff --git a/.github/workflows/ubuntu-ci-x86_64-gnu.yaml b/.github/workflows/ubuntu-ci-x86_64-gnu.yaml index 2b2ca631b..02e6f0a03 100644 --- a/.github/workflows/ubuntu-ci-x86_64-gnu.yaml +++ b/.github/workflows/ubuntu-ci-x86_64-gnu.yaml @@ -6,6 +6,7 @@ on: - 'doc/**' - '**.md' - '.github/ISSUE_TEMPLATE/*' + - '.github/workflows/ubuntu-ci-x86_64-gnu-notest.yaml' - '.gitignore' workflow_dispatch: diff --git a/.github/workflows/ubuntu-ci-x86_64-intel-notest.yaml b/.github/workflows/ubuntu-ci-x86_64-intel-notest.yaml deleted file mode 100644 index 733b43675..000000000 --- a/.github/workflows/ubuntu-ci-x86_64-intel-notest.yaml +++ /dev/null @@ -1,23 +0,0 @@ -name: ubuntu-ci-c6a-x86_64-intel-build -on: - pull_request: - paths: - - 'configs/sites/**' - - 'doc/**' - - '**.md' - - '.github/ISSUE_TEMPLATE/*' - - '.gitignore' - -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} - cancel-in-progress: true - -defaults: - run: - shell: bash - -jobs: - ubuntu-ci-c6a-x86_64-intel-build: - runs-on: [ubuntu-ci-c6a-x86_64] - steps: - - run: 'echo "No build required"' diff --git a/.github/workflows/ubuntu-ci-x86_64-intel.yaml b/.github/workflows/ubuntu-ci-x86_64-intel.yaml index 58da62801..9808bef0d 100644 --- a/.github/workflows/ubuntu-ci-x86_64-intel.yaml +++ b/.github/workflows/ubuntu-ci-x86_64-intel.yaml @@ -6,6 +6,7 @@ on: - 'doc/**' - '**.md' - '.github/ISSUE_TEMPLATE/*' + - '.github/workflows/ubuntu-ci-x86_64-intel-notest.yaml' - '.gitignore' workflow_dispatch: