You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#rb Per.Larsson #jira UE-172166 #rnx #preflight 63c64982d040694ab83efdd1 - Cmdline to use '-run=VirtualizationEditor.VirtualizeProject'. - The commandlet will first scan the project to find all packages (.uasset/.umap) and then attempt to virtualize them. - If revision control is enabled then virtualized packages will be checked out using the current settings for the project (so things like -P4Changelist= will work) [CL 23735820 by paul chipchase in ue5-main branch]
40 lines
1.2 KiB
C++
40 lines
1.2 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#include "VirtualizeProjectCommandlet.h"
|
|
|
|
#include "CommandletUtils.h"
|
|
#include "Virtualization/VirtualizationSystem.h"
|
|
|
|
UVirtualizeProjectCommandlet::UVirtualizeProjectCommandlet(const FObjectInitializer& ObjectInitializer)
|
|
: Super(ObjectInitializer)
|
|
{
|
|
|
|
}
|
|
|
|
int32 UVirtualizeProjectCommandlet::Main(const FString& Params)
|
|
{
|
|
TRACE_CPUPROFILER_EVENT_SCOPE(UVirtualizeProjectCommandlet);
|
|
|
|
UE_LOG(LogVirtualization, Display, TEXT("Scanning for project packages..."));
|
|
TArray<FString> Packages = UE::Virtualization::FindAllPackages();
|
|
|
|
UE_LOG(LogVirtualization, Display, TEXT("Virtualizing packages..."));
|
|
|
|
UE::Virtualization::IVirtualizationSystem& System = UE::Virtualization::IVirtualizationSystem::Get();
|
|
UE::Virtualization::FVirtualizationResult Result = System.TryVirtualizePackages(Packages, UE::Virtualization::EVirtualizationOptions::Checkout);
|
|
if (Result.WasSuccessful())
|
|
{
|
|
UE_LOG(LogVirtualization, Display, TEXT("Virtualized %d package(s)"), Result.VirtualizedPackages.Num());
|
|
if (!Result.CheckedOutPackages.IsEmpty())
|
|
{
|
|
UE_LOG(LogVirtualization, Display, TEXT("Checked out %d package(s) from revision control"), Result.CheckedOutPackages.Num());
|
|
}
|
|
|
|
return 0;
|
|
}
|
|
else
|
|
{
|
|
return -1;
|
|
}
|
|
}
|