Skip to content

Commit

Permalink
Upd20241111 (#409)
Browse files Browse the repository at this point in the history
* document stable time and check interval

* upd

* upd

* upd
  • Loading branch information
bensonlee5 authored Nov 11, 2024
1 parent 4a834c5 commit 70a49bf
Show file tree
Hide file tree
Showing 8 changed files with 2,812 additions and 1,796 deletions.
8 changes: 7 additions & 1 deletion .wordlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -371,4 +371,10 @@ LIMS
reproducibility
runtimes
BulkUploadInstruments
NewInstrument
NewInstrument
appuser
checkboxes
cytometry
ddPCR
electrophoresis
Scalability
20 changes: 16 additions & 4 deletions docs/app/agents/Agent.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -122,8 +122,6 @@ The _Configuration_ input specifies the action performed by the Agent, with opti

A Connection watches a directory (and associated subdirectories) for new files and updates to existing files. The Flow configured with the Agent is triggered when all expected files are found.

The _input_path_ variable, configured for each Connection [at installation](./AgentInstall#windows-installation), specifies the directory to watch.

#### Input Parameters

- `Flow Name`: The flow to run upon observing new files matching the specified pattern.
Expand All @@ -141,6 +139,16 @@ The _input_path_ variable, configured for each Connection [at installation](./Ag
- `Image`: An image to associate with agent in the Ganymede UI.
- `Auto deploy code and configuration changes to Live Connections`: If checked, updates to Agent code will be reflected on current Connections.

#### Reserved Variables

Reserved variables are used to configure Connection behavior. These can be set [at installation](./AgentInstall#windows-installation) or in the Connections panel post-installation.

- `input_path`: specifies the directory to watch.
- `check_interval`: for Agents v5.1.28+, specifies frequency (in seconds) with which a Connection will poll the local directory for new files. If left blank, the default value is 5 seconds.
- `stable_time`: for Agents v5.1.28+, specifies the time (in seconds) that a file must remain unchanged before being considered stable. If left blank, the default value is 5 seconds.

#### User-Defined Code

The user-defined code will be generated to map those file patterns to parameters. Three functions may require modification during configuration:

- `get_param_mapping`: This function is called whenever a file is added or modified in the watch directory. Modify this function to specify the files you want to look for prior to triggering a flow.
Expand Down Expand Up @@ -373,8 +381,6 @@ Multiple flow cytometers are used to observe cell populations for a related set

A Connection that monitors Flow file outputs, saving them to local directories as specified by the Agent logic.

The _output_path_ variable, configured for each Connection [at installation](./AgentInstall#windows-installation), specifies the directory to store files to.

#### Input Parameters

- `Flow Name`: The flow from which to download output files. This will autopopulate the glob pattern matching field correspondingly.
Expand All @@ -393,6 +399,12 @@ The _output_path_ variable, configured for each Connection [at installation](./A

Additional examples can be found on the [Agent Templates page](./AgentTemplates.mdx#watch-for-flow-outputs-then-save-locally)

#### Reserved Variables

For this configuration, the following reserved variables are available:

- `output_path`: specifies the directory to store files to.

#### Example use case

Instructions for lab execution are generated in Ganymede Cloud and downloaded to the instrument PC for execution.
Expand Down
2 changes: 1 addition & 1 deletion docs/app/agents/AgentMonitoring.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,7 @@ The code corresponding to historical commits can be viewed by clicking the <div
<div class="text--center">
<img
alt="Agent build history detail"
src="https://ganymede-bio.mo.cloudinary.net/agent/Agent_Code_View20241101.png"
src="https://ganymede-bio.mo.cloudinary.net/agent/Agent_Code_View20241111.png"
width="800"
/>
</div>
2 changes: 1 addition & 1 deletion docs/app/flows/FlowEditor.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ The changes are shown like a side by side `git` diff where the left is old and t

Prior code can be copied by clicking on <div className="button dark_gray_button"><EyeOutlined /> **View Code**</div> button on the Flow Version History page, followed by clicking on <div className="button dark_gray_button"><CopyOutlined /> **Copy code**</div> button from the Ganymede Code Viewer panel.

<img alt="Flow Code history" src="https://ganymede-bio.mo.cloudinary.net/apiServer/FlowCodeViewer_20241101.png" />
<img alt="Flow Code history" src="https://ganymede-bio.mo.cloudinary.net/apiServer/FlowCodeViewer_20241111.png" />
&nbsp;

:::note
Expand Down
40 changes: 35 additions & 5 deletions docs/app/virt/Virtualization.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
id: Virtualization
title: Virtualization
displayed_sidebar: webUiSidebar
toc_max_heading_level: 4
---

import {
Expand Down Expand Up @@ -30,7 +31,7 @@ Some examples of analyses that could be suitable are:

To use this feature, scientists select files relevant files for processing from the [File Browser](app/files/FileBrowser.mdx), conduct an analysis in the software, and then store relevant results back to Ganymede File Storage by saving output files in the appropriate location.

Pleaes reach out to [Ganymede](mailto:[email protected]) to explore your specific use case.
If you're interested in adding an application (whether external application or internally developed application), please reach out to [Ganymede](mailto:[email protected]) to explore your specific use case.

## Using Virtualization

Expand Down Expand Up @@ -81,7 +82,7 @@ When the session first loads, you will see a Windows lock screen with a Ganymede
Once the session is opened, a Windows desktop appears. On the desktop, there is a directory called “Input_Files”. This directory contains the files that were selected in the File Browser during session creation.

<div style={{ textAlign: 'center' }}>
<img width="800" alt="Virtualization Desktop" src="https://ganymede-bio.mo.cloudinary.net/virtualization/VirtualizationDesktop20240507.png"
<img width="800" alt="Virtualization Desktop" src="https://ganymede-bio.mo.cloudinary.net/virtualization/VirtualizationDesktop20241111.png"
/>
</div>
&nbsp;
Expand All @@ -93,27 +94,56 @@ If additional files are needed, you can add them from either the Sessions page o
- **From the Sessions Page**: Navigate to the relevant session and click the Add Files (+) icon next to the input files.

<div style={{ textAlign: 'center' }}>
<img width="800" alt="Adding files to a Virtualization Session from the Sessions page" src="https://ganymede-bio.mo.cloudinary.net/virtualization/VirtualizationSessionAddFiles20240507.png"
<img alt="Adding files to a Virtualization Session from the Sessions page" src="https://ganymede-bio.mo.cloudinary.net/virtualization/VirtualizationSessionAddFiles20240507.png"
/>
</div>
&nbsp;

- **From Within the Session**: Navigate to the relevant session and click the Add Files (+) icon next to the input files.

<div style={{ textAlign: 'center' }}>
<img width="800" alt="Adding files to a Virtualization Session from the active session" src="https://ganymede-bio.mo.cloudinary.net/virtualization/VirtualizationAddFiles20240507.png"
<img alt="Adding files to a Virtualization Session from the active session" src="https://ganymede-bio.mo.cloudinary.net/virtualization/VirtualizationAddFiles20241111.png"
/>
</div>
&nbsp;

which launches a modal for selecting files from Ganymede data storage to add.

<div style={{ textAlign: 'center' }}>
<img width="800" alt="File select modal for Virtualization Session" src="https://ganymede-bio.mo.cloudinary.net/virtualization/VirtualizationFileSelectModal20240507.png"
<img alt="File select modal for Virtualization Session" src="https://ganymede-bio.mo.cloudinary.net/virtualization/VirtualizationFileSelectModal20240507.png"
/>
</div>
&nbsp;

### Pausing a session

Virtualization sessions can be paused by clicking on the Pause Session button in the control bar at the bottom of the screen.

<div style={{ textAlign: 'center' }}>
<img alt="Pausing a session" src="https://ganymede-bio.mo.cloudinary.net/virtualization/VirtualizationPauseSession20241111.png"
/>
</div>
&nbsp;

This can be useful for preserving the state of the session; files on the desktop will be retained, and the session will be paused.

:::warning

Application state is not preserved; any unsaved work within the application will be lost.

:::

### Resuming a session

To resume a paused session, navigate to the Sessions page and click the Resume button next to the relevant session.

<div style={{ textAlign: 'center' }}>
<img alt="Resuming a session" src="https://ganymede-bio.mo.cloudinary.net/virtualization/VirtualizationResumeSession_20241111.png"
/>
</div>
&nbsp;


### Storing files from a session

After completing your analysis, save the output files to Ganymede File Storage.
Expand Down
8 changes: 4 additions & 4 deletions docs/releases/202411.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,12 @@ displayed_sidebar: releaseSideBar
### November 7 2024

**Features**
- **Virtualization**: Virtualization sessions can now be paused and resumed
- Pausing a session will stop the session from running, retaining the input and output files
- Resuming a session will restart the session with the same input and output files
- **Virtualization**: Virtualization sessions can now be [paused](../app/virt/Virtualization#pausing-a-session) and resumed, with all saved files retained
- Pausing a session will stop the session from running, retaining the files in the input and output folders
- Resuming a session will restart the session with files retained

**Improvements**
- **UI**: Code syntax highlighting is now available in the View Code modal for Flows and Agents
- **UI**: Code syntax highlighting is now available in the View Code modal for [Flows](../app/flows/FlowEditor#historical-flow-versions) and [Agents](../app/agents/AgentMonitoring#viewing-historical-code)

**Bug Fixes**
- **UI**: Fixed an issue where Agent logs and status updates were not being displayed in real-time
Expand Down
112 changes: 101 additions & 11 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,37 +16,127 @@
"@algolia/autocomplete-js": "^1.17.4",
"@algolia/client-search": "^4.23.2",
"@ant-design/icons": "^5.0.0",
"@antfu/install-pkg": "0.4.1",
"@antfu/utils": "0.7.10",
"@babel/runtime": "^7.17.2",
"@docusaurus/core": "^3.5.2",
"@docusaurus/plugin-client-redirects": "^3.5.2",
"@docusaurus/plugin-content-docs": "^3.5.2",
"@docusaurus/plugin-ideal-image": "^3.5.2",
"@docusaurus/plugin-vercel-analytics": "^3.5.2",
"@docusaurus/preset-classic": "^3.5.2",
"@docusaurus/theme-common": "^3.5.2",
"@docusaurus/theme-mermaid": "^3.5.2",
"@babel/runtime-corejs3": "7.26.0",
"@braintree/sanitize-url": "7.1.0",
"@chevrotain/cst-dts-gen": "11.0.3",
"@chevrotain/regexp-to-ast": "11.0.3",
"@chevrotain/utils": "11.0.3",
"@docusaurus/bundler": "3.6.1",
"@docusaurus/core": "^3.6.1",
"@docusaurus/cssnano-preset": "3.6.1",
"@docusaurus/lqip-loader": "3.6.1",
"@docusaurus/plugin-client-redirects": "3.6.1",
"@docusaurus/plugin-content-docs": "^3.6.1",
"@docusaurus/plugin-debug": "3.6.1",
"@docusaurus/plugin-google-analytics": "3.6.1",
"@docusaurus/plugin-google-gtag": "3.6.1",
"@docusaurus/plugin-google-tag-manager": "3.6.1",
"@docusaurus/plugin-ideal-image": "3.6.1",
"@docusaurus/plugin-sitemap": "3.6.1",
"@docusaurus/plugin-vercel-analytics": "3.6.1",
"@docusaurus/preset-classic": "3.6.1",
"@docusaurus/theme-classic": "3.6.1",
"@docusaurus/theme-common": "^3.6.1",
"@docusaurus/theme-mermaid": "3.6.1",
"@docusaurus/theme-search-algolia": "3.6.1",
"@emotion/react": "^11.10.6",
"@emotion/styled": "^11.10.6",
"@iconify/types": "2.0.0",
"@iconify/utils": "2.1.33",
"@mdx-js/react": "^3.0.1",
"@mermaid-js/parser": "0.3.0",
"@mui/icons-material": "^5.11.16",
"@mui/material": "^5.11.16",
"@types/d3": "7.4.3",
"@types/d3-axis": "3.0.6",
"@types/d3-brush": "3.0.6",
"@types/d3-chord": "3.0.6",
"@types/d3-contour": "3.0.6",
"@types/d3-delaunay": "6.0.4",
"@types/d3-dispatch": "3.0.6",
"@types/d3-drag": "3.0.7",
"@types/d3-ease": "3.0.2",
"@types/d3-fetch": "3.0.7",
"@types/d3-force": "3.0.10",
"@types/d3-format": "3.0.4",
"@types/d3-geo": "3.1.0",
"@types/d3-hierarchy": "3.1.7",
"@types/d3-polygon": "3.0.2",
"@types/d3-quadtree": "3.0.6",
"@types/d3-random": "3.0.3",
"@types/d3-scale": "4.0.8",
"@types/d3-scale-chromatic": "3.0.3",
"@types/d3-shape": "3.1.6",
"@types/d3-time-format": "4.0.3",
"@types/d3-timer": "3.0.2",
"@types/d3-transition": "3.0.9",
"@types/d3-zoom": "3.0.8",
"@types/dompurify": "3.0.5",
"@types/eslint": "9.6.1",
"@types/eslint-scope": "3.7.7",
"@types/trusted-types": "2.0.7",
"algoliasearch": "^4.23.3",
"ansi-escapes": "4.3.2",
"chevrotain": "11.0.3",
"chevrotain-allstar": "0.3.1",
"classnames": "^2.2.6",
"confbox": "0.1.8",
"consola": "3.2.3",
"cytoscape": "3.30.3",
"cytoscape-fcose": "2.2.0",
"dagre-d3-es": "7.0.11",
"dayjs": "1.11.13",
"docusaurus-plugin-openapi-docs": "^4.0.1",
"docusaurus-theme-openapi-docs": "^4.0.1",
"dompurify": "3.1.6",
"figures": "3.2.0",
"hachure-fill": "0.5.2",
"html-webpack-plugin": "5.6.3",
"infima": "0.2.0-alpha.45",
"instantsearch.js": "^4.67.0",
"jsesc": "3.0.2",
"khroma": "2.1.0",
"kolorist": "1.8.0",
"langium": "3.0.0",
"local-pkg": "0.5.0",
"markdown-table": "2.0.0",
"marked": "13.0.3",
"mermaid": "11.4.0",
"mlly": "1.7.2",
"package-manager-detector": "0.2.2",
"path-data-parser": "0.1.0",
"path-to-regexp": "3.3.0",
"pkg-types": "1.2.1",
"points-on-curve": "0.2.0",
"points-on-path": "0.2.1",
"prism-react-renderer": "^2.3.1",
"prop-types": "^15.8.1",
"react": "^18.0.0",
"react-dom": "^18.0.0",
"react-loadable": "^5.5.0",
"react-player": "^2.13.0",
"regjsgen": "0.8.0",
"repeat-string": "1.6.1",
"roughjs": "4.6.6",
"search-insights": "^2.13.0",
"ts-node": "^10.9.1"
"serve-handler": "6.1.6",
"std-env": "3.8.0",
"tinyexec": "0.3.1",
"ts-node": "^10.9.1",
"ufo": "1.5.4",
"vscode-jsonrpc": "8.2.0",
"vscode-languageserver": "9.0.1",
"vscode-languageserver-protocol": "3.17.5",
"vscode-languageserver-textdocument": "1.0.12",
"vscode-languageserver-types": "3.17.5",
"vscode-uri": "3.0.8"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "^3.5.2",
"@docusaurus/tsconfig": "^3.5.2",
"@docusaurus/module-type-aliases": "^3.6.1",
"@docusaurus/tsconfig": "3.6.1",
"@types/node": "^18.15.11",
"@types/react": "^18.0.26",
"dotenv": "^16.0.3",
Expand Down
Loading

0 comments on commit 70a49bf

Please sign in to comment.