Configuration and initialization class for Ulysses study repositories. This class manages the creation and setup of a new study repository, including directory structure, configuration files, and version control initialization.
Details
UlyssesStudy encapsulates the configuration needed to set up a new Ulysses-based study environment. It manages study metadata and database connection blocks. Database schema and credential details are held per-block in DbConfigBlock.
Active Fields
repoName: Study repository name (read/write)repoFolder: Parent directory for the repository (read/write)studyMeta: StudyMeta object containing metadata (read/write)dbConnectionBlocks: List of DbConfigBlock objects (read/write)gitRemote: Optional git remote URL (read/write)renvLockFile: Optional path to renv lock file (read/write)
Active bindings
repoNameStudy repository name. Can be read or set with validation.
repoFolderParent directory for the repository. Can be read or set with validation.
dbConnectionBlocksList of DbConfigBlock objects managing multiple database connections. Can be read or set with class validation.
studyMetaStudyMeta object containing study metadata and configuration. Can be read or set with class validation.
gitRemoteOptional URL for git remote repository. Can be read or set with validation.
renvLockFileOptional path to renv lock file for reproducibility. Can be read or set with validation.
Methods
Method new()
Initialize a new UlyssesStudy instance with configuration parameters.
Usage
UlyssesStudy$new(
repoName,
repoFolder,
studyMeta,
dbConnectionBlocks = NULL,
gitRemote = NULL,
renvLockFile = NULL
)Arguments
repoNameCharacter string. Name of the study repository.
repoFolderCharacter string. Parent directory where the repository will be created.
studyMetaStudyMeta object. Contains study metadata and configuration.
dbConnectionBlocksList of DbConfigBlock objects. Optional database configurations.
gitRemoteCharacter string. Optional URL for git remote repository.
renvLockFileCharacter string. Optional path to renv lock file for reproducibility.
Method initUlyssesRepo()
Initialize the complete Ulysses repository structure and configuration.
This method performs the following initialization steps:
Creates the R project directory and Rproj file
Establishes the standard directory structure
Creates initialization files (README, NEWS, configuration files)
Sets up Quarto documentation
Creates main execution file
Initializes agent skills configuration
Initializes git repository