40 lines
1.6 KiB
C++
40 lines
1.6 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "Commandlets/Commandlet.h"
|
|
#include "Containers/Array.h"
|
|
#include "Containers/UnrealString.h"
|
|
#include "HAL/Platform.h"
|
|
#include "UObject/UObjectGlobals.h"
|
|
|
|
#include "ContentValidationCommandlet.generated.h"
|
|
|
|
class IAssetRegistry;
|
|
class UObject;
|
|
|
|
UCLASS()
|
|
class UContentValidationCommandlet : public UCommandlet
|
|
{
|
|
GENERATED_UCLASS_BODY()
|
|
|
|
public:
|
|
// Begin UCommandlet Interface
|
|
virtual int32 Main(const FString& Params) override;
|
|
// End UCommandlet Interface
|
|
|
|
private:
|
|
/** Validate steps */
|
|
bool AutoExportMCPTemplates(const TArray<FString>& ChangedPackageNames, const TArray<FString>& DeletedPackageNames, const TArray<FString>& ChangedCode, const TArray<FString>& ChangedOtherFiles, const FString& SyncedCL, const FString& Robomerge, bool& bOutDidExport);
|
|
bool AutoExportDadContent(const FString& BuildCL, const FString& AccessToken);
|
|
bool AutoPersistDadContent(const FString& AccessToken);
|
|
|
|
private:
|
|
/** Helper functions */
|
|
bool GetAllChangedFiles(IAssetRegistry& AssetRegistry, const FString& P4CmdString, TArray<FString>& OutChangedPackageNames, TArray<FString>& DeletedPackageNames, TArray<FString>& OutChangedCode, TArray<FString>& OutChangedOtherFiles) const;
|
|
void GetAllPackagesInPath(IAssetRegistry& AssetRegistry, const FString& InPathString, TArray<FString>& OutPackageNames) const;
|
|
void GetAllPackagesOfType(const FString& OfTypeString, TArray<FString>& OutPackageNames) const;
|
|
bool LaunchP4(const FString& Args, TArray<FString>& Output, int32& OutReturnCode) const;
|
|
FString GetLocalPathFromDepotPath(const FString& DepotPathName) const;
|
|
};
|