To prepare a SuiteCloud Development Framework project (also referred to as a SuiteCloud project) for deployment, reference the NetSuite components that you want to deploy in the deploy.xml file. SDF uses this file to determine the order in which files and objects are deployed to a target NetSuite account.
When you create a SuiteCloud project, a deploy file is automatically generated. By default, the file is configured to deploy all supported files in the FileCabinet/SuiteScripts folder and all custom NetSuite objects in the Objects folder. In an account customization project, the file is configured to deploy the account configuration set in the AccountConfiguration folder. You can customize which NetSuite components to deploy by adjusting the file paths specified in the path elements that are nested in the configuration, files and objects elements. SDF processes each path element sequentially when the project is deployed. You can create multiple files and objects elements to control the order in which files and objects are deployed.
When customizing the deploy file, ensure that the NetSuite components that are dependent on other NetSuite components are deployed afterwards. This practice helps prevent order validation errors from occurring.
Each path must start with a tilde ( ~ ), which denotes the root path of your project.
You can use an asterisk ( * ) in a path to represent all files in a particular folder. During deployment, SDF ensures that all the files in that folder are deployed to a target account in an appropriate order that does not cause order validation errors.
In a SuiteApp project, you can only reference NetSuite components that exist in the project, or objects from an SDF SuiteApp installed to the account. SuiteApp projects can include SDF installation scripts that are automatically executed when the project is deployed. For more information, see Customizing SuiteApp Project Deployment using SDF Installation Scripts.
In an account customization project, you can reference components that exist in the target NetSuite account by declaring them as dependencies in the project manifest. Path names are case-sensitive.
When deploying a project from SuiteCloud IDE plug-in, all files within the project folder are compressed and submitted to the server. For example, omitting a custom employee record from deploy.xml does not prevent the object from being included in the compressed file that is sent to the server. However, once the compressed file is on the server, only files and objects defined in deploy.xml are actually deployed to the target NetSuite account.
There can be a negative performance impact on deployment when there are a large number of files in the project that are not specified for deployment. Deployment performance can be improved by only including project files that are intended to be deployed.
The maximum file size of your SuiteCloud project (compressed as a zip file during deployment) is 50 MB. To maintain a small project size, it is recommended that you use File Cabinet to upload large files and images to NetSuite rather than SDF.
Custom objects in an account customization project always replace the custom objects in the NetSuite account when you deploy, regardless of any previous changes made to those objects in the account.
For more information about deploying SuiteCloud projects to a target NetSuite account, see:
deploy in Java CLI
project:deploy in Node CLI
The following example shows a deploy file for an account customization project. In this example, the project is set to deploy the account configuration that is specified in the AccountConfiguration folder. All files in the FileCabinet/SuiteScripts folder are deployed, and two custom NetSuite objects, customrecord_employee.xml and customrecord_company.xml, are deployed.
<deploy> <configuration> <path>~/AccountConfiguration/*</path> </configuration> <files> <path>~/FileCabinet/SuiteScripts/*</path> </files> <objects> <path>~/Objects/customrecord_employee.xml</path> <path>~/Objects/customrecord_company.xml</path> </objects> </deploy>
Deploy File Templates
In case you need to restore your deploy file, download one of the following deploy.xml file templates and paste it inside of your project folder:
- Developing SuiteCloud Development Framework Projects
- Account Component Imports
- SDF SuiteApp Object Dependencies
- Account Component Dependencies
- Feature Dependencies for SDF Custom Objects
- Account Configuration from an Account Customization Project
- Custom Object and File Development
- SuiteCloud Development Framework Project Validation
- Deployment Logs
- Viewing and Uninstalling SDF SuiteApps in a NetSuite Account
- Publishing an SDF SuiteApp