- What's new in Smart Tools
- Known issues
- About Citrix Cloud and Citrix Smart Tools
- Technical Security Overview for Citrix Smart Tools
- Open source attribution
- System Requirements
- Get Started
- Smart Tools Agent
- About blueprints and the Blueprint Designer
- About blueprint steps
- About scripts
- Add a new script
- Use named parameters in scripts
- Reference attachments in scripts
- Create a blueprint
- Provision VMs for your blueprint with the Server step
- Use Amazon EC2 APIs in your blueprint with the EC2 Generic Step
- Add conditional actions to your blueprint with the Conditional step
- Add server volumes to your blueprint with the Mount Volume step
- Register or unregister DNS subdomains
- Chain blueprint step outputs and inputs
- Create references to scripts and blueprints
- View and modify blueprints and scripts
- Publish a blueprint
- Clone a blueprint
- Share a blueprint or script
- About Smart Check
- About health checks
- Add a Site to Smart Check
- Discover a Site in Smart Check
- Perform health checks for your XenApp and XenDesktop Site
- Use custom checks and alerts with Smart Check
- View reports from health checks
- Manage Smart Check alerts and notifications
- Upload Site diagnostics to Citrix Technical Support
- View or modify a Site in Smart Check
- JSON format objects reference
- Smart Scale
- Smart Migrate
- Resource Locations
- Prepare Windows Server VM templates for deploying blueprints
- About the Checks and Blueprints catalog and Library
- About deployment profiles
- About the Pre-deployment Checklist
- Deploy a blueprint using existing machines
- Deploy a blueprint to a Citrix XenServer resource location
- Set static IP addresses for XenServer VM templates
- Deploy a blueprint to a Citrix CloudPlatform resource location
- Deploy a blueprint to a VMware vSphere resource location
- Set a static IP address for OVA files using VMware vSphere
- Deploy a blueprint to a Microsoft Hyper-V Server resource location
- Hyper-V VM prerequisite configurations
- Deploy a blueprint to Microsoft Azure Classic resource location
- Deploy a blueprint to an Amazon Web Services resource location
- Preparing Windows-based custom AMIs for Smart Tools
- Rerun a blueprint step during a deployment error
- Pause or cancel a deployment
- Deploy a script
Deploy Citrix Solutions Blueprints
- Deploy Citrix Solutions blueprints using existing machines
- Create a XenApp and XenDesktop production deployment on Microsoft Azure Classic
- Create a XenApp and XenDesktop production deployment on AWS
- Create a XenApp and XenDesktop production deployment with Provisioning Services on Citrix XenServer and VMware vSphere
- Deploy the Simple XenApp and XenDesktop Proof of Concept blueprint on Microsoft Azure Classic
- Deploy the Simple XenApp and XenDesktop Proof of Concept blueprint to AWS
- Deploy the XenApp and XenDesktop Proof of Concept blueprint on Citrix XenServer
- Deploy the XenApp and XenDesktop Proof of Concept blueprint on Microsoft Azure Classic
- Deploy the XenApp and XenDesktop Proof of Concept blueprint with NetScaler to AWS
- Deploy XenApp with the Secure Browser Service
- Deploy the XenMobile Enterprise or Advanced Edition blueprint
- Deploy the XenMobile MDM Edition blueprint
Deploy Resource Locations for Citrix Cloud
- Deploy the XenApp and XenDesktop Resource Location Setup blueprint on Citrix XenServer
- Deploy the XenApp and XenDesktop Resource Location Setup blueprint on Microsoft Azure Classic
- Deploy the XenApp and XenDesktop Resource Location Setup blueprint on AWS
- Deploy the XenApp and XenDesktop Resource Location Setup blueprint with an existing domain on AWS
- Manage Deployments
- Accounts and users
- REST API
- Troubleshoot agent connectivity issues
- Troubleshoot agent download and installation issues
- Troubleshoot blueprint creation issues
- Troubleshoot blueprint deployment issues
- Troubleshoot Site onboarding issues
- Troubleshoot removing Sites from Smart Tools
- Troubleshoot Smart Scale events
- Troubleshoot XenApp 6.x farm migration issues
Add a new script
To use scripts with Smart Tools, you need to add your scripts to the library in your account. To do this, you can enter your script by hand, copy and paste script content, or drag and drop your script file into the code editor that Smart Tools provides. The code editor provides basic editing features such as syntax highlighting and check, key bindings, drag and drop, and cut, copy, and paste.
Default values for script parameters
You can specify default values for script parameters. Values defined for parameters are saved and passed to the script at runtime. For example, you can assign values to the parameters defined in a script as follows:
As another example, if you are adding an installer script, you might specify a parameter called “mode” with default value “install.” When you run the script, the value “install” is passed to the script and the installation is performed. You might also define a parameter called “location” with a default value of “/opt/packages” or another destination. You can also specify parameter values for ports, passwords, usernames, and so on. In some cases, if you plan to share a script, you can leave parameter values unspecified and let the users specify values based the requirements.
Smart Tools does not validate the parameters you include in scripts, including PowerShell scripts. When the script is deployed, any validation errors that occur are not flagged by Smart Tools. As a result, Smart Tools might report the script deployment as successful even though the script actually failed. To mitigate this issue, include appropriate error handlers in your script code for Smart Tools to interpret script failures. For example, you can program your script to exit with an error message in case of a script failure.
- From the home page, click Smart Build.
- On the Library page, click New Script.
- Enter a script name and file extension. For example: bash, sh, ps1, perl, py, and so on.
- (Optional) Enter tags and description. Tags enable you to quickly search and retrieve your scripts from the existing scripts. To insert a tag, enter the tag and press Enter. You can enter a description that best describes the purpose of your script. Click Next.
- Enter your script in the code editor.
- Ensure that the Line Ending option is set to Auto. You can set this option to Windows or Unix depending on the operating system that will run your script. The default setting is Auto. Line Ending is a special character or a sequence of characters that signifies the end of a line in your script. Scripts or text files created in Windows have different line endings against the files created in Unix/Linux. If you transfer scripts between Windows and Unix machines, ensure that the line endings are translated properly. Click Next.
(Optional) Specify script parameters and click Next.
Note: Use positional parameters (Example: $0, $1, $2) or, for PowerShell, use named parameters. Do not use obvious parameters (Example: $foo).
- (Optional) Click Upload file(s) to attach files that support your script. You can select a single file or multiples files to upload.
- Click Finish.
The newly added script appears in the list on the Library page.