diff --git a/.wordlist.txt b/.wordlist.txt index 5ef0feb606..59eb8a2a5d 100644 --- a/.wordlist.txt +++ b/.wordlist.txt @@ -1660,3 +1660,4 @@ CPython XXE CWE Mono +whitespace diff --git a/bash.exe.stackdump b/bash.exe.stackdump new file mode 100644 index 0000000000..0b0334a0d1 --- /dev/null +++ b/bash.exe.stackdump @@ -0,0 +1,9 @@ +Stack trace: +Frame Function Args +000FFFFBC80 00210062B0E (00210297158, 00210275E3E, 00000000000, 000FFFFAB80) +000FFFFBC80 0021004846A (00000000000, 00000000000, 00000000000, 00000000004) +000FFFFBC80 002100484A2 (00210297209, 000FFFFBB38, 00000000000, 00000000000) +000FFFFBC80 002100D2FFE (00000000000, 00000000000, 00000000000, 00000000000) +000FFFFBC80 002100D3125 (000FFFFBC90, 00000000000, 00000000000, 00000000000) +001004F84B7 002100D46E5 (000FFFFBC90, 00000000000, 00000000000, 00000000000) +End of stack trace diff --git a/docs/admin/setting-up-cloudshell/cloudshell-configuration-options/customer-configuration-keys-repository/general.md b/docs/admin/setting-up-cloudshell/cloudshell-configuration-options/customer-configuration-keys-repository/general.md index 5b31d730c3..a860b80413 100644 --- a/docs/admin/setting-up-cloudshell/cloudshell-configuration-options/customer-configuration-keys-repository/general.md +++ b/docs/admin/setting-up-cloudshell/cloudshell-configuration-options/customer-configuration-keys-repository/general.md @@ -769,7 +769,9 @@ This applies to the great majority of configuration keys, but not to every one o ## Allow unicode characters in script command context -When set to `true`, allows passing unicode characters to script environment variables. This is useful when usernames or other context values contain unicode characters. +When set to `true`, allows passing unicode characters to script environment variables. This is useful when usernames or other context values contain unicode characters. By default, unicode characters are suppressed when CloudShell builds the environment variables that pass the command context to a script. + +The Execution Server reads this key, so set it on each Execution Server that runs the affected scripts — setting it on the Quali Server has no effect. Restart the Execution Server service after changing it. @@ -783,7 +785,7 @@ When set to `true`, allows passing unicode characters to script environment vari - + @@ -791,11 +793,11 @@ When set to `true`, allows passing unicode characters to script environment vari - + - +
Where to add/change`customer.config` CloudShell Server installation directory`customer.config` Execution Server installation directory
Default value
Affected CloudShell ComponentCloudShell ServerExecution Server
Version2024.1 and above2024.1.0.2669 and above
@@ -819,6 +821,8 @@ The following placeholders are supported: | `{version}` | CloudShell version (without the build number). | | `{pageType}` | Identifier of the current Portal page (empty if not available). | | `{pageUrl}` | Path and query string of the current Portal page. | +| `{pageContent}` | The visible text of the Portal's main content area, with runs of whitespace collapsed to single spaces and **truncated to the first 2000 characters**. | +| `{context}` | All of the other placeholder values as a single JSON object. Use this to hand the whole context to a chat service that takes one free-text query — it is the placeholder used in the example that ships in `customer.config`. | **Available only inside a sandbox or blueprint page** (replaced with empty values on all other pages, such as the catalog or inventory): @@ -832,14 +836,20 @@ The following placeholders are supported: | `{resourceCount}` | Number of resources in the sandbox/blueprint. | :::note -Sandbox placeholders (`{sandboxId}`, `{sandboxName}`, `{status}`, `{setupStage}`, `{resourceList}`, `{resourceCount}`) are only populated when the user opens the AI Assistant from within a sandbox or blueprint diagram. On any other page they are replaced with empty values. +- Sandbox placeholders (`{sandboxId}`, `{sandboxName}`, `{status}`, `{setupStage}`, `{resourceList}`, `{resourceCount}`) are only populated when the user opens the AI Assistant from within a sandbox or blueprint diagram. On any other page they are replaced with empty values. +- Each value is URL-encoded automatically when it is substituted, so do not encode the placeholders yourself. +- A placeholder that is not in the list above — including a misspelled one — is replaced with an empty string rather than reported as an error. If a template produces a URL with missing values, check the placeholder spelling first. +::: + +:::warning Both `{pageContent}` and `{context}` send Portal content off-site +`{pageContent}` carries whatever text is currently on the user's screen, and `{context}` embeds `{pageContent}` along with every other value. Using either one sends that content — which can include resource names, addresses, and attribute values shown on the page — to the external chat service in the URL, where it may be logged or retained by that service. Point the template only at a service your organization is willing to share this data with, and prefer the narrower placeholders if you do not need the full page. ::: - + diff --git a/docs/install-configure/linux-virtual-appliance/installation-procedure/create-es-from-docker.md b/docs/install-configure/linux-virtual-appliance/installation-procedure/create-es-from-docker.md index cc00ab5d58..f56ab7c375 100644 --- a/docs/install-configure/linux-virtual-appliance/installation-procedure/create-es-from-docker.md +++ b/docs/install-configure/linux-virtual-appliance/installation-procedure/create-es-from-docker.md @@ -55,19 +55,25 @@ sudo docker run -d --name ExecutionServer --restart unless-stopped -p 5093:5093 *Added in CloudShell 2026.1* -The Docker Execution Server supports passing **Execution Server Selector** attributes via environment variables. This allows CloudShell to route commands to the correct Execution Server based on attribute matching (e.g., by region or capability). +The Docker Execution Server can register itself with attributes, such as an **Execution Server Selector** value. This allows CloudShell to route commands to the correct Execution Server based on attribute matching (for example, by region or capability). -To pass attributes, add `-e` flags to the `docker run` command using the format `ATTRIBUTE_=`: +Attributes are passed in a **single** `ES_ATTRIBUTES` environment variable holding a JSON object of attribute names and values — not as one variable per attribute: ```javascript sudo docker run -d --name ExecutionServer --restart unless-stopped -p 5093:5093 \ -e PARAMS="192.168.25.4,admin,admin,ES-Docker" \ - -e ATTRIBUTE_Region="US-East" \ - -e ATTRIBUTE_Location="SiteA" \ + -e ES_ATTRIBUTES="{'Execution Server Selector':'US-East','MyAttr':'MyValue'}" \ -v ~/customer.config:/opt/ExecutionServer/customer.config qualihub/executionserver ``` -These attributes function as Execution Server Selectors — when a resource or App has matching selector attributes, CloudShell will route its commands to this Execution Server. For more on Execution Server selection, see [Setting Up Execution Servers to Run Commands](../../../admin/cloudshell-execution-server-configurations/setting-up-execution-servers-to-run-commands.md). +:::note +- Attribute names and values are single-quoted inside the JSON, and the whole value is wrapped in double quotes so the shell passes it as one argument. +- Attribute names may contain spaces, as `Execution Server Selector` does. +- `ES_ATTRIBUTES` is optional. When it is omitted, the Execution Server registers with no attributes beyond the Ansible support attribute, which the container always sets. +- Attributes are applied when the container first registers the Execution Server. To change them later, update the variable and re-create the container. +::: + +To make CloudShell route a resource's or App's commands to this Execution Server, give the resource or App a matching **Execution Server Selector** attribute value. For details, see [Setting Up Execution Servers to Run Commands](../../../admin/cloudshell-execution-server-configurations/setting-up-execution-servers-to-run-commands.md). :::info - If you want to specify the version, you can edit the end of the command to include the version number. Example: qualihub/executionserver:2024.1 - See what versions are available here: https://hub.docker.com/r/qualihub/executionserver/tags
Key````
Possible values