Skip to content
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

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

aidanheerdegen
Copy link
Member

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.

aidanheerdegen and others added 3 commits May 23, 2024 14:52
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.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
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/).
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
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
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
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
```

Copy link
Contributor

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants