Invalidate modflow6 and flopy CI caches on release#7
Closed
wpbonelli wants to merge 1 commit into
Closed
Conversation
wpbonelli
added a commit
to wpbonelli/flopy
that referenced
this pull request
Aug 14, 2022
wpbonelli
added a commit
to wpbonelli/flopy
that referenced
this pull request
Aug 15, 2022
* workaround intermittent macos CI matplotlib failures (modflowpy#1491) * don't use plt.show() in tests * add explanatory comments to conftest.py * skip ex-gwtgwt-mt3dms-p10 mf6 example test (MODFLOW-ORG/modflow6#1008) * cache modflow executables (conformant to MODFLOW-ORG/executables#7) * rename release/ to scripts/ * move pull_request_prepare.py to scripts/ * add postprocess_benchmarks.py to scripts (and postprocessing CI step) * separate workflows for benchmarks, examples and regression tests (allow independent scheduling/testing)
wpbonelli
added a commit
to wpbonelli/flopy
that referenced
this pull request
Aug 15, 2022
* workaround intermittent macos CI matplotlib failures (modflowpy#1491) * don't use plt.show() in tests * add explanatory comments to conftest.py * skip ex-gwtgwt-mt3dms-p10 mf6 example test (MODFLOW-ORG/modflow6#1008) * cache modflow executables (conformant to MODFLOW-ORG/executables#7) * rename release/ to scripts/ * move pull_request_prepare.py to scripts/ * add postprocess_benchmarks.py to scripts (and postprocessing CI step) * separate workflows for benchmarks, examples and regression tests (allow independent scheduling/testing)
wpbonelli
added a commit
to wpbonelli/flopy
that referenced
this pull request
Aug 16, 2022
* workaround intermittent macos CI matplotlib failures (modflowpy#1491) * don't use plt.show() in tests * add explanatory comments to conftest.py * skip ex-gwtgwt-mt3dms-p10 mf6 example test (MODFLOW-ORG/modflow6#1008) * give test_mt3d.py::test_mfnwt_CrnkNic more retries * rename release/ to scripts/ * move pull_request_prepare.py to scripts/ * separate CI workflows for benchmarks, examples and regression test * name benchmark artifacts benchmarks-<system>-python version>-<workflow run ID> * add postprocess_benchmarks.py to scripts/ * add benchmark postprocessing CI job to (creates artifact benchmarks-<workflow run ID>) * cache modflow executables (per MODFLOW-ORG/executables#7)
wpbonelli
added a commit
to wpbonelli/flopy
that referenced
this pull request
Aug 16, 2022
* workaround intermittent macos CI matplotlib failures (modflowpy#1491) * don't use plt.show() in tests * add explanatory comments to conftest.py * skip ex-gwtgwt-mt3dms-p10 mf6 example test (MODFLOW-ORG/modflow6#1008) * give test_mt3d.py::test_mfnwt_CrnkNic more retries * rename release/ to scripts/ * move pull_request_prepare.py to scripts/ * separate CI workflows for benchmarks, examples and regression test * name benchmark artifacts benchmarks-<system>-python version>-<workflow run ID> * add postprocess_benchmarks.py to scripts/ * add benchmark postprocessing CI job to (creates artifact benchmarks-<workflow run ID>) * cache modflow executables (per MODFLOW-ORG/executables#7)
wpbonelli
added a commit
to wpbonelli/flopy
that referenced
this pull request
Aug 16, 2022
* workaround intermittent macos CI matplotlib failures (modflowpy#1491) * don't use plt.show() in tests * add explanatory comments to conftest.py * skip ex-gwtgwt-mt3dms-p10 mf6 example test (MODFLOW-ORG/modflow6#1008) * give test_mt3d.py::test_mfnwt_CrnkNic more retries * rename release/ to scripts/ * move pull_request_prepare.py to scripts/ * separate CI workflows for benchmarks, examples and regression test * name benchmark artifacts benchmarks-<system>-python version>-<workflow run ID> * add postprocess_benchmarks.py to scripts/ * add benchmark postprocessing CI job (creates artifact benchmarks-<workflow run ID>) * cache modflow executables (per MODFLOW-ORG/executables#7)
wpbonelli
added a commit
to wpbonelli/flopy
that referenced
this pull request
Aug 16, 2022
* workaround intermittent macos CI matplotlib failures (modflowpy#1491) * don't use plt.show() in tests * add explanatory comments to conftest.py * skip ex-gwtgwt-mt3dms-p10 mf6 example test (MODFLOW-ORG/modflow6#1008) * give test_mt3d.py::test_mfnwt_CrnkNic more retries * rename release/ to scripts/ * move pull_request_prepare.py to scripts/ * separate CI workflows for benchmarks, examples and regression test * name benchmark artifacts benchmarks-<system>-python version>-<workflow run ID> * add postprocess_benchmarks.py to scripts/ * add benchmark postprocessing CI job (creates artifact benchmarks-<workflow run ID>) * cache modflow executables (per MODFLOW-ORG/executables#7) * move sort to child classes' __init__() from _ModpathSeries.get_data() (address #1479la) * reenable PathlineFile.get_destination_pathline_data() benchmark
wpbonelli
added a commit
to wpbonelli/flopy
that referenced
this pull request
Aug 16, 2022
* workaround intermittent macos CI matplotlib failures (modflowpy#1491) * don't use plt.show() in tests * add explanatory comments to conftest.py * skip ex-gwtgwt-mt3dms-p10 mf6 example test (MODFLOW-ORG/modflow6#1008) * give test_mt3d.py::test_mfnwt_CrnkNic more retries * rename release/ to scripts/ * move pull_request_prepare.py to scripts/ * separate CI workflows for benchmarks, examples and regression test * name benchmark artifacts benchmarks-<system>-python version>-<workflow run ID> * add postprocess_benchmarks.py to scripts/ * add benchmark postprocessing CI job (creates artifact benchmarks-<workflow run ID>) * cache modflow executables (per MODFLOW-ORG/executables#7) * move sort to child classes' __init__() from _ModpathSeries.get_data() (address modflowpy#1479) * reenable PathlineFile.get_destination_pathline_data() benchmark * add test that PathlineFile sorts on initialization
wpbonelli
added a commit
to wpbonelli/flopy
that referenced
this pull request
Aug 17, 2022
* workaround intermittent macos CI matplotlib failures (modflowpy#1491) * don't use plt.show() in tests * add explanatory comments to conftest.py * skip ex-gwtgwt-mt3dms-p10 mf6 example test (MODFLOW-ORG/modflow6#1008) * give test_mt3d.py::test_mfnwt_CrnkNic more retries * rename release/ to scripts/ * move pull_request_prepare.py to scripts/ * separate CI workflows for benchmarks, examples and regression test * name benchmark artifacts benchmarks-<system>-python version>-<workflow run ID> * add postprocess_benchmarks.py to scripts/ * add benchmark postprocessing CI job (creates artifact benchmarks-<workflow run ID>) * cache modflow executables (per MODFLOW-ORG/executables#7) * move sort to child classes' __init__() from _ModpathSeries.get_data() (address modflowpy#1479) * reenable PathlineFile.get_destination_pathline_data() benchmark * add test that PathlineFile sorts on initialization * update ci.yml usages to commit.yml * don't upload coverage after smoke tests, benchmarks, regression tests and example tests * upload coverage on PR as well as push (fix codecov bot comments) * update to codecov action v3 * decrease coverage precision to 2 places (avoid small deltas)
Member
Author
|
No longer necessary with modflowpy/flopy#1495 |
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
We currently cache Modflow executables in FloPy CI. The cache must be invalidated manually either via API or incrementing a counter in the key. It might be nicer to automate it. (Same could go for Modflow6).
Recently GitHub added the ability to delete cache entries via API with an exact key. This PR aims to use this to invalidate the exe caches when new versions are released. A few modifications are still needed to list cache contents and find/delete the proper entry. If the ability to delete all entries matching a prefix is added to the GitHub API, however, this should be sufficient as is (provided flopy and/or modflow6 CI cache executables with prefix
modflow-exes).