feat(migration): migrate legacy owner data and update config reference handling

- Implemented a migration process to move resources from the legacy owner "default" to the new default owner "local", ensuring no data loss during the transition.
- Updated configuration reference handling to replace legacy `$VAR_`, `$SECRET_`, and `$CONTEXT_` prefixes with mustache-style `{{ vars.name }}`, `{{ secrets.name }}`, and `{{ context.name }}`.
- Enhanced YAML configuration files and scripts to reflect the new mustache syntax, improving consistency across the application.
- Added tests to validate the migration process and ensure proper handling of legacy references.
- Updated documentation to guide users on the new configuration reference format.
This commit is contained in:
2026-08-30 05:32:48 +07:00
parent e2e70a5aad
commit 5615d989fa
24 changed files with 775 additions and 208 deletions
+4 -1
View File
@@ -31,6 +31,7 @@ import { getAppVersion } from "../../app-version.js";
import { EXAMPLE_PLUGINS_DIR } from "../../paths.js";
import { pluginScriptRef } from "../../plugin-manifest.js";
import { evaluateJsonata, SET_STEP_SCRIPT } from "../../workflow-parse.js";
import { DEFAULT_OWNER } from "@jerapah-flow/shared";
/**
* @param {{ referencedScripts: () => Set<string> }} registry
@@ -258,7 +259,7 @@ export default function scriptsPluginFactory(registry) {
req.body ?? {}
);
let owner = "local";
let owner = DEFAULT_OWNER;
if (body.owner != null && body.owner !== "") {
try {
owner = fsStore.assertOwner(String(body.owner));
@@ -304,6 +305,7 @@ export default function scriptsPluginFactory(registry) {
owner,
workflowKey: "dry-run",
context: incomingContext,
data: incomingData,
},
);
const ctx = {
@@ -365,6 +367,7 @@ export default function scriptsPluginFactory(registry) {
owner,
workflowKey: "dry-run",
context: incomingContext,
data: incomingData,
});
const ctx = {
data: incomingData,