822,350

Downloads

401,356

Downloads of 2.5.0

2017-06-18

Last published

Carbon

2.5.0

Carbon is a PowerShell module for automating the configuration Windows 7, 8, 2008, and 2012 and automation the installation and configuration of Windows applications, websites, and services. It can configure and manage:

* Local users and groups

* IIS websites, virtual directories, and applications

* File system, registry, and certificate permissions

* Certificates

* Privileges

* Services

* Encryption

* Junctions

* Hosts file

* INI files

* Performance counters

* Shares

* .NET connection strings and app settings

* And much more!

All functions are idempotent: when run multiple times with the same arguments, your system will be in the same state without failing or producing errors.

Inspect

PS> Save-Module -Name Carbon -Path <path>

Install

PS> Install-Module -Name Carbon

Deploy

See Documentation for more details.

Release Notes

## Enhancements

* Added `DelayedAutoStart` boolean property to objects returned by `Get-ServiceConfiguration`. This flag is `true` when a service is set to start automatically, delayed. `False` otherwise. Added extended
* The `Install-Service` function and the `Carbon_Service` DSC resource can now set a service's startup type to `Automatic (Delayed)`. Pass `Automatic` to the `StartupType` parameter and use the new `Delayed` switch. The `Delayed` switch is ignored unless `StartupType` is `Automatic`. Fixes [issue #216](https://bitbucket.org/splatteredbits/carbon/issues/216/community-add-automaticdelayed-in).
* The `Uninstall-Certificate` function can now delete a certificate by just its thumbprint. The certificate will be uninstalled from *all* stores. You can pipe the thumbprint or a certificate object to `Uninstall-Certificate`.
* Added an `EnsureRunning` switch to `Install-Service` function to ensure that any service is started after configuring. (By default, `Install-Service` leaves a service stopped if it was stopped when `Install-Service` begins.)
* Added `IsSymbolicLink` extended type property to directory and file objects (i.e. `System.IO.DirectoryInfo` and `System.IO.FileInfo` objects).
* Added `TargetPath` extended type property to file (i.e. `System.IO.FileInfo`) objects. If a file is a symbolic link, this property will return the file the link points to.
* The `TargetPath` extended type property on directory (i.e. `System.IO.DirectoryInfo) objects now returns target paths when a directory is a symbolic link.
* `Initiazlie-Lcm` can't be used on Windows Server 2016 and later to put the DSC local configuration manager into pull mode. `Initialize-Lcm` now writes an error when you try.

## Bug Fixes

* `Install-Service` and the `Carbon_Service` DSC resource write errors when a service is running and its startup type is changed to `Disabled`.
* The `Carbon_ScheduledTask` DSC resource writes incorrect information to verbose log when the current and desired credential for the scheduled task are different.
* The `Carbon_ScheduledTask` DSC resource doesn't correctly detect when a task's identity has changed (it wasn't converting usernames to their canonical representation before comparing the existing identity with the desired identity).
* Fixed: Importing Carbon in 32-bit PowerShell fails on a 64-bit operating system. DSC isn't available so the `Initialize-Lcm` function can't be exported. Thanks to [Anders Andersson](https://bitbucket.org/McAndersDK/) for contribuging the fix.
* Fixed: `Install-Service` and `Carbon_Service` DSC resource fail to change the identity a service runs as if switching from a custom account to the default `NetworkService` account.
* Fixed: `Get-PowerShellModuleInstallPath` returns nothing when run under 32-bit (x86) PowerShell on 64-bit Windows.Fixed: `Get-PowerShellModuleInstallPath` returns nothing when run under 32-bit (x86) PowerShell on 64-bit Windows.

Owners

Authors

Aaron Jensen

Copyright

Copyright 2011 - 2016 Aaron Jensen.

FileList

Show
  • Carbon.nuspec
  • Carbon.format.ps1xml
  • Carbon.psd1
  • Carbon.psm1
  • Carbon.types.ps1xml
  • Import-Carbon.ps1
  • bin\Carbon.dll
  • bin\Carbon.Iis.dll
  • bin\Carbon.Xdt.dll
  • bin\Ionic.Zip.dll
  • bin\Microsoft.Web.XmlTransform.dll
  • bin\Protect-String.ps1
  • bin\Remove-DotNetAppSetting.ps1
  • bin\Remove-EnvironmentVariable.ps1
  • bin\Set-DotNetAppSetting.ps1
  • bin\Set-DotNetConnectionString.ps1
  • bin\Set-EnvironmentVariable.ps1
  • DscResources\Initialize-CarbonDscResource.ps1
  • DscResources\Carbon_EnvironmentVariable\Carbon_EnvironmentVariable.psm1
  • DscResources\Carbon_EnvironmentVariable\Carbon_EnvironmentVariable.schema.mof
  • DscResources\Carbon_FirewallRule\Carbon_FirewallRule.psm1
  • DscResources\Carbon_FirewallRule\Carbon_FirewallRule.schema.mof
  • DscResources\Carbon_Group\Carbon_Group.psm1
  • DscResources\Carbon_Group\Carbon_Group.schema.mof
  • DscResources\Carbon_IniFile\Carbon_IniFile.psm1
  • DscResources\Carbon_IniFile\Carbon_IniFile.schema.mof
  • DscResources\Carbon_Permission\Carbon_Permission.psm1
  • DscResources\Carbon_Permission\Carbon_Permission.schema.mof
  • DscResources\Carbon_Privilege\Carbon_Privilege.psm1
  • DscResources\Carbon_Privilege\Carbon_Privilege.schema.mof
  • DscResources\Carbon_ScheduledTask\Carbon_ScheduledTask.psm1
  • DscResources\Carbon_ScheduledTask\Carbon_ScheduledTask.schema.mof
  • DscResources\Carbon_Service\Carbon_Service.psm1
  • DscResources\Carbon_Service\Carbon_Service.schema.mof
  • en-US\about_Carbon.help.txt
  • en-US\about_Carbon_2.0.help.txt
  • en-US\about_Carbon_Contributing.help.txt
  • en-US\about_Carbon_Extended_Type_Data.help.txt
  • en-US\about_Carbon_Installation.help.txt
  • en-US\about_Carbon_Support.help.txt
  • Formats\Carbon.Security.HttpUrlAcl.format.ps1xml
  • Functions\Add-GroupMember.ps1
  • Functions\Add-IisDefaultDocument.ps1
  • Functions\Add-IisServerManagerMember.ps1
  • Functions\Add-TrustedHost.ps1
  • Functions\Assert-AdminPrivilege.ps1
  • Functions\Assert-FirewallConfigurable.ps1
  • Functions\Assert-Service.ps1
  • Functions\Assert-WindowsFeatureFunctionsSupported.ps1
  • Functions\Clear-DscLocalResourceCache.ps1
  • Functions\Clear-MofAuthoringMetadata.ps1
  • Functions\Clear-TrustedHost.ps1
  • Functions\Complete-Job.ps1
  • Functions\Compress-Item.ps1
  • Functions\Convert-SecureStringToString.ps1
  • Functions\Convert-XmlFile.ps1
  • Functions\ConvertFrom-Base64.ps1
  • Functions\ConvertTo-Base64.ps1
  • Functions\ConvertTo-ContainerInheritanceFlags.ps1
  • Functions\ConvertTo-InheritanceFlag.ps1
  • Functions\ConvertTo-Key.ps1
  • Functions\ConvertTo-PropagationFlag.ps1
  • Functions\ConvertTo-ProviderAccessControlRights.ps1
  • Functions\ConvertTo-SecurityIdentifier.ps1
  • Functions\Copy-DscResource.ps1
  • Functions\Disable-AclInheritance.ps1
  • Functions\Disable-FirewallStatefulFtp.ps1
  • Functions\Disable-IEEnhancedSecurityConfiguration.ps1
  • Functions\Disable-IisSecurityAuthentication.ps1
  • Functions\Disable-NtfsCompression.ps1
  • Functions\Enable-AclInheritance.ps1
  • Functions\Enable-FirewallStatefulFtp.ps1
  • Functions\Enable-IEActivationPermission.ps1
  • Functions\Enable-IisDirectoryBrowsing.ps1
  • Functions\Enable-IisSecurityAuthentication.ps1
  • Functions\Enable-IisSsl.ps1
  • Functions\Enable-NtfsCompression.ps1
  • Functions\Expand-Item.ps1
  • Functions\Find-ADUser.ps1
  • Functions\Format-ADSearchFilterValue.ps1
  • Functions\Get-ADDomainController.ps1
  • Functions\Get-Certificate.ps1
  • Functions\Get-CertificateStore.ps1
  • Functions\Get-ComPermission.ps1
  • Functions\Get-ComSecurityDescriptor.ps1
  • Functions\Get-DscError.ps1
  • Functions\Get-DscWinEvent.ps1
  • Functions\Get-FileShare.ps1
  • Functions\Get-FileSharePermission.ps1
  • Functions\Get-FirewallRule.ps1
  • Functions\Get-Group.ps1
  • Functions\Get-HttpUrlAcl.ps1
  • Functions\Get-IdentityPrincipalContext.ps1
  • Functions\Get-IisApplication.ps1
  • Functions\Get-IisAppPool.ps1
  • Functions\Get-IisConfigurationSection.ps1
  • Functions\Get-IisHttpHeader.ps1
  • Functions\Get-IisHttpRedirect.ps1
  • Functions\Get-IisMimeMap.ps1
  • Functions\Get-IisSecurityAuthentication.ps1
  • Functions\Get-IisVersion.ps1
  • Functions\Get-IisWebsite.ps1
  • Functions\Get-IPAddress.ps1
  • Functions\Get-Msi.ps1
  • Functions\Get-MsmqMessageQueue.ps1
  • Functions\Get-MsmqMessageQueuePath.ps1
  • Functions\Get-PathProvider.ps1
  • Functions\Get-PathToHostsFile.ps1
  • Functions\Get-PerformanceCounter.ps1
  • Functions\Get-Permission.ps1
  • Functions\Get-PowerShellModuleInstallPath.ps1
  • Functions\Get-PowershellPath.ps1
  • Functions\Get-Privilege.ps1
  • Functions\Get-ProgramInstallInfo.ps1
  • Functions\Get-RegistryKeyValue.ps1
  • Functions\Get-ScheduledTask.ps1
  • Functions\Get-ServiceAcl.ps1
  • Functions\Get-ServiceConfiguration.ps1
  • Functions\Get-ServicePermission.ps1
  • Functions\Get-ServiceSecurityDescriptor.ps1
  • Functions\Get-SslCertificateBinding.ps1
  • Functions\Get-TrustedHost.ps1
  • Functions\Get-User.ps1
  • Functions\Get-WindowsFeature.ps1
  • Functions\Get-WmiLocalUserAccount.ps1
  • Functions\Grant-ComPermission.ps1
  • Functions\Grant-HttpUrlPermission.ps1
  • Functions\Grant-MsmqMessageQueuePermission.ps1
  • Functions\Grant-Permission.ps1
  • Functions\Grant-Privilege.ps1
  • Functions\Grant-ServiceControlPermission.ps1
  • Functions\Grant-ServicePermission.ps1
  • Functions\Initialize-Lcm.ps1
  • Functions\Install-Certificate.ps1
  • Functions\Install-Directory.ps1
  • Functions\Install-FileShare.ps1
  • Functions\Install-Group.ps1
  • Functions\Install-IisApplication.ps1
  • Functions\Install-IisAppPool.ps1
  • Functions\Install-IisVirtualDirectory.ps1
  • Functions\Install-IisWebsite.ps1
  • Functions\Install-Junction.ps1
  • Functions\Install-Msi.ps1
  • Functions\Install-Msmq.ps1
  • Functions\Install-MsmqMessageQueue.ps1
  • Functions\Install-PerformanceCounter.ps1
  • Functions\Install-RegistryKey.ps1
  • Functions\Install-ScheduledTask.ps1
  • Functions\Install-Service.ps1
  • Functions\Install-User.ps1
  • Functions\Install-WindowsFeature.ps1
  • Functions\Invoke-AppCmd.ps1
  • Functions\Invoke-ConsoleCommand.ps1
  • Functions\Invoke-PowerShell.ps1
  • Functions\Join-IisVirtualPath.ps1
  • Functions\Lock-IisConfigurationSection.ps1
  • Functions\New-Credential.ps1
  • Functions\New-Junction.ps1
  • Functions\New-RsaKeyPair.ps1
  • Functions\New-TempDirectory.ps1
  • Functions\Protect-String.ps1
  • Functions\Read-File.ps1
  • Functions\Remove-DotNetAppSetting.ps1
  • Functions\Remove-EnvironmentVariable.ps1
  • Functions\Remove-GroupMember.ps1
  • Functions\Remove-HostsEntry.ps1
  • Functions\Remove-IisMimeMap.ps1
  • Functions\Remove-IniEntry.ps1
  • Functions\Remove-Junction.ps1
  • Functions\Remove-RegistryKeyValue.ps1
  • Functions\Remove-SslCertificateBinding.ps1
  • Functions\Reset-HostsFile.ps1
  • Functions\Reset-MsmqQueueManagerID.ps1
  • Functions\Resolve-FullPath.ps1
  • Functions\Resolve-Identity.ps1
  • Functions\Resolve-IdentityName.ps1
  • Functions\Resolve-NetPath.ps1
  • Functions\Resolve-PathCase.ps1
  • Functions\Resolve-RelativePath.ps1
  • Functions\Resolve-WindowsFeatureName.ps1
  • Functions\Restart-RemoteService.ps1
  • Functions\Revoke-ComPermission.ps1
  • Functions\Revoke-HttpUrlPermission.ps1
  • Functions\Revoke-Permission.ps1
  • Functions\Revoke-Privilege.ps1
  • Functions\Revoke-ServicePermission.ps1
  • Functions\Set-CryptoKeySecurity.ps1
  • Functions\Set-DotNetAppSetting.ps1
  • Functions\Set-DotNetConnectionString.ps1
  • Functions\Set-EnvironmentVariable.ps1
  • Functions\Set-HostsEntry.ps1
  • Functions\Set-IisHttpHeader.ps1
  • Functions\Set-IisHttpRedirect.ps1
  • Functions\Set-IisMimeMap.ps1
  • Functions\Set-IisWebsiteID.ps1
  • Functions\Set-IisWebsiteSslCertificate.ps1
  • Functions\Set-IisWindowsAuthentication.ps1
  • Functions\Set-IniEntry.ps1
  • Functions\Set-RegistryKeyValue.ps1
  • Functions\Set-ServiceAcl.ps1
  • Functions\Set-SslCertificateBinding.ps1
  • Functions\Set-TrustedHost.ps1
  • Functions\Split-Ini.ps1
  • Functions\Start-DscPullConfiguration.ps1
  • Functions\Start-PowerShellProcess.ps1
  • Functions\Test-AdminPrivilege.ps1
  • Functions\Test-DotNet.ps1
  • Functions\Test-DscTargetResource.ps1
  • Functions\Test-FileShare.ps1
  • Functions\Test-FirewallStatefulFtp.ps1
  • Functions\Test-Group.ps1
  • Functions\Test-GroupMember.ps1
  • Functions\Test-Identity.ps1
  • Functions\Test-IisAppPool.ps1
  • Functions\Test-IisConfigurationSection.ps1
  • Functions\Test-IisSecurityAuthentication.ps1
  • Functions\Test-IisWebsite.ps1
  • Functions\Test-IPAddress.ps1
  • Functions\Test-MsmqMessageQueue.ps1
  • Functions\Test-NtfsCompression.ps1
  • Functions\Test-OSIs32Bit.ps1
  • Functions\Test-OSIs64Bit.ps1
  • Functions\Test-PathIsJunction.ps1
  • Functions\Test-PerformanceCounter.ps1
  • Functions\Test-PerformanceCounterCategory.ps1
  • Functions\Test-Permission.ps1
  • Functions\Test-PowerShellIs32Bit.ps1
  • Functions\Test-PowerShellIs64Bit.ps1
  • Functions\Test-Privilege.ps1
  • Functions\Test-RegistryKeyValue.ps1
  • Functions\Test-ScheduledTask.ps1
  • Functions\Test-Service.ps1
  • Functions\Test-SslCertificateBinding.ps1
  • Functions\Test-TypeDataMember.ps1
  • Functions\Test-UncPath.ps1
  • Functions\Test-User.ps1
  • Functions\Test-WindowsFeature.ps1
  • Functions\Test-ZipFile.ps1
  • Functions\Uninstall-Certificate.ps1
  • Functions\Uninstall-Directory.ps1
  • Functions\Uninstall-FileShare.ps1
  • Functions\Uninstall-Group.ps1
  • Functions\Uninstall-IisAppPool.ps1
  • Functions\Uninstall-IisWebsite.ps1
  • Functions\Uninstall-Junction.ps1
  • Functions\Uninstall-MsmqMessageQueue.ps1
  • Functions\Uninstall-PerformanceCounterCategory.ps1
  • Functions\Uninstall-ScheduledTask.ps1
  • Functions\Uninstall-Service.ps1
  • Functions\Uninstall-User.ps1
  • Functions\Uninstall-WindowsFeature.ps1
  • Functions\Unlock-IisConfigurationSection.ps1
  • Functions\Unprotect-String.ps1
  • Functions\Use-CallerPreference.ps1
  • Functions\Write-DscError.ps1
  • Functions\Write-File.ps1
  • Functions\Write-IisVerbose.ps1
  • Types\System.IO.DirectoryInfo.types.ps1xml
  • Types\System.IO.FileInfo.types.ps1xml
  • Types\System.ServiceProcess.ServiceController.types.ps1xml
  • Tags

    Cmdlets

    This module has no cmdlets.

    Functions

    DSC Resources

    Workflows

    This module has no workflows.

    Role Capabilities

    This module has no role capabilities.

    Dependencies

    This module has no dependencies.

    Minimum PowerShell version

    4.0

    Version History

    Version Downloads Last updated
    Carbon 2.4.1 236088 Tuesday, February 21 2017
    Carbon 2.4.0 120962 Wednesday, November 09 2016
    Carbon 2.3.0 39195 Thursday, September 29 2016
    Carbon 2.2.0 22089 Thursday, May 12 2016
    Carbon 2.1.1 1124 Thursday, February 25 2016
    Carbon 2.1.0 446 Tuesday, February 09 2016
    Carbon 2.0.1 806 Tuesday, October 20 2015
    Carbon 2.0.0 72 Sunday, October 11 2015
    Carbon 1.9.0 212 Thursday, May 07 2015