UNPKG

@seqera/node-red-seqera

Version:

Node-RED nodes for interacting with the Seqera Platform API

350 lines (349 loc) 10.7 kB
[ { "id": "dae5714e049c0d25", "type": "tab", "label": "Flow 1", "disabled": false, "info": "", "env": [] }, { "id": "5f25af5b9d8216eb", "type": "group", "z": "dae5714e049c0d25", "name": "Welcome", "style": { "label": false, "stroke": "#6f2fa0", "fill": "#dbcbe7" }, "nodes": ["9da7ad3ef289bd95", "8d971eb77b2a5cfd", "a085f65a040b6d62", "4ae2da586d311c30"], "x": 74, "y": 47, "w": 452, "h": 194 }, { "id": "2b76ac110625033d", "type": "group", "z": "dae5714e049c0d25", "name": "Introduction to Seqera Node-RED nodes", "style": { "label": true, "color": "#000000" }, "nodes": [ "ed01ba29e91770f2", "d881e2dd19406725", "1695e4f569ffd0cf", "67283aae2341c413", "d5f52c36256163cc", "826ebd1a81f888f7", "73ea78f4fafa932c", "ba12afe4c16fbbeb", "767870dfc9296cf3", "bf13bdde1ae5a326", "cf0d89173f4a7a19", "fc630486d3370917", "d02a10054509db60" ], "x": 74, "y": 259, "w": 452, "h": 589.5 }, { "id": "9da7ad3ef289bd95", "type": "comment", "z": "dae5714e049c0d25", "g": "5f25af5b9d8216eb", "name": "Welcome to Node-RED + Seqera! 🎉 \\n Click here and look at the \"info\" tab in the sidebar -->", "info": "Thanks for setting up Node-RED with Seqera!\n\n**Click on the other comment nodes** to see how to get started.\n\nIf you need help or would like to contribute, please check out the GitHub repository for this extension: https://github.com/seqeralabs/node-red-seqera", "x": 300, "y": 100, "wires": [] }, { "id": "8d971eb77b2a5cfd", "type": "comment", "z": "dae5714e049c0d25", "g": "5f25af5b9d8216eb", "name": "Example flows", "info": "You can find the Seqera nodes in the sidebar on the left, under the heading \"Seqera\".\nTo jump-start your development, take a look at the examples that come with the extension:\n\n* Menu (top right `≡` button)\n* Import\n* Examples (modal's left sidebar)\n* @seqera/node-red-seqera dropdown\n* Choose an example and import into your current workflow\n\nThese are designed to be drop-in automation flow chunks and can often be used together.", "x": 200, "y": 200, "wires": [] }, { "id": "a085f65a040b6d62", "type": "comment", "z": "dae5714e049c0d25", "g": "5f25af5b9d8216eb", "name": "More information", "info": "Here are some resources to get you started:\n\n- [Node-RED tutorials](https://nodered.org/docs/tutorials/)\n- [Seqera Node-RED YouTube Playlist](#) _(coming soon)_\n- [Other Node-RED extensions](https://flows.nodered.org/)\n", "x": 400, "y": 200, "wires": [] }, { "id": "ed01ba29e91770f2", "type": "seqera-workflow-launch", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "", "seqera": "", "launchpadName": "", "launchpadNameType": "str", "paramsKey": "{}", "paramsKeyType": "json", "workspaceId": "", "workspaceIdType": "str", "sourceWorkspaceId": "", "sourceWorkspaceIdType": "str", "x": 190, "y": 420, "wires": [["d881e2dd19406725"]] }, { "id": "d881e2dd19406725", "type": "seqera-workflow-monitor", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "", "seqera": "", "workflowId": "workflowId", "workflowIdType": "msg", "workspaceId": "", "workspaceIdType": "str", "keepPolling": true, "poll": "5", "pollUnits": "seconds", "x": 410, "y": 420, "wires": [[], [], []] }, { "id": "1695e4f569ffd0cf", "type": "comment", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "Workflows", "info": "Central to Seqera Platform are workflows.\n\nThese nodes allow you to launch and then monitor a workflow.\n\nThe _Poll workflows_ checks Platform for pipelines launched outside of Node-RED and sends events for new runs, which can then be monitored.\n\nThese nodes are designed to work together: the _Launch_ and _Poll workflows_ nodes emit `msg.workflowId` and the _Monitor_ node defaults to using this for the workflow ID to monitor.", "x": 160, "y": 380, "wires": [] }, { "id": "67283aae2341c413", "type": "comment", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "A note on configuration", "info": "Below you can see the different Node-RED nodes available to you for working with Seqera Platform.\n\nThe comment nodes above each give a brief introduction.\n\nThe Seqera Node-RED plugin uses a shared _Configuration_ node which requires an API token, as well as an optional default workspace and API URL base.\n\nNone of the Seqera nodes will work until a configuration is set up and assigned.", "x": 200, "y": 300, "wires": [] }, { "id": "d5f52c36256163cc", "type": "comment", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "Files (Data Explorer)", "info": "The _List files_ and _Poll files_ work with Seqera Platform's _Data Explorer_ **Data Links**.\n\nThey work in a similar way, except that _Poll files_ repeatedly checks a location to look for any new files.", "x": 190, "y": 540, "wires": [] }, { "id": "826ebd1a81f888f7", "type": "seqera-datalink-list", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "", "seqera": "", "dataLinkName": "", "dataLinkNameType": "str", "basePath": "", "basePathType": "str", "prefix": "", "prefixType": "str", "pattern": "", "patternType": "str", "maxResults": "100", "maxResultsType": "num", "depth": "0", "depthType": "num", "workspaceId": "", "workspaceIdType": "str", "returnType": "files", "x": 160, "y": 580, "wires": [[]] }, { "id": "73ea78f4fafa932c", "type": "seqera-datalink-poll", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "", "seqera": "", "dataLinkName": "", "dataLinkNameType": "str", "basePath": "", "basePathType": "str", "prefix": "", "prefixType": "str", "pattern": "", "patternType": "str", "maxResults": "100", "maxResultsType": "num", "depth": "0", "depthType": "num", "workspaceId": "", "workspaceIdType": "str", "pollFrequency": "15", "pollUnits": "minutes", "returnType": "files", "x": 380, "y": 580, "wires": [[], []] }, { "id": "ba12afe4c16fbbeb", "type": "comment", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "Datasets", "info": "This node adds a _Dataset_ in Seqera Platform for you.\n\nIt takes a CSV as input (which can be created dynamically in Node-RED) and returns the API response.\nThis includes the resolved CSV URL of the dataset (`payload.version.url`), which can be used to populate a workflow parameter.", "x": 160, "y": 660, "wires": [] }, { "id": "767870dfc9296cf3", "type": "seqera-dataset-add", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "", "seqera": "", "datasetName": "", "datasetNameType": "str", "fileContents": "payload", "fileContentsType": "msg", "workspaceId": "", "workspaceIdType": "str", "description": "", "descriptionType": "str", "fileType": "csv", "x": 170, "y": 700, "wires": [[]] }, { "id": "bf13bdde1ae5a326", "type": "comment", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "Studios", "info": "Seqera Studios let you run interactive analysis sessions on your compute environments.\n\nThese nodes allow you to first add and then monitor a studio.\nThe central monitoring node output emits a message when a studio is in a _Running_ state and ready to use.\n\nThey're designed to work together: the _Add_ node emits `msg.studioId` and the _Monitor_ node defaults to using this for the Studio ID to monitor.", "x": 150, "y": 760, "wires": [] }, { "id": "cf0d89173f4a7a19", "type": "seqera-studios-add", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "", "seqera": "", "studioName": "", "studioNameType": "str", "description": "", "descriptionType": "str", "containerUri": "", "containerUriType": "str", "computeEnvId": "", "computeEnvIdType": "str", "mountData": "", "mountDataType": "str", "cpu": "2", "cpuType": "num", "memory": "8192", "memoryType": "num", "gpu": "0", "gpuType": "num", "condaEnvironment": "", "condaEnvironmentType": "str", "lifespanHours": "", "lifespanHoursType": "num", "isPrivate": false, "isPrivateType": "bool", "spot": false, "spotType": "bool", "autoStart": true, "autoStartType": "bool", "workspaceId": "", "workspaceIdType": "str", "x": 170, "y": 800, "wires": [["fc630486d3370917"]] }, { "id": "fc630486d3370917", "type": "seqera-studios-monitor", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "", "seqera": "", "studioId": "studioId", "studioIdType": "msg", "workspaceId": "", "workspaceIdType": "str", "keepPolling": true, "poll": 5, "pollUnits": "seconds", "x": 400, "y": 800, "wires": [[], [], []] }, { "id": "4ae2da586d311c30", "type": "comment", "z": "dae5714e049c0d25", "g": "5f25af5b9d8216eb", "name": "Documentation", "info": "Node-RED has a very useful tab in the right hand sidebar:\n\n- The 📕 _Help_ tab (<kbd>⌘+g h</kbd>)\n\nTry to keep this open most of the time: as you click different nodes, it will show contextual information.\nAll of the Seqera nodes and and all of the core Node-RED nodes will have extensive docs here.\n\nIf you prefer, you can also read documentation about the Seqera nodes on the plugin website: https://seqeralabs.github.io/node-red-seqera/", "x": 300, "y": 160, "wires": [] }, { "id": "d02a10054509db60", "type": "seqera-workflow-poll", "z": "dae5714e049c0d25", "g": "2b76ac110625033d", "name": "", "seqera": "", "search": "", "searchType": "str", "maxResults": "50", "maxResultsType": "num", "workspaceId": "", "workspaceIdType": "str", "pollFrequency": "1", "pollUnits": "minutes", "x": 180, "y": 460, "wires": [[], ["d881e2dd19406725"]] }, { "id": "4a6f4ab534631dfe", "type": "global-config", "env": [], "modules": { "@seqera/node-red-seqera": "1.4.1" } } ]