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 coordinates with StudyMeta and ExecOptions to provide comprehensive repository initialization.
Active Fields
repoName: Study repository name (read/write)repoFolder: Parent directory for the repository (read/write)toolType: Tool type, either "dbms" or "external" (read/write)studyMeta: StudyMeta object containing metadata (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.
toolTypeTool type, either "dbms" or "external". Can be read or set with 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,
toolType = c("dbms", "external"),
studyMeta,
execOptions,
gitRemote = NULL,
renvLockFile = NULL
)Arguments
repoNameCharacter string. Name of the study repository.
repoFolderCharacter string. Parent directory where the repository will be created.
toolTypeCharacter string. Tool type, either "dbms" or "external".
studyMetaStudyMeta object. Contains study metadata and configuration.
execOptionsExecOptions object. Contains execution settings and options.
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