Skip to content

Conversation

@samsrabin
Copy link
Member

@samsrabin samsrabin commented Oct 3, 2024

Description of changes

  • Removes dependence on outdated version of sphinx_rtd_theme
  • Enables embedding of Markdown docs in .rst files (this feature is blocking [WIP] Add hillslope scripts (to python/ctsm/) and external, plus docs #2425)
  • Adds GitHub Workflow jobs (on push, pull_request, workflow_dispatch) to test doc build with both make and build_docs calls:
    • With minimal Python setup and with latest published ghcr.io/escomp/ctsm/ctsm-docs container whenever anything changes in docs/
    • With ctsm_pylib whenever anything changes in ctsm_pylib env file, and also at 8 am UTC Mondays
    • With a test build of the ghcr.io/escomp/ctsm/ctsm-docs container whenever the setup of that container changes
  • Adds GitHub workflow job to build and publish ghcr.io/escomp/ctsm/ctsm-docs container whenever it's updated
  • New GitHub workflows allow:
  • Publish docs update on merge No, do this separately. See Automatically publish updated docs #2839.

Version before rebase is preserved here.

Contributors other than yourself, if any: None

CTSM Issues Fixed:

Are answers expected to change (and if so in what way)? Model code is unaffected. Various parts of the documentation will see minor changes.

Any User Interface Changes (namelist or namelist defaults changes)? No

Testing performed, if any: Local builds and new GitHub Workflows.

@samsrabin samsrabin added documentation additions or edits to user-facing documentation or its infrastructure next this should get some attention in the next week or two. Normally each Thursday SE meeting. labels Oct 3, 2024
@samsrabin samsrabin added this to the ctsm6.0.0 (code freeze) milestone Oct 3, 2024
@wwieder wwieder removed the next this should get some attention in the next week or two. Normally each Thursday SE meeting. label Oct 3, 2024
@samsrabin samsrabin force-pushed the update-docs-builder-2 branch 2 times, most recently from ff003dd to c3788bb Compare October 3, 2024 19:48
@samsrabin samsrabin added code health improving internal code structure to make easier to maintain (sustainability) testing additions or changes to tests test: none No tests required (e.g. tools/contrib) enhancement new capability or improved behavior of existing capability labels Oct 3, 2024
@samsrabin samsrabin mentioned this pull request Oct 4, 2024
@samsrabin samsrabin changed the base branch from master to b4b-dev October 7, 2024 22:06
@samsrabin samsrabin added the PR status: awaiting review Work on this PR is paused while waiting for review. label Oct 8, 2024
@samsrabin samsrabin marked this pull request as draft October 8, 2024 16:19
@samsrabin samsrabin removed the PR status: awaiting review Work on this PR is paused while waiting for review. label Oct 8, 2024
@samsrabin samsrabin self-assigned this Oct 8, 2024
@samsrabin samsrabin linked an issue Oct 31, 2024 that may be closed by this pull request
@samsrabin samsrabin added devops Development Operations to improve development throughput, E.g., adding GitHub Workflows blocked: dependency Wait to work on this until dependency is resolved next this should get some attention in the next week or two. Normally each Thursday SE meeting. labels Mar 6, 2025
@samsrabin samsrabin added bfb bit-for-bit and removed next this should get some attention in the next week or two. Normally each Thursday SE meeting. labels Mar 13, 2025
@samsrabin samsrabin marked this pull request as ready for review April 21, 2025 22:55
@samsrabin samsrabin removed the blocked: dependency Wait to work on this until dependency is resolved label Apr 21, 2025
@ekluzek ekluzek requested review from billsacks and ekluzek April 28, 2025 16:40
Copy link
Collaborator

@ekluzek ekluzek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome. Great work here. You already had us try the build workflow out and it worked for the group. So it obviously is working.

I have some suggestions, comments, and questions. I think the only important things I note is that ESMCI/doc-builder will need to be updated (but the new workflow is already telling you that). And I thought version_list should be different.

But, approving so you can do what you need to do and not need to get back to me.

@github-project-automation github-project-automation bot moved this from In progress - b4b-dev to In progress - master in CTSM: Upcoming tags May 8, 2025
@ekluzek
Copy link
Collaborator

ekluzek commented May 8, 2025

@billsacks it seems like this would be good for you to review some of this. Just the doc building part of this that is. So ignore the .github workflow part and the python directory part, and just look at the changes under the doc directory that are outside of the users-guide and tech-note changes.

Let us know if that's something you could do. Thanks for considering.

@samsrabin
Copy link
Member Author

samsrabin commented May 8, 2025

File issue:

  • Fix links that are messed up because they assume capital letter in filename. E.g., Running-with-custom-crop-calendars.rst in doc/source/users_guide/running-special-cases/index.rst. That page path seems to get produced as running-with-custom-crop-calendars.html instead of Running-with-custom-crop-calendars.html, so the link is broken.
  • Add a GitHub workflow to fail if any .rst or .md filename in (or linked in) the docs has a capital letter.

Added as #3121.

Copy link
Member

@billsacks billsacks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I took a quick look at this. Thank you very much @samsrabin for all of your work to streamline the documentation build. This is very useful!!

@samsrabin
Copy link
Member Author

Thanks, @billsacks!

samsrabin added 5 commits May 9, 2025 11:31
Environments resulting from -u vs. -o can differ in subtle ways. Deleting -u option to avoid this.

Resolves samsrabin/docs-deploy-testing#8

This reverts commit acef2b1.
Raise minimum supported Python to 3.7.
@samsrabin samsrabin merged commit c09f568 into ESCOMP:b4b-dev May 9, 2025
7 checks passed
@github-project-automation github-project-automation bot moved this from In Progress to Done in CTSM6 documentation May 9, 2025
@github-project-automation github-project-automation bot moved this from In progress - master to Done (non release/external) in CTSM: Upcoming tags May 9, 2025
slevis-lmwg added a commit to slevis-lmwg/ctsm that referenced this pull request May 9, 2025
Merge b4bdev 20250509

Updates to the b4b-dev branch since its last merge to master (PRs ESCOMP#3091 ESCOMP#3092), as shown by git log:

- Merge pull request Update docs infrastructure ESCOMP#2809 from samsrabin/update-docs-builder-2
  Update docs infrastructure
- Merge pull request Update externals to cesm3_0_alpha06c ESCOMP#3106 from ekluzek/update_to_alpha06c
  Update externals to cesm3_0_alpha06c
- Merge pull request User control over snow thermal conductivity scheme over glaciers ESCOMP#3072 from wwieder/JordanGlacier
  User control over snow thermal conductivity scheme over glaciers
ekluzek added a commit to ekluzek/CTSM that referenced this pull request May 9, 2025
Merge b4bdev 20250509

Updates to the b4b-dev branch since its last merge to master (PRs ESCOMP#3091 ESCOMP#3092), as shown by git log:

- Merge pull request Update docs infrastructure ESCOMP#2809 from samsrabin/update-docs-builder-2
  Update docs infrastructure
- Merge pull request Update externals to cesm3_0_alpha06c ESCOMP#3106 from ekluzek/update_to_alpha06c
  Update externals to cesm3_0_alpha06c
- Merge pull request User control over snow thermal conductivity scheme over glaciers ESCOMP#3072 from wwieder/JordanGlacier
  User control over snow thermal conductivity scheme over glaciers

 Conflicts:
	src/biogeochem/CNFireNoFireMod.F90
slevis-lmwg added a commit to slevis-lmwg/ctsm that referenced this pull request May 10, 2025
Merge b4bdev 20250509

Updates to the b4b-dev branch since its last merge to master (PRs ESCOMP#3091 ESCOMP#3092), as shown by git log:

- Merge pull request Update docs infrastructure ESCOMP#2809 from samsrabin/update-docs-builder-2
  Update docs infrastructure
- Merge pull request Update externals to cesm3_0_alpha06c ESCOMP#3106 from ekluzek/update_to_alpha06c
  Update externals to cesm3_0_alpha06c
- Merge pull request User control over snow thermal conductivity scheme over glaciers ESCOMP#3072 from wwieder/JordanGlacier
  User control over snow thermal conductivity scheme over glaciers
samsrabin added a commit to samsrabin/CTSM that referenced this pull request May 12, 2025
Merge b4bdev 20250509

Updates to the b4b-dev branch since its last merge to master (PRs ESCOMP#3091 ESCOMP#3092), as shown by git log:

- Merge pull request Update docs infrastructure ESCOMP#2809 from samsrabin/update-docs-builder-2
  Update docs infrastructure
- Merge pull request Update externals to cesm3_0_alpha06c ESCOMP#3106 from ekluzek/update_to_alpha06c
  Update externals to cesm3_0_alpha06c
- Merge pull request User control over snow thermal conductivity scheme over glaciers ESCOMP#3072 from wwieder/JordanGlacier
  User control over snow thermal conductivity scheme over glaciers
glemieux added a commit to glemieux/ctsm that referenced this pull request May 12, 2025
Merge b4bdev 20250509

Updates to the b4b-dev branch since its last merge to master (PRs ESCOMP#3091 ESCOMP#3092), as shown by git log:

- Merge pull request Update docs infrastructure ESCOMP#2809 from samsrabin/update-docs-builder-2
  Update docs infrastructure
- Merge pull request Update externals to cesm3_0_alpha06c ESCOMP#3106 from ekluzek/update_to_alpha06c
  Update externals to cesm3_0_alpha06c
- Merge pull request User control over snow thermal conductivity scheme over glaciers ESCOMP#3072 from wwieder/JordanGlacier
  User control over snow thermal conductivity scheme over glaciers
samsrabin added a commit to samsrabin/CTSM that referenced this pull request May 14, 2025
Merge b4bdev 20250509

Updates to the b4b-dev branch since its last merge to master (PRs ESCOMP#3091 ESCOMP#3092), as shown by git log:

- Merge pull request Update docs infrastructure ESCOMP#2809 from samsrabin/update-docs-builder-2
  Update docs infrastructure
- Merge pull request Update externals to cesm3_0_alpha06c ESCOMP#3106 from ekluzek/update_to_alpha06c
  Update externals to cesm3_0_alpha06c
- Merge pull request User control over snow thermal conductivity scheme over glaciers ESCOMP#3072 from wwieder/JordanGlacier
  User control over snow thermal conductivity scheme over glaciers
slevis-lmwg added a commit to slevis-lmwg/ctsm that referenced this pull request May 14, 2025
Merge b4bdev 20250509

Updates to the b4b-dev branch since its last merge to master (PRs ESCOMP#3091 ESCOMP#3092), as shown by git log:

- Merge pull request Update docs infrastructure ESCOMP#2809 from samsrabin/update-docs-builder-2
  Update docs infrastructure
- Merge pull request Update externals to cesm3_0_alpha06c ESCOMP#3106 from ekluzek/update_to_alpha06c
  Update externals to cesm3_0_alpha06c
- Merge pull request User control over snow thermal conductivity scheme over glaciers ESCOMP#3072 from wwieder/JordanGlacier
  User control over snow thermal conductivity scheme over glaciers
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bfb bit-for-bit code health improving internal code structure to make easier to maintain (sustainability) devops Development Operations to improve development throughput, E.g., adding GitHub Workflows documentation additions or edits to user-facing documentation or its infrastructure enhancement new capability or improved behavior of existing capability test: none No tests required (e.g. tools/contrib) testing additions or changes to tests

Projects

Status: Done (non release/external)

Development

Successfully merging this pull request may close these issues.

Update doc-builder

4 participants