Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


Pack

Creates a GZip tarball file from a package folder. The format and content of the file is the same as if the package was published to a package registry.
Read time 3 minutesLast updated 12 days ago

Definition

Pack(string, string)

Creates a GZip tarball file from a package folder. The format and content of the file is the same as if the package was published to a package registry.
Warning
Deprecated. Pack(string, string) is deprecated and will be removed in a later version. Use Pack(string, string, string) instead.
public static PackRequest Pack(string packageFolder, string targetFolder)

Parameters

packageFolder

Folder containing the package.
ArgumentException
is thrown if
packageFolder
is
null
, empty, or whitespace.

targetFolder

Folder where the Package Manager will write the GZip tarball file. The Package Manager will create this folder if it doesn't exist.
ArgumentException
is thrown if
targetFolder
is
null
, empty, or whitespace.

Returns

Type

Description

PackRequestA PackRequest instance, which you can use to get the PackOperationResult representing the path of the generated tarball from the
PackRequest.Result
property.

Remarks

Pack()
is an asynchronous operation. Before the operation is complete, you can use the
PackRequest
instance to monitor the asynchronous operation.
Note: Make sure any other Client operations have completed before calling this method. For more information, refer to the note on the Client class reference page.

Examples

using UnityEngine;using UnityEditor.PackageManager;using UnityEditor.PackageManager.Requests;[ExecuteInEditMode]public class PackageManagerClientPackExample : MonoBehaviour{ PackRequest m_PackRequest; void Start() { Debug.Log("Client.Pack example..."); // Replace with your actual package folder, target output folder, and organization ID string packageFolder = "Packages/com.company.mypackage"; string targetFolder = "Builds"; string ownerOrgId = "1234567"; m_PackRequest = Client.Pack(packageFolder, targetFolder, ownerOrgId); } void Update() { if (m_PackRequest != null && m_PackRequest.IsCompleted) { if (m_PackRequest.Status == StatusCode.Success) { Debug.Log($"Package successfully packed at: {m_PackRequest.Result.tarballPath}"); } else { Debug.LogError($"Pack failed: {m_PackRequest.Error.message}"); } m_PackRequest = null; } }}

Pack(string, string, string)

Creates a GZip tarball file from a package folder. The format and content of the file is the same as if the package was published to a package registry.
public static PackRequest Pack(string packageFolder, string targetFolder, string ownerOrgId)

Parameters

packageFolder

Folder containing the package.
ArgumentException
is thrown if
packageFolder
is
null
, empty, or whitespace.

targetFolder

Folder where the Package Manager will write the GZip tarball file. The Package Manager will create this folder if it doesn't exist.
ArgumentException
is thrown if
targetFolder
is
null
, empty, or whitespace.

ownerOrgId

The ID of the organization that owns the package.
ArgumentException
is thrown if
ownerOrgId
is
null
, empty, or whitespace.

Returns

Type

Description

PackRequestA PackRequest instance, which you can use to get the PackOperationResult representing the path of the generated tarball from the
PackRequest.Result
property.

Remarks

Pack()
is an asynchronous operation. Before the operation is complete, you can use the
PackRequest
instance to monitor the asynchronous operation.
Note: Make sure any other Client operations have completed before calling this method. For more information, refer to the note on the Client class reference page.

Examples

using UnityEngine;using UnityEditor.PackageManager;using UnityEditor.PackageManager.Requests;[ExecuteInEditMode]public class PackageManagerClientPackExample : MonoBehaviour{ PackRequest m_PackRequest; void Start() { Debug.Log("Client.Pack example..."); // Replace with your actual package folder, target output folder, and organization ID string packageFolder = "Packages/com.company.mypackage"; string targetFolder = "Builds"; string ownerOrgId = "1234567"; m_PackRequest = Client.Pack(packageFolder, targetFolder, ownerOrgId); } void Update() { if (m_PackRequest != null && m_PackRequest.IsCompleted) { if (m_PackRequest.Status == StatusCode.Success) { Debug.Log($"Package successfully packed at: {m_PackRequest.Result.tarballPath}"); } else { Debug.LogError($"Pack failed: {m_PackRequest.Error.message}"); } m_PackRequest = null; } }}