mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 19:54:57 +08:00
Implementing "package install" command based on NuGet
--HG-- branch : nuget
This commit is contained in:
@@ -10,7 +10,7 @@ namespace Orchard.Packaging.Commands {
|
||||
[OrchardFeature("Orchard.Packaging")]
|
||||
public class PackagingCommands : DefaultOrchardCommandHandler {
|
||||
private static readonly string OrchardWebProj = HostingEnvironment.MapPath("~/Orchard.Web.csproj");
|
||||
private const string PackagePath = "Packages";
|
||||
private const string CreatePackagePath = "CreatedPackages";
|
||||
|
||||
private readonly IPackageManager _packageManager;
|
||||
|
||||
@@ -29,7 +29,7 @@ namespace Orchard.Packaging.Commands {
|
||||
|
||||
// append "Orchard.[ExtensionType]" to prevent conflicts with other packages (e.g, TinyMce, jQuery, ...)
|
||||
var filename = string.Format("Orchard.{0}.{1}.{2}.nupkg", packageData.ExtensionType, packageData.ExtensionName, packageData.ExtensionVersion);
|
||||
var packagePath = Path.Combine(Directory.GetParent(OrchardWebProj).FullName, PackagePath);
|
||||
var packagePath = Path.Combine(GetSolutionFolder(), CreatePackagePath);
|
||||
|
||||
if(!Directory.Exists(packagePath)) {
|
||||
Directory.CreateDirectory(packagePath);
|
||||
@@ -54,10 +54,12 @@ namespace Orchard.Packaging.Commands {
|
||||
Context.Output.WriteLine(T("File \"{0}\" does not exist.", filename));
|
||||
}
|
||||
|
||||
using (var stream = File.Open(filename, FileMode.Open, FileAccess.Read)) {
|
||||
var packageInfo = _packageManager.Install(stream);
|
||||
Context.Output.WriteLine(T("Package \"{0}\" successfully installed at \"{1}\"", packageInfo.ExtensionName, packageInfo.ExtensionPath));
|
||||
}
|
||||
var packageInfo = _packageManager.Install(filename, GetSolutionFolder());
|
||||
Context.Output.WriteLine(T("Package \"{0}\" successfully installed at \"{1}\"", packageInfo.ExtensionName, packageInfo.ExtensionPath));
|
||||
}
|
||||
|
||||
private string GetSolutionFolder() {
|
||||
return Directory.GetParent(OrchardWebProj).Parent.FullName;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user