Add (initial) 'deploy' command
This commit is contained in:
@@ -5,6 +5,7 @@ enum Command {
|
||||
|
||||
BUILD;
|
||||
CLEAN;
|
||||
DEPLOY;
|
||||
DISPLAY;
|
||||
UPDATE;
|
||||
RUN;
|
||||
|
||||
@@ -78,6 +78,13 @@ class PlatformTarget {
|
||||
|
||||
}
|
||||
|
||||
if (!Reflect.hasField (metaFields.deploy, "deploy") && (command == "deploy")) {
|
||||
|
||||
LogHelper.info ("", "\n" + LogHelper.accentColor + "Running command: DEPLOY" + LogHelper.resetColor);
|
||||
deploy ();
|
||||
|
||||
}
|
||||
|
||||
if (!Reflect.hasField (metaFields.install, "ignore") && (command == "install" || command == "run" || command == "test")) {
|
||||
|
||||
LogHelper.info ("", "\n" + LogHelper.accentColor + "Running command: INSTALL" + LogHelper.resetColor);
|
||||
@@ -115,6 +122,7 @@ class PlatformTarget {
|
||||
|
||||
@ignore public function build ():Void {}
|
||||
@ignore public function clean ():Void {}
|
||||
@ignore public function deploy ():Void {}
|
||||
@ignore public function display ():Void {}
|
||||
@ignore public function install ():Void {}
|
||||
@ignore public function rebuild ():Void {}
|
||||
|
||||
@@ -19,7 +19,6 @@ class AssetHelper {
|
||||
|
||||
for (asset in project.assets) {
|
||||
|
||||
|
||||
if (asset.type != AssetType.TEMPLATE) {
|
||||
|
||||
var data = {
|
||||
|
||||
19
lime/tools/helpers/DeploymentHelper.hx
Normal file
19
lime/tools/helpers/DeploymentHelper.hx
Normal file
@@ -0,0 +1,19 @@
|
||||
package lime.tools.helpers;
|
||||
|
||||
|
||||
import lime.project.HXProject;
|
||||
|
||||
|
||||
class DeploymentHelper {
|
||||
|
||||
|
||||
public static function deploy (project:HXProject, targetFlags:Map <String, String>, targetDirectory:String) {
|
||||
|
||||
var name = project.meta.title + " (" + project.meta.version + ").zip";
|
||||
|
||||
ZipHelper.compress (PathHelper.combine (targetDirectory, "bin"), PathHelper.combine (targetDirectory, name));
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -7,6 +7,7 @@ import lime.tools.helpers.AndroidHelper;
|
||||
import lime.tools.helpers.ArrayHelper;
|
||||
import lime.tools.helpers.AssetHelper;
|
||||
import lime.tools.helpers.CPPHelper;
|
||||
import lime.tools.helpers.DeploymentHelper;
|
||||
import lime.tools.helpers.FileHelper;
|
||||
import lime.tools.helpers.IconHelper;
|
||||
import lime.tools.helpers.LogHelper;
|
||||
@@ -163,6 +164,13 @@ class AndroidPlatform extends PlatformTarget {
|
||||
}
|
||||
|
||||
|
||||
public override function deploy ():Void {
|
||||
|
||||
DeploymentHelper.deploy (project, targetFlags, targetDirectory);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public override function display ():Void {
|
||||
|
||||
var hxml = PathHelper.findTemplate (project.templatePaths, "android/hxml/" + (project.debug ? "debug" : "release") + ".hxml");
|
||||
|
||||
@@ -6,6 +6,7 @@ import haxe.Template;
|
||||
import lime.tools.helpers.AssetHelper;
|
||||
import lime.tools.helpers.BlackBerryHelper;
|
||||
import lime.tools.helpers.CPPHelper;
|
||||
import lime.tools.helpers.DeploymentHelper;
|
||||
import lime.tools.helpers.FileHelper;
|
||||
import lime.tools.helpers.HTML5Helper;
|
||||
import lime.tools.helpers.IconHelper;
|
||||
@@ -163,6 +164,13 @@ class BlackBerryPlatform extends PlatformTarget {
|
||||
}
|
||||
|
||||
|
||||
public override function deploy ():Void {
|
||||
|
||||
DeploymentHelper.deploy (project, targetFlags, targetDirectory);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public override function display ():Void {
|
||||
|
||||
var hxml = "";
|
||||
|
||||
@@ -7,6 +7,7 @@ import haxe.io.Path;
|
||||
import haxe.Template;
|
||||
import lime.tools.helpers.AssetHelper;
|
||||
import lime.tools.helpers.CPPHelper;
|
||||
import lime.tools.helpers.DeploymentHelper;
|
||||
import lime.tools.helpers.FileHelper;
|
||||
import lime.tools.helpers.HTML5Helper;
|
||||
import lime.tools.helpers.LogHelper;
|
||||
@@ -179,6 +180,13 @@ class EmscriptenPlatform extends PlatformTarget {
|
||||
}
|
||||
|
||||
|
||||
public override function deploy ():Void {
|
||||
|
||||
DeploymentHelper.deploy (project, targetFlags, targetDirectory);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public override function display ():Void {
|
||||
|
||||
var type = "release";
|
||||
|
||||
@@ -5,6 +5,7 @@ import haxe.io.Path;
|
||||
import haxe.Json;
|
||||
import haxe.Template;
|
||||
import lime.tools.helpers.CompatibilityHelper;
|
||||
import lime.tools.helpers.DeploymentHelper;
|
||||
import lime.tools.helpers.FileHelper;
|
||||
import lime.tools.helpers.FlashHelper;
|
||||
import lime.tools.helpers.PathHelper;
|
||||
@@ -138,6 +139,13 @@ class FlashPlatform extends PlatformTarget {
|
||||
}
|
||||
|
||||
|
||||
public override function deploy ():Void {
|
||||
|
||||
DeploymentHelper.deploy (project, targetFlags, targetDirectory);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public override function display ():Void {
|
||||
|
||||
var type = "release";
|
||||
|
||||
@@ -4,6 +4,7 @@ package lime.tools.platforms;
|
||||
import haxe.io.Path;
|
||||
import haxe.Template;
|
||||
import lime.tools.helpers.AssetHelper;
|
||||
import lime.tools.helpers.DeploymentHelper;
|
||||
import lime.tools.helpers.FileHelper;
|
||||
import lime.tools.helpers.HTML5Helper;
|
||||
import lime.tools.helpers.LogHelper;
|
||||
@@ -78,6 +79,13 @@ class HTML5Platform extends PlatformTarget {
|
||||
}
|
||||
|
||||
|
||||
public override function deploy ():Void {
|
||||
|
||||
DeploymentHelper.deploy (project, targetFlags, targetDirectory);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public override function display ():Void {
|
||||
|
||||
var type = "release";
|
||||
|
||||
@@ -7,6 +7,7 @@ import haxe.Template;
|
||||
import lime.tools.helpers.ArrayHelper;
|
||||
import lime.tools.helpers.AssetHelper;
|
||||
import lime.tools.helpers.CPPHelper;
|
||||
import lime.tools.helpers.DeploymentHelper;
|
||||
import lime.tools.helpers.FileHelper;
|
||||
import lime.tools.helpers.IconHelper;
|
||||
import lime.tools.helpers.IOSHelper;
|
||||
@@ -66,6 +67,13 @@ class IOSPlatform extends PlatformTarget {
|
||||
}
|
||||
|
||||
|
||||
public override function deploy ():Void {
|
||||
|
||||
DeploymentHelper.deploy (project, targetFlags, targetDirectory);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public override function display ():Void {
|
||||
|
||||
var hxml = PathHelper.findTemplate (project.templatePaths, "iphone/PROJ/haxe/Build.hxml");
|
||||
|
||||
@@ -5,6 +5,7 @@ import haxe.io.Path;
|
||||
import haxe.Template;
|
||||
import lime.tools.helpers.AssetHelper;
|
||||
import lime.tools.helpers.CPPHelper;
|
||||
import lime.tools.helpers.DeploymentHelper;
|
||||
import lime.tools.helpers.FileHelper;
|
||||
import lime.tools.helpers.NekoHelper;
|
||||
import lime.tools.helpers.NodeJSHelper;
|
||||
@@ -188,6 +189,13 @@ class LinuxPlatform extends PlatformTarget {
|
||||
}
|
||||
|
||||
|
||||
public override function deploy ():Void {
|
||||
|
||||
DeploymentHelper.deploy (project, targetFlags, targetDirectory);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public override function display ():Void {
|
||||
|
||||
var type = "release";
|
||||
|
||||
@@ -5,6 +5,7 @@ import haxe.io.Path;
|
||||
import haxe.Template;
|
||||
import lime.tools.helpers.AssetHelper;
|
||||
import lime.tools.helpers.CPPHelper;
|
||||
import lime.tools.helpers.DeploymentHelper;
|
||||
import lime.tools.helpers.FileHelper;
|
||||
import lime.tools.helpers.IconHelper;
|
||||
import lime.tools.helpers.JavaHelper;
|
||||
@@ -177,6 +178,13 @@ class MacPlatform extends PlatformTarget {
|
||||
}
|
||||
|
||||
|
||||
public override function deploy ():Void {
|
||||
|
||||
DeploymentHelper.deploy (project, targetFlags, targetDirectory);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public override function display ():Void {
|
||||
|
||||
var type = "release";
|
||||
|
||||
@@ -5,6 +5,7 @@ import haxe.io.Path;
|
||||
import haxe.Template;
|
||||
import lime.tools.helpers.AssetHelper;
|
||||
import lime.tools.helpers.CPPHelper;
|
||||
import lime.tools.helpers.DeploymentHelper;
|
||||
import lime.tools.helpers.FileHelper;
|
||||
import lime.tools.helpers.IconHelper;
|
||||
import lime.tools.helpers.PathHelper;
|
||||
@@ -92,6 +93,13 @@ class TizenPlatform extends PlatformTarget {
|
||||
}
|
||||
|
||||
|
||||
public override function deploy ():Void {
|
||||
|
||||
DeploymentHelper.deploy (project, targetFlags, targetDirectory);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public override function display ():Void {
|
||||
|
||||
var type = "release";
|
||||
|
||||
@@ -5,6 +5,7 @@ import haxe.io.Path;
|
||||
import haxe.Template;
|
||||
import lime.tools.helpers.AssetHelper;
|
||||
import lime.tools.helpers.CPPHelper;
|
||||
import lime.tools.helpers.DeploymentHelper;
|
||||
import lime.tools.helpers.FileHelper;
|
||||
import lime.tools.helpers.IconHelper;
|
||||
import lime.tools.helpers.PathHelper;
|
||||
@@ -75,6 +76,13 @@ class WebOSPlatform extends PlatformTarget {
|
||||
}
|
||||
|
||||
|
||||
public override function deploy ():Void {
|
||||
|
||||
DeploymentHelper.deploy (project, targetFlags, targetDirectory);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public override function display ():Void {
|
||||
|
||||
var type = "release";
|
||||
|
||||
@@ -5,6 +5,7 @@ import haxe.io.Path;
|
||||
import haxe.Template;
|
||||
import lime.tools.helpers.AssetHelper;
|
||||
import lime.tools.helpers.CPPHelper;
|
||||
import lime.tools.helpers.DeploymentHelper;
|
||||
import lime.tools.helpers.FileHelper;
|
||||
import lime.tools.helpers.IconHelper;
|
||||
import lime.tools.helpers.NekoHelper;
|
||||
@@ -171,6 +172,13 @@ class WindowsPlatform extends PlatformTarget {
|
||||
}
|
||||
|
||||
|
||||
public override function deploy ():Void {
|
||||
|
||||
DeploymentHelper.deploy (project, targetFlags, targetDirectory);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public override function display ():Void {
|
||||
|
||||
var type = "release";
|
||||
|
||||
@@ -113,7 +113,7 @@ class CommandLineTools {
|
||||
|
||||
updateLibrary ();
|
||||
|
||||
case "clean", "update", "display", "build", "run", "rerun", /*"install",*/ "uninstall", "trace", "test":
|
||||
case "clean", "update", "display", "build", "run", "rerun", /*"install",*/ "uninstall", "trace", "test", "deploy":
|
||||
|
||||
if (words.length < 1 || words.length > 2) {
|
||||
|
||||
@@ -702,9 +702,10 @@ class CommandLineTools {
|
||||
LogHelper.println (" \x1b[1mbuild\x1b[0m -- Compile and package for the specified project/target");
|
||||
LogHelper.println (" \x1b[1mrun\x1b[0m -- Install and run for the specified project/target");
|
||||
LogHelper.println (" \x1b[1mtest\x1b[0m -- Update, build and run in one command");
|
||||
LogHelper.println (" \x1b[1mdisplay\x1b[0m -- Display information for the specified project/target");
|
||||
LogHelper.println (" \x1b[1mdeploy\x1b[0m -- Archive and upload builds");
|
||||
LogHelper.println (" \x1b[1mcreate\x1b[0m -- Create a new project or extension using templates");
|
||||
LogHelper.println (" \x1b[1mrebuild\x1b[0m -- Recompile native binaries for libraries");
|
||||
LogHelper.println (" \x1b[1mdisplay\x1b[0m -- Display information for the specified project/target");
|
||||
LogHelper.println (" \x1b[1minstall\x1b[0m -- Install a library from haxelib, plus dependencies");
|
||||
LogHelper.println (" \x1b[1mremove\x1b[0m -- Remove a library from haxelib");
|
||||
LogHelper.println (" \x1b[1mupgrade\x1b[0m -- Upgrade a library from haxelib");
|
||||
|
||||
Reference in New Issue
Block a user