Example #1
0
        public void ReadMasters(FilePath rootPath, FilePath[] masters)
        {
            foreach (var master in masters)
            {
                var fullPath = rootPath.Navigate(master);
                if (!Directory.Exists(fullPath.ToEnvironmentalPath())) continue;

                SetByLatest(fullPath, _masters, "*");
            }
        }
Example #2
0
        public void DeletePath(FilePath path)
        {
            var epath = path.ToEnvironmentalPath();
            var gitPath = path.Navigate((FilePath)".git").ToEnvironmentalPath();

            if (Directory.Exists(gitPath)) Directory.Delete(gitPath, true);

            if (Directory.Exists(epath))
                Directory.Delete(epath, true);
            else
                File.Delete(epath);
        }
Example #3
0
        public int Build(FilePath rootPath, FilePath buildPath)
        {
            var path = _files.GetFirstMatch(buildPath, _patterns.BuildPattern);
            if (path == null) return 0;

            foreach (var copyPath in _patterns.CopyPaths)
            {
                var src = rootPath.Navigate(copyPath.Source);
                var dst = buildPath.Navigate(copyPath.Destination);
                if (_files.Exists(src))
                    _files.CopyDirectory(src, dst);
            }

            var command = string.Format(_patterns.BuildCmd, path.LastElement());
            Log.Verbose(command);

            return buildPath.Call("cmd", "/c " + command);
        }
Example #4
0
        private void RebuildByScripts(FilePath projPath)
        {
            var dbPath = projPath.Navigate((FilePath) "DatabaseScripts");
            var selfPath = projPath.Navigate((FilePath)"../DatabaseScripts");
            var sqlSpecificPath = dbPath.Navigate((FilePath) "SqlServer");

            if (!_files.Exists(dbPath))
            {
                if (_files.Exists(selfPath)) dbPath = selfPath;
                else return;
            }

            Log.Status("Scripts from " + dbPath.ToEnvironmentalPath());

            var finalSrcPath = (_files.Exists(sqlSpecificPath)) ? (sqlSpecificPath) : (dbPath);

            foreach (var file in _files.SortedDescendants(finalSrcPath, "*.sql"))
            {
                Log.Verbose(file.LastElement());
                _builder.RunSqlScripts(projPath, file);
            }
        }
Example #5
0
 FilePath DependencyRulePath(FilePath filePath, string path)
 {
     return filePath.Navigate((FilePath)path)
         .Navigate(_patterns.DependencyPath).Navigate((FilePath)"Depends.rule");
 }