- JASP modules are first describes in a
yamlfile undermodules-metadatadirectory. This file contains the module's name, description, and the path to the module's source code as shown in this snippet:
name: "ModuleName"
gitUrl: "Your JASP module git repository"- When a PR is opened a git workflow triggers,
check-meta-files, where checks can be added. - Merging will only add the new
yamlfile to themodules-metadatadirectory onmainbranch. - To fork and create submodules the workflow
process-new-meta-filesshould be triggered manually. - The
process-new-meta-filesworkflow need a PAT with organization content write permissions and saved in organization secretORG_PAT. - The
process-new-meta-filesworkflow will parse theyamlfiles and create forks of the remote JASP modules locally. It will also add submodules to the thebeta-modulesfolder.
sequenceDiagram
title Submitting a new Jasp Module
participant JaspTemplate as jasp-stats/jaspModuleTemplate
participant UserModule as user/myJaspModule
participant JaspModules as jasp-stats-modules/modules-registry
participant UserModules as user/modules-registry
participant JaspMyModule as jasp-stats-modules/myJaspModule
JaspTemplate->>UserModule: fork
UserModule->>UserModule: create module
JaspModules->>UserModules: fork
UserModules->>UserModules: create myJaspModule.yaml file
UserModules-->>JaspModules: open PR
JaspModules->>JaspModules: trigger check workflow
JaspModules->>JaspModules: review PR
JaspModules->>JaspModules: merge PR
JaspModules->>JaspModules: manually trigger 'process-new-meta-files.yml' workflow
JaspModules->>UserModule: prepare to fork locally
UserModule->>JaspMyModule: fork
JaspModules->>JaspMyModule: add as submodule to JaspModules/beta-modules