Attention
This project is still in an early phase of development.
The python API is not yet stable, and some aspects of the schema for the blueprint and workplan will likely evolve. Therefore whilst you are welcome to try out using the package, we cannot yet guarantee backwards compatibility. We expect to reach a more stable version in 2026.
ROMSExternalCodeBase#
- class cstar.roms.external_codebase.ROMSExternalCodeBase(source_repo: str | None = None, checkout_target: str | None = None)#
Bases:
ExternalCodeBaseAn implementation of the ExternalCodeBase class for the UCLA Regional Ocean Modeling System.
This subclass sets unique values for ExternalCodeBase properties specific to ROMS, and overrides the get() method to compile ROMS-specific libraries.
Methods:#
- get()
overrides ExternalCodeBase.get() to clone the UCLA ROMS repository, set environment, and compile libraries
Methods
Configure (set environment, compile, etc.) the external codebase on your local machine.
ROMSExternalCodeBase.get([target_dir])Retrieve and stage this ExternalCodeBase
ROMSExternalCodeBase.setup([target_dir])Retrieve and configure this codebase in a single call
Return this ExternalCodeBase as a dictionary of kwargs to ExternalCodeBase.__init__
Attributes
ROMSExternalCodeBase.is_configuredReturns True if this ExternalCodeBase exists locally and is correctly configured
ROMSExternalCodeBase.keyReturn a string that uniquely identifies ExternalCodeBase subclasses.
ROMSExternalCodeBase.logReturn the logger instance for this class.
ROMSExternalCodeBase.root_env_varEnvironment variable pointing to the location of the codebase when configured, e.g. MARBL_ROOT.
ROMSExternalCodeBase.sourceThe SourceData instance associated with this ExternalCodeBase
ROMSExternalCodeBase.working_copyStagedRepository instance describing the local clone of this codebase (if it exists)