private static void PerformPostBuild()
        {
            // Run post-build actions.
            BuildAction[] buildActions = BuildSettings.postBuildActions.buildActions;
            if (buildActions != null)
            {
                for (int i = 0; i < buildActions.Length; i++)
                {
                    BuildAction action = buildActions[i];

                    // Check if execute method has been overriden.
                    MethodInfo m = action.GetType().GetMethod("Execute");
                    if (m.GetBaseDefinition().DeclaringType != m.DeclaringType && action.actionType == BuildAction.ActionType.SingleRun)
                    {
                        if (action.actionEnabled)
                        {
                            BuildNotificationList.instance.AddNotification(new BuildNotification(
                                                                               BuildNotification.Category.Notification,
                                                                               string.Format("Performing Post-Build Action ({0}/{1}).", i + 1, buildActions.Length), action.actionName,
                                                                               true, null));

                            action.Execute();
                        }
                        else
                        {
                            BuildNotificationList.instance.AddNotification(new BuildNotification(
                                                                               BuildNotification.Category.Notification,
                                                                               string.Format("Skipping Post-Build Action ({0}/{1}).", i + 1, buildActions.Length), action.actionName,
                                                                               true, null));
                        }
                    }
                }
            }
        }
Exemple #2
0
        private static void PerformPreBuild(out DateTime buildTime)
        {
            buildTime = DateTime.Now;

            // Clear any old notifications.
            BuildNotificationList.instance.RefreshAll();

            // Generate version string.
            if (BuildSettings.productParameters.autoGenerate)
            {
                GenerateVersionString(BuildSettings.productParameters, buildTime);
            }

            // Run pre-build actions.
            BuildAction[] buildActions = BuildSettings.preBuildActions.buildActions;
            if (buildActions != null)
            {
                for (int i = 0; i < buildActions.Length; i++)
                {
                    BuildAction action = buildActions[i];

                    // Check if execute method has been overriden.
                    MethodInfo m = action.GetType().GetMethod("Execute");
                    if (m.GetBaseDefinition().DeclaringType != m.DeclaringType &&
                        action.actionType == BuildAction.ActionType.SingleRun)
                    {
                        if (action.actionEnabled)
                        {
                            BuildNotificationList.instance.AddNotification(new BuildNotification(
                                                                               BuildNotification.Category.Notification,
                                                                               string.Format("Performing Pre-Build Action ({0}/{1}).", i + 1, buildActions.Length),
                                                                               action.actionName,
                                                                               true, null));

                            action.Execute();
                        }
                        else
                        {
                            BuildNotificationList.instance.AddNotification(new BuildNotification(
                                                                               BuildNotification.Category.Notification,
                                                                               string.Format("Skipping Pre-Build Action ({0}/{1}).", i + 1, buildActions.Length),
                                                                               action.actionName,
                                                                               true, null));
                        }
                    }
                }
            }
        }