Ejemplo n.º 1
0
        /// <summary>
        /// Bump the version in all necessary files.
        /// </summary>
        public void BumpAllVersions()
        {
            var moduleName = _fileHelper.ModuleName;

            Console.WriteLine("Bumping version for " + moduleName + "...");
            using (PowerShell powershell = PowerShell.Create())
            {
                powershell.AddScript("Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope Process;");
                powershell.AddScript("$metadata = Test-ModuleManifest -Path " + _fileHelper.OutputModuleManifestPath + ";$metadata.Version;$metadata.PrivateData.PSData.Prerelease");
                var cmdletResult = powershell.Invoke();
                _oldVersion = cmdletResult[0]?.ToString();
                _isPreview  = !string.IsNullOrEmpty(cmdletResult[1]?.ToString());
            }

            if (_oldVersion == null)
            {
                throw new Exception("Unable to obtain old version of " + moduleName + " using the built module manifest.");
            }

            _newVersion = IsNewModule() ? _oldVersion : GetBumpedVersion();
            if (MinimalVersion != null && MinimalVersion > new AzurePSVersion(_newVersion))
            {
                Console.WriteLine($"Adjust version from {_newVersion} to {MinimalVersion} due to MinimalVersion.csv");
                _newVersion = MinimalVersion.ToString();
            }
            if (_oldVersion == _newVersion)
            {
                Console.WriteLine(_fileHelper.ModuleName + " is a new module. Keeping the version at " + _oldVersion);

                if (!_newVersion.StartsWith("0"))
                {
                    // Generate the serialized module metadata file
                    _metadataHelper.SerializeModule();
                }
            }
            else
            {
                Console.WriteLine("Updating version for " + _fileHelper.ModuleName + " from " + _oldVersion + " to " + _newVersion);
            }

            UpdateSerializedAssemblyVersion();
            UpdateChangeLog();
            var releaseNotes = GetReleaseNotes();

            UpdateOutputModuleManifest(releaseNotes);
            UpdateRollupModuleManifest();
            UpdateAssemblyInfo();
            UpdateDependentModules();
            Console.WriteLine("Finished bumping version " + moduleName + "\n");
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Bump the version in all necessary files.
        /// </summary>
        public void BumpAllVersions()
        {
            var moduleName = _fileHelper.ModuleName;

            Console.WriteLine("Bumping version for " + moduleName + "...");

            (_oldVersion, _isPreview) = GetOldVersion();

            _newVersion = IsNewModule() ? _oldVersion : GetBumpedVersion();
            if (MinimalVersion != null && MinimalVersion > new AzurePSVersion(_newVersion))
            {
                Console.WriteLine($"Adjust version from {_newVersion} to {MinimalVersion} due to MinimalVersion.csv");
                _newVersion = MinimalVersion.ToString();
            }

            if (_oldVersion == _newVersion)
            {
                Console.WriteLine(_fileHelper.ModuleName + " is a new module. Keeping the version at " + _oldVersion);

                if (!_newVersion.StartsWith("0"))
                {
                    // Generate the serialized module metadata file
                    _metadataHelper.SerializeModule();
                }
            }
            else
            {
                Console.WriteLine("Updating version for " + _fileHelper.ModuleName + " from " + _oldVersion + " to " + _newVersion);
            }

            UpdateSerializedAssemblyVersion();
            UpdateChangeLog();
            var releaseNotes = GetReleaseNotes();

            UpdateOutputModuleManifest(releaseNotes);
            UpdateRollupModuleManifest();
            UpdateAssemblyInfo();
            UpdateDependentModules();
            Console.WriteLine("Finished bumping version " + moduleName + "\n");
        }