public override void BuildAndZipPackage(IPackageTree root, IFileSystemProvider fileSystemProvider, Package package, DirectoryInfo newDirectory, DirectoryInfo tempDirectory)
        {
            var tempFileName = Path.Combine(newDirectory.FullName, string.Format("{0}.txt", package.FileName));
            fileSystemProvider.WriteTextFile(tempFileName, "some text");

            var zip = fileSystemProvider.ZipFolder(newDirectory, newDirectory, package.FileName);

            //fileSystemProvider.CopyFile(zip.FullName, zip.FullName, true);

            try
            {
                fileSystemProvider.DeleteFile(tempFileName);
            }
            catch
            {
            }
        }
Esempio n. 2
0
        private void CreateErrorTextFile(Exception exception, Package package, DirectoryInfo directory)
        {
            var tempFileName = Path.Combine(directory.FullName, string.Format("{0}.error", package.FileName));

            var error = string.Format("{0}\n", exception.Message);

            Exception innerException = exception.InnerException;

            while (innerException != null)
            {
                error = string.Format("{0}\n", innerException.Message);

                innerException = innerException.InnerException;
            }

            fileSystemProvider.WriteTextFile(tempFileName, error);
        }
Esempio n. 3
0
        protected virtual void BuildPackage(Package package, DirectoryInfo newDirectory)
        {
            var version = (package.IsTrunk) ? null : package.Version;

            if (!IoC.HasComponent <ICommandArgs>())
            {
                var commandArgs = new CommandArgs(package.Name, false, version, false, null);

                IoC.AddComponentInstance(CommandArgs.IoCKey, typeof(ICommandArgs), commandArgs);
            }
            else
            {
                ((CommandArgs)IoC.Resolve <ICommandArgs>()).SetArguments(package.Name, false, version,
                                                                         false, null);
            }

            var packageBuilder = IoC.Resolve <IPackageCommand>("install");

            //we are rebuilding the package tree each time to reset all the version numbers.
            var cleanPackageTree = new PackageTree(rootDirectory, null);

            packageBuilder.Execute(cleanPackageTree);
        }
Esempio n. 4
0
        public virtual void BuildAndZipPackage(IPackageTree root, IFileSystemProvider fileSystemProvider, Package package, DirectoryInfo newDirectory, DirectoryInfo tempDirectory)
        {
            BuildPackage(package, newDirectory);

            package.SetContents(root.Result);

            DeleteOldZipFiles(newDirectory);

            var zipFile = fileSystemProvider.ZipFolder(root.Result, newDirectory, package.FileName);

            package.ZipFileName = new PackageFile(zipFile);
        }
Esempio n. 5
0
 protected override void because()
 {
     package = new Package(nhibernate, buildMetaData);
 }
Esempio n. 6
0
        public virtual void BuildAndZipPackage(IPackageTree root, IFileSystemProvider fileSystemProvider, Package package, DirectoryInfo newDirectory, DirectoryInfo tempDirectory)
        {
            BuildPackage(package, newDirectory);

            package.SetContents(root.Result);

            //DeleteOldZipFiles(newDirectory);

            var zipFile = fileSystemProvider.ZipFolder(root.Result, newDirectory, package.FileName);

            package.ZipFileName = new PackageFile(zipFile);
        }
Esempio n. 7
0
        private void CreateErrorTextFile(Exception exception, Package package, DirectoryInfo directory)
        {
            var tempFileName = Path.Combine(directory.FullName, string.Format("{0}.error", package.FileName));

            var error = string.Format("{0}\n", exception.Message);

            Exception innerException = exception.InnerException;

            while (innerException != null)
            {
                error = string.Format("{0}\n", innerException.Message);

                innerException = innerException.InnerException;
            }

            fileSystemProvider.WriteTextFile(tempFileName, error);
        }
Esempio n. 8
0
        protected virtual void BuildPackage(Package package, DirectoryInfo newDirectory)
        {
            var version = (package.IsTrunk) ? null : package.Version;

            if (!IoC.HasComponent <ICommandArgs>())
            {
                var commandArgs = new CommandArgs(package.Name, false, version, false, null);

                IoC.AddComponentInstance(CommandArgs.IoCKey, typeof(ICommandArgs), commandArgs);
            }
            else
            {
                ((CommandArgs) IoC.Resolve<ICommandArgs>()).SetArguments(package.Name, false, version,
                                                                                           false, null);
            }

            var packageBuilder = IoC.Resolve<IPackageCommand>("install");

            //we are rebuilding the package tree each time to reset all the version numbers.
            var cleanPackageTree = new PackageTree(rootDirectory, null);

            packageBuilder.Execute(cleanPackageTree);
        }
Esempio n. 9
0
        public override void before_each_spec()
        {
            var dependencyResolver = MockRepository.GenerateStub<IDependencyResolver>();
            fileSystemProvider = MockRepository.GenerateStub<IFileSystemProvider>();
            packageBuilder = MockRepository.GenerateStub<IPackageCommand>();
            rootPackageTree = MockRepository.GenerateStub<IPackageTree>();
            buildMetaData = MockRepository.GenerateStub<IBuildMetaData>();

            commandArgs = new CommandArgs("horn", false, null, false, null);

            dependencyResolver.Stub(x => x.HasComponent<ICommandArgs>()).Return(true);

            dependencyResolver.Stub(x => x.Resolve<ICommandArgs>()).Return(commandArgs);

            dependencyResolver.Stub(x => x.Resolve<IPackageCommand>("install")
                ).Return(packageBuilder);

            IoC.InitializeWith(dependencyResolver);

            rootPackageTree.Stub(x => x.Result).Return(new DirectoryInfo(@"z:\horn"));

            buildMetaData.ProjectInfo= new Dictionary<string, object>();

            rootPackageTree.Stub(x => x.GetAllPackageMetaData()).Return(new List<IBuildMetaData> {buildMetaData});

            rootPackageTree.Stub(x => x.Name).Return("horn");

            var category = new Category(null, rootPackageTree);

            fileSystemProvider.Stub(x => x.GetFiles(Arg<DirectoryInfo>.Is.TypeOf, Arg<string>.Is.TypeOf)).Return(
                new List<FileInfo>
                    {
                        new FileInfo(string.Format("horn-{0}.zip",
                                                   new DateTime(2009, 10, 30).ToString(FileSystemProvider.FileDateFormat))),
                        new FileInfo(string.Format("horn-{0}.zip",
                                                   new DateTime(2009, 10, 29).ToString(FileSystemProvider.FileDateFormat))),
                        new FileInfo(string.Format("horn-{0}.zip",
                                                   new DateTime(2009, 10, 31).ToString(FileSystemProvider.FileDateFormat)))
                    }.ToArray());

            package = new PackageDouble(category, buildMetaData);

            string zipFileName = string.Format("{0}-{1}.zip", package.Name, DateTime.Now.ToString(FileSystemProvider.FileDateFormat));

            fileSystemProvider.Stub(
                x => x.ZipFolder(Arg<DirectoryInfo>.Is.TypeOf, Arg<DirectoryInfo>.Is.TypeOf, Arg<string>.Is.TypeOf)).
                Return(new FileInfo(zipFileName));
        }