Import and round-trip
dagweave does not make you start from a blank canvas. You can import an existing Argo Workflows manifest, edit it visually, and export the YAML back out. This page walks the full loop with a single manifest.
Import a manifest
Section titled “Import a manifest”Open the workflow menu and choose Import. The import dialog has a few tabs:
- To canvas reconstructs one manifest onto the live canvas. Paste a WorkflowTemplate (or Workflow) YAML and import it. This is the tab to use for the round-trip below.
- Bulk import takes several
----separated manifests or dropped.yamlfiles and creates one saved workflow per manifest. - From GitHub and From cluster appear when they are available: the first pulls every manifest from a repo the dagweave GitHub App can reach, the second lists WorkflowTemplates and CronWorkflows from a cluster a connector serves so you can pick which to import.
If you want a manifest to try, the Examples entry in the workflow menu loads ready-made Argo Workflows onto the canvas, including conditional and looping ones.
Paste your YAML into the “To canvas” tab and import. dagweave lays the workflow out as a graph, preserving the names, containers, entrypoint, and the source kind. A step it does not model is carried through verbatim rather than rewritten, so nothing is dropped.
Edit on the canvas
Section titled “Edit on the canvas”Now change something. Select a node and edit a field in the Inspector: bump a
container image, add an environment variable, or change the when guard on a
branch. You can also add a parameter or a loop, or open Settings
to switch the object kind between Workflow, WorkflowTemplate, CronWorkflow, and
ClusterWorkflowTemplate.
The YAML preview tracks your edits as you go, so you can watch the output change while you work.
Export the YAML
Section titled “Export the YAML”Open the Get YAML action to see the compiled manifest. From there you can Copy it or Download the file. Because it is ordinary Argo Workflows YAML, you apply it the same way as anything you wrote by hand:
kubectl apply -f my-workflow.yaml# or, for a one-off runargo submit my-workflow.yamlWhat round-trip guarantees
Section titled “What round-trip guarantees”Import then export gives you back the same workflow, not a reformatted one. The diff reflects your edit and little else:
- The source kind is preserved: a WorkflowTemplate stays a WorkflowTemplate, a CronWorkflow stays a CronWorkflow.
- Templates dagweave does not model are carried through verbatim.
- Per-task arguments are kept, so a shared template still gets the right values.
- Empty and injected fields are pruned, so you avoid a diff full of
creationTimestamp: nulland{}noise. generateNameand global parameters survive the trip.
This is checked, not claimed. All 205 vendored upstream Argo examples must import and re-export without error on every build, or the build fails.
A few deltas are accepted today, all covered in
Core concepts: comments and exact formatting are lost because
the file is parsed and regenerated, key ordering and quote style can shift, and a
steps-based workflow is flattened to a dag on import.
From here
Section titled “From here”Instead of copying the YAML by hand, you can push it straight to a git repo. See
Publishing to git. To run it from dagweave rather than
kubectl, connect a cluster with the connector and attach a
trigger.