-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Developer docs: add multi-component development example #68
base: main
Are you sure you want to change the base?
Conversation
Apply suggestions from code review Co-authored-by: Tommy Gatti <[email protected]> Co-authored-by: Andrew Kiss <[email protected]> Co-authored-by: Tommy Gatti <[email protected]> Co-authored-by: Dougie Squire <[email protected]> Co-authored-by: Claire Carouge <[email protected]>
|
||
## Development environment | ||
|
||
Spack [has environments](https://spack.readthedocs.io/en/latest/environments.html), which is similar to many other related implementations such as conda environments and python virtual environments. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Spack [has environments](https://spack.readthedocs.io/en/latest/environments.html), which is similar to many other related implementations such as conda environments and python virtual environments. | |
Spack [has environments](https://spack.readthedocs.io/en/latest/environments.html), which are similar to many other related implementations such as conda environments and python virtual environments. |
|
||
In this example the `mom5` component will be modified but all other components and dependencies remain the same. | ||
|
||
This example also uses the [`ACCESS-OM2` `spack.yaml` environment file](https://github.com/ACCESS-NRI/ACCESS-OM2/blob/main/spack.yaml) as an argument to the [`spack env create` command](https://spack.readthedocs.io/en/latest/command_index.html#spack-env-create). This makes the development environment the same as that for the released ACCESS-OM2 model that is referenced in the local copy of the repo. So it is necessary to clone [this repository](https://github.com/ACCESS-NRI/ACCESS-OM2/). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This example also uses the [`ACCESS-OM2` `spack.yaml` environment file](https://github.com/ACCESS-NRI/ACCESS-OM2/blob/main/spack.yaml) as an argument to the [`spack env create` command](https://spack.readthedocs.io/en/latest/command_index.html#spack-env-create). This makes the development environment the same as that for the released ACCESS-OM2 model that is referenced in the local copy of the repo. So it is necessary to clone [this repository](https://github.com/ACCESS-NRI/ACCESS-OM2/). | |
This example also uses the [`ACCESS-OM2` `spack.yaml` environment file](https://github.com/ACCESS-NRI/ACCESS-OM2/blob/main/spack.yaml) as an argument to the [`spack env create` command](https://spack.readthedocs.io/en/latest/command_index.html#spack-env-create). This makes the development environment the same as that for the released ACCESS-OM2 model that is referenced in the local copy of the repo. So it is necessary to clone [the ACCESS-NRI ACCESS-OM2 repository](https://github.com/ACCESS-NRI/ACCESS-OM2/). |
|
||
As a result of the intentional error introduced above. | ||
|
||
Reverting that change and `spack install` worked as expected |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reverting that change and `spack install` worked as expected | |
Reverting that change, `spack install` works as expected |
==> Updating view at /g/data/.../dev_instructions/envs/mom5-dev/.spack-env/view | ||
==> Warning: Skipping external package: [email protected]%[email protected]~atomics~cuda~cxx~cxx_exceptions~gpfs~internal-hwloc~java~legacylaunchers~lustre~memchecker~orterunprefix+romio+rsh~singularity+static+vt+wrapper-rpath build_system=autotools fabrics=none patches=073477a,60ce20b schedulers=none arch=linux-rocky8-x86_64/4jwtg3n | ||
``` | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
say something here about where the newly-compiled executables can be found
Added in the example of developing more than mode component at a time
Originally from #63
Should be rebased on
main
once #67 is merged.