Building your project locally
After defining a workflow, you can use thepara
CLI to validate and build the workflow to prepare to upload it to the Paragon dashboard. Building workflows creates a subfolder in your project called out/
with auto-generated files.
You can build all workflows in your project with the build
command:
Pushing your project to Paragon
Try Git Sync to configure an integration between your Paragraph files stored in a Git repository and your Paragon project.Git Sync keeps your Paragon project and Paragraph repository automatically in-sync.
push
command in the CLI.
- If your workflow has previously been pushed to your Paragon project, this command will overwrite any changes that have been made to this workflow with the current contents of the Paragraph file that you are pushing.
- Workflows cannot be pushed to Staging or Production Release Environments. Create a Release to move integration updates from Development -> Staging -> Production.
-
Currently, you cannot use the
push
command to push or “copy” a project to a different Project ID. If your team requires this functionality, please reach out to discuss your needs and to get early access to a related feature we are working on: [email protected].- You can create a Release to move integration updates from Development -> Staging -> Production.
-
Do not attempt to modify
project.json
orbuild.json
to do this, as you may inadvertently cause workflows to be moved across projects.
Pulling changes from Paragon
To pull changes from the dashboard on a one-off basis to your Paragon project, first commit all pending changes in your local repository, and then use thepull
command in the CLI.
- Any uncommitted changes may be overwritten by the
pull
command. - As with the
push
command, any integrations or workflows that are absent from the source (your Paragon dashboard in thepull
case) will be removed from the destination (the local repository). The best way to reconcile these types of removals is with Git Sync, which will use your commits to sequence these changes.
Diagnosing build errors
The build command operates in 2 phases:- A TypeScript compilation runs to check types for all of your workflows and integration configurations.
-
The compilation result is evaluated to produce a build artifact to upload to Paragon, in
out/build.json
.
Problem | Resolution |
---|---|
Missing or invalid parameters Steps have incomplete configurations, which does not produce a valid workflow. | Visit the workflows with incomplete steps and correct their configuration. If some workflow steps are intentionally incomplete (e.g. the workflow is a draft), you can prefix the filename with ~ to exclude it from the build. |
Incorrect step output path referenced A step requires output from other steps, but the path it references is not valid. | Visit the workflows with invalid step output paths and correct references to .output . Use the TypeScript-powered autocomplete to help identify available properties. |
Function step code is using unknown properties | Because Function step code in the dashboard does not use TypeScript, errors can appear in your exported Function steps about unsafely accessing properties in untyped values. These errors can help refactor your Function step code to be type-safe, but you can ignore them by using // @ts-ignore above lines that are causing errors. |
Missing types from @useparagon/integrations | Integration-specific dependencies may be missing from your project. Run para install with the CLI to pull in missing dependencies. |
Error: persona.meta.js is not found in project | This error may indicate that you have incorrectly imported modules in a workflow. Check your import statements in workflows to verify that you are using relative paths instead of absolute paths: ✅ "../../../events/newTask" ❌ "src/events/newTask" If your imports look correct, try following the steps below to clear stale build artifacts. |
--skip-type-errors
flag:
- Delete the
dist/
folder. - Delete the
tsconfig.tsbuildinfo
file.