The _mighty.yml file provides framework configuration that spans across all ADaM domains. This file should be placed in the study directory alongside individual ADaM domain specification files.
The external_data section specifies primary keys for all external datasets that will be available at runtime. This includes:
IMPORTANT: ADaM domains being generated by mighty should have their keys defined in their individual domain specification files (see vignette("adam_specification")), NOT in _mighty.yml.
IMPORTANT: Domain names must be specified in uppercase following CDISC standards (e.g., DM, EX, LB), regardless of the file name casing. The system automatically handles case conversion when reading data files.
external_data:
- id: DM
keys: [USUBJID, STUDYID]
- id: EX
keys: [USUBJID]
- id: MDPARAM
keys: [STUDYID, TOPICCD]The repos field tells mighty where to look for code components. Repositories are searched in the order listed, and the first match wins.
A component with the same name in a later repository is ignored. This also applies to mighty’s internal templates (for example mighty_init_domain). To use your own version of an internal template, put its repository before the one with the internal templates. Otherwise, list the internal templates first.
Each entry can be:
github::owner/repo — a GitHub repositorygithub::owner/repo/subdir — a subdirectory inside a GitHub repositorygithub::owner/repo/subdir@ref — a specific branch, tag, or commitlocal::mighty resolves each GitHub ref to a commit once per R session, and downloads each commit once per session. Later calls to generate_adam_code() reuse the cached copy. Restart R to pick up new commits on a branch.
repos:
- github::NovoNordisk-OpenSource/mighty.standards/components
- github::my-org/[email protected]
- "./local-components"IMPORTANT: repos must include a source for mighty’s internal templates (typically github::NovoNordisk-OpenSource/mighty.standards/components). Without it, mighty cannot resolve the special components used during code generation.
The id of a component in an ADaM specification is looked up in repos. It is not a file path. Inside each repository, id: relative_day matches:
relative_day.R or relative_day.mustacherelative_day/ subdirectoryIf one repository has more than one match (for example both relative_day.R and relative_day.mustache), mighty stops with an error. Use the file name with its extension to select one.