2020-04-21 22:08:08 +00:00
|
|
|
|
using System;
|
2019-11-30 23:23:56 +00:00
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
2020-04-21 22:08:08 +00:00
|
|
|
|
using UnityBuilderAction.Input;
|
|
|
|
|
using UnityBuilderAction.Reporting;
|
|
|
|
|
using UnityBuilderAction.Versioning;
|
2019-11-30 23:23:56 +00:00
|
|
|
|
using UnityEditor;
|
|
|
|
|
using UnityEditor.Build.Reporting;
|
|
|
|
|
|
2019-12-07 22:43:37 +00:00
|
|
|
|
namespace UnityBuilderAction
|
2019-11-30 23:23:56 +00:00
|
|
|
|
{
|
2019-12-07 22:43:37 +00:00
|
|
|
|
static class Builder
|
2019-11-30 23:23:56 +00:00
|
|
|
|
{
|
2019-12-07 22:43:37 +00:00
|
|
|
|
public static void BuildProject()
|
|
|
|
|
{
|
|
|
|
|
// Gather values from args
|
2020-04-21 22:08:08 +00:00
|
|
|
|
var options = ArgumentsParser.GetValidatedOptions();
|
2019-11-30 23:23:56 +00:00
|
|
|
|
|
2019-12-07 22:43:37 +00:00
|
|
|
|
// Gather values from project
|
|
|
|
|
var scenes = EditorBuildSettings.scenes.Where(scene => scene.enabled).Select(s => s.path).ToArray();
|
2019-11-30 23:23:56 +00:00
|
|
|
|
|
2019-12-07 22:43:37 +00:00
|
|
|
|
// Define BuildPlayer Options
|
|
|
|
|
var buildOptions = new BuildPlayerOptions {
|
|
|
|
|
scenes = scenes,
|
|
|
|
|
locationPathName = options["customBuildPath"],
|
|
|
|
|
target = (BuildTarget) Enum.Parse(typeof(BuildTarget), options["buildTarget"]),
|
|
|
|
|
};
|
2019-11-30 23:23:56 +00:00
|
|
|
|
|
2020-04-21 22:08:08 +00:00
|
|
|
|
// Set version for this build
|
|
|
|
|
VersionApplicator.SetVersion(options["versioning"], options["version"]);
|
|
|
|
|
|
2019-12-07 22:43:37 +00:00
|
|
|
|
// Perform build
|
|
|
|
|
BuildReport buildReport = BuildPipeline.BuildPlayer(buildOptions);
|
2019-11-30 23:23:56 +00:00
|
|
|
|
|
2019-12-07 22:43:37 +00:00
|
|
|
|
// Summary
|
|
|
|
|
BuildSummary summary = buildReport.summary;
|
2020-04-21 22:08:08 +00:00
|
|
|
|
StdOutReporter.ReportSummary(summary);
|
2019-11-30 23:23:56 +00:00
|
|
|
|
|
2019-12-07 22:43:37 +00:00
|
|
|
|
// Result
|
|
|
|
|
BuildResult result = summary.result;
|
2020-04-21 22:08:08 +00:00
|
|
|
|
StdOutReporter.ExitWithResult(result);
|
2019-11-30 23:23:56 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|