Giter Site home page Giter Site logo

commontasks's People

Contributors

christophhannappel avatar ckuewen avatar dscbot avatar gaelcolas avatar kwein1 avatar nicolasbn avatar nikq29 avatar nyanhp avatar psdgal avatar raandree avatar sinoopks avatar stehlih avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

commontasks's Issues

Local build fails with errors

Problem description

After restructure of the repository the local build doesn't work an different PC.
The tests of the following DSC resources are not run:

InputObject SideIndicator


AuditPolicies <=
SecurityBase <=
SecurityPolicies <=

The same code and tests are working with the old repository.

Verbose logs

PS D:\PublicRepository\CommonTasks> .\Build.ps1 -ResolveDependency

[pre-build] Starting Build Init
[pre-build] Creating required modules directory D:\PublicRepository\CommonTasks\output\RequiredModules.
[pre-build] Pre-pending 'D:\PublicRepository\CommonTasks\output\RequiredModules' folder to PSModulePath
[pre-build] Resolving dependencies.
[pre-build] Starting bootstrap process.
[build] Starting build with InvokeBuild.
[build] Parsing defined tasks
[build] Loading Configuration from D:\PublicRepository\CommonTasks\build.yaml
[build] Pre-pending 'D:\PublicRepository\CommonTasks\output\Module' folder to PSModulePath
Importing tasks from module Sampler.GitHubTasks
         Loading New-Release.GitHub.build.Sampler.GitHubTasks.ib.tasks...
Importing tasks from module Sampler
         Loading Build-Module.ModuleBuilder.build.Sampler.ib.tasks...
         Loading ChocolateyPackage.build.Sampler.ib.tasks...  
         Loading Clean.ModuleBuilder.build.Sampler.ib.tasks...
         Loading DeployAll.PSDeploy.build.Sampler.ib.tasks... 
         Loading DscResource.Test.build.Sampler.ib.tasks...   
         Loading generateHelp.PlatyPS.build.Sampler.ib.tasks...
         Loading GuestConfig.build.Sampler.ib.tasks...
         Loading Invoke-Pester.pester.build.Sampler.ib.tasks...
         Loading JaCoCo.coverage.build.Sampler.ib.tasks...
         Loading release.module.build.Sampler.ib.tasks...
         Loading Set-BuildEnvironment.BuildHelpers.build.Sampler.ib.tasks...
         Loading Set-SamplerTaskVariable...
Adding Workflow from configuration:
  +-> .
  +-> build
  +-> hqrmtest
  +-> publish
  +-> pack
  +-> test
[build] Executing requested workflow: .
Build . D:\PublicRepository\CommonTasks\Build.ps1
Redefined task '.'.

===============================================================================
                        CLEAN
Deleting the content of the Build Output folder, except ./modules
-------------------------------------------------------------------------------
  /./build/Clean
  D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\Clean.ModuleBuilder.build.ps1:16

Removing D:\PublicRepository\CommonTasks\output\* excluding RequiredModules
Done /./build/Clean 00:00:00.0640005

===============================================================================
                        BUILD MODULEOUTPUT MODULEBUILDER
Build the Module based on its Build.psd1 definition
-------------------------------------------------------------------------------
  /./build/Build_Module_ModuleBuilder/Build_ModuleOutput_ModuleBuilder
  D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\Build-Module.ModuleBuilder.build.ps1:41

        Project Name               = 'CommonTasks'
        Source Path                = 'D:\PublicRepository\CommonTasks\source'
        Output Directory           = 'D:\PublicRepository\CommonTasks\output'
        Release Notes path         = 'D:\PublicRepository\CommonTasks\output\ReleaseNotes.md'
        Built Module Subdirectory  = 'D:\PublicRepository\CommonTasks\output\Module'
        Module Manifest Path (src) = 'D:\PublicRepository\CommonTasks\source\CommonTasks.psd1'
        Module Version             = '0.4'

WARNING: Die Namen einiger importierter Befehle auf Modul "ModuleBuilder" enthalten nicht genehmigte Verben, sodass deren Auffindbarkeit erschwert werden kann. Wenn Sie die Befehle mit nicht genehmigten Verben finden möchten, führen Sie den Import-Module-Befehl erneut mit dem Verbose-Parameter aus. Sie können durch Eingeben von "Get-Verb" eine Liste der genehmigten Verben anzeigen.
Adding OutputDirectory with value D:\PublicRepository\CommonTasks\output from current Variables
Adding VersionedOutputDirectory with value True from current Variables
Adding CopyPaths with value en-US DSCResources from Build Info
Adding Encoding with value UTF8 from Build Info
Building Module to D:\PublicRepository\CommonTasks\output\Module\CommonTasks...
Done /./build/Build_Module_ModuleBuilder/Build_ModuleOutput_ModuleBuilder 00:00:04.0885827

===============================================================================
                        BUILD DSCRESOURCESTOEXPORT MODULEBUILDER

-------------------------------------------------------------------------------
  /./build/Build_Module_ModuleBuilder/Build_DscResourcesToExport_ModuleBuilder
  D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\Build-Module.ModuleBuilder.build.ps1:327

        Project Name               = 'CommonTasks'
        Source Path                = 'D:\PublicRepository\CommonTasks\source'
        Output Directory           = 'D:\PublicRepository\CommonTasks\output'
        Release Notes path         = 'D:\PublicRepository\CommonTasks\output\ReleaseNotes.md'
        Built Module Subdirectory  = 'D:\PublicRepository\CommonTasks\output\Module'
        Module Manifest Path (src) = 'D:\PublicRepository\CommonTasks\source\CommonTasks.psd1'
        Versioned Output Directory = 'True'
        Built Module Manifest      = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4\CommonTasks.psd1'
        Built Module Base          = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4'
        Module Version             = '0.4'
        Module Version Folder      = '0.4'
        Pre-release Tag            = ''
        Built Module Root Script   = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4\CommonTasks.psm1'

WARNING: Die Namen einiger importierter Befehle auf Modul "ModuleBuilder" enthalten nicht genehmigte Verben, sodass deren Auffindbarkeit erschwert werden kann. Wenn Sie die Befehle mit nicht genehmigten Verben finden möchten, führen Sie den Import-Module-Befehl erneut mit dem Verbose-Parameter aus. Sie können durch Eingeben von "Get-Verb" eine Liste der genehmigten Verben anzeigen.
        Built DSC Resource Path  = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4\DSCResources'
Looking in D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4\CommonTasks.psm1
Looking in D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4\DSCResources
  Adding ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, to the list of DscResource will be write in module 
manifest.
Done /./build/Build_Module_ModuleBuilder/Build_DscResourcesToExport_ModuleBuilder 00:00:06.7794661
Done /./build/Build_Module_ModuleBuilder 00:00:10.8734823

===============================================================================
                        BUILD NESTEDMODULES MODULEBUILDER

-------------------------------------------------------------------------------
  /./build/Build_NestedModules_ModuleBuilder
  D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\Build-Module.ModuleBuilder.build.ps1:129

        Project Name               = 'CommonTasks'
        Source Path                = 'D:\PublicRepository\CommonTasks\source'
        Output Directory           = 'D:\PublicRepository\CommonTasks\output'
        Release Notes path         = 'D:\PublicRepository\CommonTasks\output\ReleaseNotes.md'
        Built Module Subdirectory  = 'D:\PublicRepository\CommonTasks\output\Module'
        Module Manifest Path (src) = 'D:\PublicRepository\CommonTasks\source\CommonTasks.psd1'
        Versioned Output Directory = 'True'
        Built Module Manifest      = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4\CommonTasks.psd1'
        Built Module Base          = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4'
        Module Version             = '0.4'
        Module Version Folder      = '0.4'
        Pre-release Tag            = ''
        Built Module Root Script   = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4\CommonTasks.psm1'

WARNING: Die Namen einiger importierter Befehle auf Modul "ModuleBuilder" enthalten nicht genehmigte Verben, sodass deren Auffindbarkeit erschwert werden kann. Wenn Sie die Befehle mit nicht genehmigten Verben finden möchten, führen Sie den Import-Module-Befehl erneut mit dem Verbose-Parameter aus. Sie können durch Eingeben von "Get-Verb" eine Liste der genehmigten Verben anzeigen.
Done /./build/Build_NestedModules_ModuleBuilder 00:00:00.1287265

===============================================================================
                        CREATE CHANGELOG RELEASE OUTPUT
Create ReleaseNotes from changelog and update the Changelog for release
-------------------------------------------------------------------------------
  /./build/Create_changelog_release_output
  D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\release.module.build.ps1:49

        Project Name               = 'CommonTasks'
        Source Path                = 'D:\PublicRepository\CommonTasks\source'
        Output Directory           = 'D:\PublicRepository\CommonTasks\output'
        Release Notes path         = 'D:\PublicRepository\CommonTasks\output\ReleaseNotes.md'
        Built Module Subdirectory  = 'D:\PublicRepository\CommonTasks\output\Module'
        Module Manifest Path (src) = 'D:\PublicRepository\CommonTasks\source\CommonTasks.psd1'
        Module Version             = '0.4'

        ChangeLogOutputPath   = 'D:\PublicRepository\CommonTasks\output\CHANGELOG.md'
        Creating 'D:\PublicRepository\CommonTasks\output\CHANGELOG.md'...
No valid manifest found for project 'CommonTasks'. Cannot update the Release Notes.
Done /./build/Create_changelog_release_output 00:00:00.4109418
Done /./build 00:00:11.5119601

===============================================================================
                        IMPORT PESTER

-------------------------------------------------------------------------------
  /./test/Pester_Tests_Stop_On_Fail/Import_Pester
  D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\Invoke-Pester.pester.build.ps1:55

Done /./test/Pester_Tests_Stop_On_Fail/Import_Pester 00:00:02.3087426

===============================================================================
                        INVOKE PESTER TESTS V4
Making sure the Module meets some quality standard (help, tests) using Pester 4.
-------------------------------------------------------------------------------
  /./test/Pester_Tests_Stop_On_Fail/Invoke_Pester_Tests_v4
  D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\Invoke-Pester.pester.build.ps1:63

        Project Name               = 'CommonTasks'
        Source Path                = 'D:\PublicRepository\CommonTasks\source'
        Output Directory           = 'D:\PublicRepository\CommonTasks\output'
        Release Notes path         = 'D:\PublicRepository\CommonTasks\output\ReleaseNotes.md'
        Built Module Subdirectory  = 'D:\PublicRepository\CommonTasks\output\Module'
        Module Manifest Path (src) = 'D:\PublicRepository\CommonTasks\source\CommonTasks.psd1'
        Versioned Output Directory = 'True'
        Built Module Manifest      = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4\CommonTasks.psd1'
        Built Module Base          = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4'
        Module Version             = '0.4'
        Module Version Folder      = '0.4'
        Pre-release Tag            = ''
        Built Module Root Script   = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4\CommonTasks.psm1'

        Pester Output Folder     = 'D:\PublicRepository\CommonTasks\output\testResults
Creating folder D:\PublicRepository\CommonTasks\output\testResults
Using PesterScript from Defaults
Using PesterPassThru from Defaults
Using PesterCodeCoverageOutputFileFormat from Defaults
Using PesterOutputFormat from Build Config
        Project Path  = D:\PublicRepository\CommonTasks
        Project Name  = CommonTasks

 CIM-Standardschlüsselwörter werden geladen

 CIM-Standardschlüsselwörter werden geladen
    Verarbeitung erfolgt
 Modulliste wird abgerufen
    Verarbeitung erfolgt
 Ressourcenliste wird erstellt
    Verarbeitung erfolgt

 Adding PesterScript to params
      ... D:\PublicRepository\CommonTasks\tests
      ... D:\PublicRepository\CommonTasks\CommonTasks\tests
Removing Code Coverage parameters
Pester v4.10.1
Executing all tests in 'D:\PublicRepository\CommonTasks\tests'

Executing script D:\PublicRepository\CommonTasks\tests\Unit\DSCResources\DscResources.Tests.ps1

  Describing 'AddsDomain' DSC Resource compiles
    [+] 'AddsDomain' compiles 36.93s
    [+] 'AddsDomain' should have created a mof file 14ms

  Describing 'AddsDomainController' DSC Resource compiles
    [+] 'AddsDomainController' compiles 32.76s
    [+] 'AddsDomainController' should have created a mof file 3ms

  Describing 'AddsDomainPrincipals' DSC Resource compiles
    [+] 'AddsDomainPrincipals' compiles 33.5s
    [+] 'AddsDomainPrincipals' should have created a mof file 3ms

  Describing 'AddsOrgUnitsAndGroups' DSC Resource compiles
    [+] 'AddsOrgUnitsAndGroups' compiles 30.89s
    [+] 'AddsOrgUnitsAndGroups' should have created a mof file 3ms

  Describing 'AddsProtectFromAccidentalDeletion' DSC Resource compiles
    [+] 'AddsProtectFromAccidentalDeletion' compiles 30.26s
    [+] 'AddsProtectFromAccidentalDeletion' should have created a mof file 2ms

  Describing 'AddsServicePrincipalNames' DSC Resource compiles
    [+] 'AddsServicePrincipalNames' compiles 31.81s
    [+] 'AddsServicePrincipalNames' should have created a mof file 2ms

  Describing 'AddsSiteLinks' DSC Resource compiles
    [+] 'AddsSiteLinks' compiles 30.61s
    [+] 'AddsSiteLinks' should have created a mof file 2ms

  Describing 'AddsSitesSubnets' DSC Resource compiles
    [+] 'AddsSitesSubnets' compiles 31.19s
    [+] 'AddsSitesSubnets' should have created a mof file 1ms

  Describing 'Bitlocker' DSC Resource compiles
    [+] 'Bitlocker' compiles 30.38s
    [+] 'Bitlocker' should have created a mof file 2ms

  Describing 'CertificateAuthorities' DSC Resource compiles
    [+] 'CertificateAuthorities' compiles 31.42s
    [+] 'CertificateAuthorities' should have created a mof file 3ms

  Describing 'ChocolateyPackages' DSC Resource compiles
    [+] 'ChocolateyPackages' compiles 34.58s
    [+] 'ChocolateyPackages' should have created a mof file 4ms

  Describing 'ChocolateyPackages2nd' DSC Resource compiles
    [+] 'ChocolateyPackages2nd' compiles 32.52s
    [+] 'ChocolateyPackages2nd' should have created a mof file 2ms

  Describing 'ChocolateyPackages3rd' DSC Resource compiles
    [+] 'ChocolateyPackages3rd' compiles 33.13s
    [+] 'ChocolateyPackages3rd' should have created a mof file 3ms

  Describing 'Cluster' DSC Resource compiles
    [+] 'Cluster' compiles 34.13s
    [+] 'Cluster' should have created a mof file 3ms

  Describing 'ComputerSettings' DSC Resource compiles
    [+] 'ComputerSettings' compiles 37.72s
    [+] 'ComputerSettings' should have created a mof file 2ms

  Describing 'ConfigurationBase' DSC Resource compiles
    [+] 'ConfigurationBase' compiles 36.72s
    [+] 'ConfigurationBase' should have created a mof file 3ms

  Describing 'ConfigurationManagerConfiguration' DSC Resource compiles
    [+] 'ConfigurationManagerConfiguration' compiles 39.69s
    [+] 'ConfigurationManagerConfiguration' should have created a mof file 7ms

  Describing 'ConfigurationManagerDeployment' DSC Resource compiles
    [!] 'ConfigurationManagerDeployment' compiles, is skipped, because Tests for 'ConfigurationManagerDeployment' are skipped 19ms
    [!] 'ConfigurationManagerDeployment' should have created a mof file, is skipped, because Tests for 'ConfigurationManagerDeployment' are skipped 1ms
  Describing 'DfsNamespaces' DSC Resource compiles
    [+] 'DfsNamespaces' compiles 29.41s
    [+] 'DfsNamespaces' should have created a mof file 1ms

  Describing 'DhcpScopeOptions' DSC Resource compiles
    [+] 'DhcpScopeOptions' compiles 29.74s
    [+] 'DhcpScopeOptions' should have created a mof file 2ms

  Describing 'DhcpScopes' DSC Resource compiles
    [+] 'DhcpScopes' compiles 34.47s
    [+] 'DhcpScopes' should have created a mof file 1ms

  Describing 'DhcpServer' DSC Resource compiles
    [+] 'DhcpServer' compiles 30.02s
    [+] 'DhcpServer' should have created a mof file 7ms

  Describing 'DhcpServerOptionDefinitions' DSC Resource compiles
    [+] 'DhcpServerOptionDefinitions' compiles 29.31s
    [+] 'DhcpServerOptionDefinitions' should have created a mof file 2ms

  Describing 'DhcpServerOptions' DSC Resource compiles
    [+] 'DhcpServerOptions' compiles 30.46s
    [+] 'DhcpServerOptions' should have created a mof file 2ms

  Describing 'DiskAccessPaths' DSC Resource compiles
    [+] 'DiskAccessPaths' compiles 29.95s
    [+] 'DiskAccessPaths' should have created a mof file 1ms

  Describing 'Disks' DSC Resource compiles
    [+] 'Disks' compiles 30.15s
    [+] 'Disks' should have created a mof file 1ms

  Describing 'DnsServerAdZones' DSC Resource compiles
    [+] 'DnsServerAdZones' compiles 30.06s
    [+] 'DnsServerAdZones' should have created a mof file 2ms

  Describing 'DnsServerARecords' DSC Resource compiles
    [+] 'DnsServerARecords' compiles 30.01s
    [+] 'DnsServerARecords' should have created a mof file 3ms

  Describing 'DnsServerCNameRecords' DSC Resource compiles
    [+] 'DnsServerCNameRecords' compiles 30s
    [+] 'DnsServerCNameRecords' should have created a mof file 1ms

  Describing 'DnsServerConditionalForwarders' DSC Resource compiles
    [+] 'DnsServerConditionalForwarders' compiles 30.02s
    [+] 'DnsServerConditionalForwarders' should have created a mof file 3ms

  Describing 'DnsServerForwarders' DSC Resource compiles
    [+] 'DnsServerForwarders' compiles 29.96s
    [+] 'DnsServerForwarders' should have created a mof file 1ms

  Describing 'DnsServerLegacySettings' DSC Resource compiles
    [+] 'DnsServerLegacySettings' compiles 29.85s
    [+] 'DnsServerLegacySettings' should have created a mof file 1ms

  Describing 'DnsServerMxRecords' DSC Resource compiles
    [+] 'DnsServerMxRecords' compiles 29.83s
    [+] 'DnsServerMxRecords' should have created a mof file 3ms

  Describing 'DnsServerPrimaryZones' DSC Resource compiles
    [+] 'DnsServerPrimaryZones' compiles 31.06s
    [+] 'DnsServerPrimaryZones' should have created a mof file 6ms

  Describing 'DnsServerQueryResolutionPolicies' DSC Resource compiles
    [+] 'DnsServerQueryResolutionPolicies' compiles 30.15s
    [+] 'DnsServerQueryResolutionPolicies' should have created a mof file 2ms

 CIM-Standardschlüsselwörter werden geladen
    Verarbeitung erfolgt
 Modulliste wird abgerufen
    Verarbeitung erfolgt
 Ressourcenliste wird erstellt
    Verarbeitung erfolgt


  Describing 'DnsServerSettings' DSC Resource compiles
    [+] 'DnsServerSettings' compiles 30.08s
    [+] 'DnsServerSettings' should have created a mof file 2ms

  Describing 'DnsServerZonesAging' DSC Resource compiles
    [+] 'DnsServerZonesAging' compiles 30.02s
    [+] 'DnsServerZonesAging' should have created a mof file 2ms

  Describing 'DscDiagnostic' DSC Resource compiles
    [+] 'DscDiagnostic' compiles 30.48s
    [+] 'DscDiagnostic' should have created a mof file 2ms

  Describing 'DscLcmController' DSC Resource compiles
    [+] 'DscLcmController' compiles 30.21s
    [+] 'DscLcmController' should have created a mof file 1ms

  Describing 'DscLcmMaintenanceWindows' DSC Resource compiles
    [+] 'DscLcmMaintenanceWindows' compiles 30.32s
    [+] 'DscLcmMaintenanceWindows' should have created a mof file 1ms

  Describing 'DscPullServer' DSC Resource compiles
    [+] 'DscPullServer' compiles 30.08s
    [+] 'DscPullServer' should have created a mof file 1ms

  Describing 'DscPullServerSql' DSC Resource compiles
    [+] 'DscPullServerSql' compiles 29.98s
    [+] 'DscPullServerSql' should have created a mof file 1ms

  Describing 'DscTagging' DSC Resource compiles
    [+] 'DscTagging' compiles 29.89s
    [+] 'DscTagging' should have created a mof file 1ms

  Describing 'EnvironmentVariables' DSC Resource compiles
    [+] 'EnvironmentVariables' compiles 30.01s
    [+] 'EnvironmentVariables' should have created a mof file 2ms

  Describing 'ExchangeAutoMountPoints' DSC Resource compiles
    [+] 'ExchangeAutoMountPoints' compiles 30.4s
    [+] 'ExchangeAutoMountPoints' should have created a mof file 1ms

  Describing 'ExchangeConfiguration' DSC Resource compiles
    [+] 'ExchangeConfiguration' compiles 34.09s
    [+] 'ExchangeConfiguration' should have created a mof file 1ms

  Describing 'ExchangeDagProvisioning' DSC Resource compiles
    [+] 'ExchangeDagProvisioning' compiles 31.12s
    [+] 'ExchangeDagProvisioning' should have created a mof file 3ms

  Describing 'ExchangeMailboxDatabaseCopies' DSC Resource compiles
    [+] 'ExchangeMailboxDatabaseCopies' compiles 32.43s
    [+] 'ExchangeMailboxDatabaseCopies' should have created a mof file 1ms

  Describing 'ExchangeMailboxDatabases' DSC Resource compiles
    [+] 'ExchangeMailboxDatabases' compiles 32.66s
    [+] 'ExchangeMailboxDatabases' should have created a mof file 1ms

  Describing 'ExchangeProvisioning' DSC Resource compiles
    [+] 'ExchangeProvisioning' compiles 30.98s
    [+] 'ExchangeProvisioning' should have created a mof file 3ms

  Describing 'FilesAndFolders' DSC Resource compiles
    [+] 'FilesAndFolders' compiles 30.43s
    [+] 'FilesAndFolders' should have created a mof file 2ms

  Describing 'FirewallProfiles' DSC Resource compiles
    [+] 'FirewallProfiles' compiles 30.39s
    [+] 'FirewallProfiles' should have created a mof file 8ms

  Describing 'FirewallRules' DSC Resource compiles
    [+] 'FirewallRules' compiles 30.36s
    [+] 'FirewallRules' should have created a mof file 1ms

  Describing 'HostsFileEntries' DSC Resource compiles
    [+] 'HostsFileEntries' compiles 29.89s
    [+] 'HostsFileEntries' should have created a mof file 1ms

  Describing 'HyperV' DSC Resource compiles
    [+] 'HyperV' compiles 31.6s
    [+] 'HyperV' should have created a mof file 1ms

  Describing 'IpConfiguration' DSC Resource compiles
    [+] 'IpConfiguration' compiles 30.23s
    [+] 'IpConfiguration' should have created a mof file 1ms

  Describing 'JeaEndpoints' DSC Resource compiles
    [+] 'JeaEndpoints' compiles 30.19s
    [+] 'JeaEndpoints' should have created a mof file 1ms

  Describing 'JeaRoles' DSC Resource compiles
    [+] 'JeaRoles' compiles 30.33s
    [+] 'JeaRoles' should have created a mof file 1ms

  Describing 'LocalGroups' DSC Resource compiles
    [+] 'LocalGroups' compiles 31.09s
    [+] 'LocalGroups' should have created a mof file 5ms

  Describing 'LocalUsers' DSC Resource compiles
    [+] 'LocalUsers' compiles 31.51s
    [+] 'LocalUsers' should have created a mof file 1ms

  Describing 'MmaAgent' DSC Resource compiles
    [+] 'MmaAgent' compiles 31.3s
    [+] 'MmaAgent' should have created a mof file 1ms

  Describing 'MountImages' DSC Resource compiles
    [+] 'MountImages' compiles 30.13s
    [+] 'MountImages' should have created a mof file 1ms

  Describing 'Network' DSC Resource compiles
    [+] 'Network' compiles 30.46s
    [+] 'Network' should have created a mof file 1ms

  Describing 'NetworkIpConfiguration' DSC Resource compiles
    [+] 'NetworkIpConfiguration' compiles 31.17s
    [+] 'NetworkIpConfiguration' should have created a mof file 1ms

  Describing 'OfficeOnlineServer' DSC Resource compiles
    [+] 'OfficeOnlineServer' compiles 30.52s
    [+] 'OfficeOnlineServer' should have created a mof file 1ms

  Describing 'OpticalDiskDrives' DSC Resource compiles
    [+] 'OpticalDiskDrives' compiles 30.1s
    [+] 'OpticalDiskDrives' should have created a mof file 1ms

  Describing 'PowerPlans' DSC Resource compiles
    [+] 'PowerPlans' compiles 30.45s
    [+] 'PowerPlans' should have created a mof file 2ms

  Describing 'PowerShellRepositories' DSC Resource compiles
    [!] 'PowerShellRepositories' compiles, is skipped, because Tests for 'PowerShellRepositories' are skipped 2ms
    [!] 'PowerShellRepositories' should have created a mof file, is skipped, because Tests for 'PowerShellRepositories' are skipped 2ms

  Describing 'RegistryPolicies' DSC Resource compiles
    [+] 'RegistryPolicies' compiles 31s
    [+] 'RegistryPolicies' should have created a mof file 2ms

  Describing 'RegistryValues' DSC Resource compiles
    [+] 'RegistryValues' compiles 30.24s
    [+] 'RegistryValues' should have created a mof file 3ms

  Describing 'RestartSystem' DSC Resource compiles
    [+] 'RestartSystem' compiles 28.73s
    [+] 'RestartSystem' should have created a mof file 2ms

  Describing 'ScheduledTasks' DSC Resource compiles
    [+] 'ScheduledTasks' compiles 27.48s
    [+] 'ScheduledTasks' should have created a mof file 2ms

  Describing 'Scripts' DSC Resource compiles
    [+] 'Scripts' compiles 27.46s
    [+] 'Scripts' should have created a mof file 1ms

  Describing 'SharePointCacheAccounts' DSC Resource compiles
    [+] 'SharePointCacheAccounts' compiles 27.62s
    [+] 'SharePointCacheAccounts' should have created a mof file 1ms

  Describing 'SharePointContentDatabases' DSC Resource compiles
    [+] 'SharePointContentDatabases' compiles 28.08s
    [+] 'SharePointContentDatabases' should have created a mof file 1ms

  Describing 'SharePointManagedAccounts' DSC Resource compiles
    [+] 'SharePointManagedAccounts' compiles 29.47s
    [+] 'SharePointManagedAccounts' should have created a mof file 1ms

  Describing 'SharePointManagedPaths' DSC Resource compiles
    [+] 'SharePointManagedPaths' compiles 27.51s
    [+] 'SharePointManagedPaths' should have created a mof file 1ms

  Describing 'SharePointPrereq' DSC Resource compiles
    [+] 'SharePointPrereq' compiles 27.95s
    [+] 'SharePointPrereq' should have created a mof file 1ms

  Describing 'SharePointProvisioning' DSC Resource compiles
    [+] 'SharePointProvisioning' compiles 29.42s
    [+] 'SharePointProvisioning' should have created a mof file 4ms

  Describing 'SharePointServiceAppPools' DSC Resource compiles
    [+] 'SharePointServiceAppPools' compiles 27.56s
    [+] 'SharePointServiceAppPools' should have created a mof file 1ms

  Describing 'SharePointServiceInstances' DSC Resource compiles
    [+] 'SharePointServiceInstances' compiles 27.47s
    [+] 'SharePointServiceInstances' should have created a mof file 1ms

  Describing 'SharePointSites' DSC Resource compiles
    [+] 'SharePointSites' compiles 27.56s
    [+] 'SharePointSites' should have created a mof file 1ms

  Describing 'SharePointWebApplications' DSC Resource compiles
    [+] 'SharePointWebApplications' compiles 27.54s
    [+] 'SharePointWebApplications' should have created a mof file 1ms

  Describing 'SmbShares' DSC Resource compiles
    [+] 'SmbShares' compiles 27.67s
    [+] 'SmbShares' should have created a mof file 1ms

  Describing 'SoftwarePackages' DSC Resource compiles
    [+] 'SoftwarePackages' compiles 27.4s
    [+] 'SoftwarePackages' should have created a mof file 1ms

  Describing 'SqlAGDatabases' DSC Resource compiles
    [+] 'SqlAGDatabases' compiles 27.16s
    [+] 'SqlAGDatabases' should have created a mof file 1ms

  Describing 'SqlAGListeners' DSC Resource compiles
    [+] 'SqlAGListeners' compiles 27.25s
    [+] 'SqlAGListeners' should have created a mof file 1ms

  Describing 'SqlAGReplicas' DSC Resource compiles
    [+] 'SqlAGReplicas' compiles 27.34s
    [+] 'SqlAGReplicas' should have created a mof file 1ms

  Describing 'SqlAGs' DSC Resource compiles
    [+] 'SqlAGs' compiles 27.61s
    [+] 'SqlAGs' should have created a mof file 1ms

  Describing 'SqlAliases' DSC Resource compiles
    [+] 'SqlAliases' compiles 27.27s
    [+] 'SqlAliases' should have created a mof file 1ms

  Describing 'SqlAlwaysOnServices' DSC Resource compiles
    [+] 'SqlAlwaysOnServices' compiles 27.16s
    [+] 'SqlAlwaysOnServices' should have created a mof file 1ms

  Describing 'SqlConfigurations' DSC Resource compiles
    [+] 'SqlConfigurations' compiles 27.26s
    [+] 'SqlConfigurations' should have created a mof file 1ms

  Describing 'SqlDatabases' DSC Resource compiles
    [+] 'SqlDatabases' compiles 27.31s
    [+] 'SqlDatabases' should have created a mof file 1ms

  Describing 'SqlEndpoints' DSC Resource compiles
    [+] 'SqlEndpoints' compiles 27.2s
    [+] 'SqlEndpoints' should have created a mof file 1ms

  Describing 'SqlLogins' DSC Resource compiles
    [+] 'SqlLogins' compiles 27.26s
    [+] 'SqlLogins' should have created a mof file 1ms

  Describing 'SqlPermissions' DSC Resource compiles
    [+] 'SqlPermissions' compiles 27.23s
    [+] 'SqlPermissions' should have created a mof file 1ms

  Describing 'SqlRoles' DSC Resource compiles
    [+] 'SqlRoles' compiles 27.52s
    [+] 'SqlRoles' should have created a mof file 1ms

  Describing 'SqlServer' DSC Resource compiles
    [+] 'SqlServer' compiles 28.66s
    [+] 'SqlServer' should have created a mof file 1ms

  Describing 'SwitchLcmMode' DSC Resource compiles
    [+] 'SwitchLcmMode' compiles 27.92s
    [+] 'SwitchLcmMode' should have created a mof file 1ms

  Describing 'UpdateServices' DSC Resource compiles
    [+] 'UpdateServices' compiles 27.49s
    [+] 'UpdateServices' should have created a mof file 1ms

  Describing 'WaitForAllNodes' DSC Resource compiles
    [+] 'WaitForAllNodes' compiles 27.35s
    [+] 'WaitForAllNodes' should have created a mof file 1ms

  Describing 'WaitForAnyNode' DSC Resource compiles
    [+] 'WaitForAnyNode' compiles 27.39s
    [+] 'WaitForAnyNode' should have created a mof file 1ms

  Describing 'WaitForSomeNodes' DSC Resource compiles
    [+] 'WaitForSomeNodes' compiles 27.55s
    [+] 'WaitForSomeNodes' should have created a mof file 1ms

  Describing 'Wds' DSC Resource compiles
    [+] 'Wds' compiles 27.89s
    [+] 'Wds' should have created a mof file 4ms

  Describing 'WebApplicationPools' DSC Resource compiles
    [+] 'WebApplicationPools' compiles 27.34s
    [+] 'WebApplicationPools' should have created a mof file 2ms

  Describing 'WebApplications' DSC Resource compiles
    [+] 'WebApplications' compiles 27.62s
    [+] 'WebApplications' should have created a mof file 1ms

  Describing 'WebBrowser' DSC Resource compiles
    [+] 'WebBrowser' compiles 27.82s
    [+] 'WebBrowser' should have created a mof file 3ms

  Describing 'WebConfigProperties' DSC Resource compiles
    [+] 'WebConfigProperties' compiles 28.19s
    [+] 'WebConfigProperties' should have created a mof file 1ms

  Describing 'WebSites' DSC Resource compiles
    [+] 'WebSites' compiles 27.55s
    [+] 'WebSites' should have created a mof file 1ms

  Describing 'WebVirtualDirectories' DSC Resource compiles
    [+] 'WebVirtualDirectories' compiles 27.97s
    [+] 'WebVirtualDirectories' should have created a mof file 1ms

  Describing 'WindowsEventForwarding' DSC Resource compiles
    [+] 'WindowsEventForwarding' compiles 27.53s
    [+] 'WindowsEventForwarding' should have created a mof file 1ms

  Describing 'WindowsEventLogs' DSC Resource compiles
    [+] 'WindowsEventLogs' compiles 27.38s
    [+] 'WindowsEventLogs' should have created a mof file 2ms

 CIM-Standardschlüsselwörter werden geladen
    Verarbeitung erfolgt
 Modulliste wird abgerufen
    Verarbeitung erfolgt
 Ressourcenliste wird erstellt
    Verarbeitung erfolgt


  Describing 'WindowsServices' DSC Resource compiles
    [+] 'WindowsServices' compiles 29.45s
    [+] 'WindowsServices' should have created a mof file 1ms

  Describing 'XmlContent' DSC Resource compiles
    [+] 'XmlContent' compiles 27.33s
    [+] 'XmlContent' should have created a mof file 1ms

  Describing Final tests
Number of composite resources: 118
Number of composite resources (considering 'skippedDscResources'): 116
Number of compiled MOF files: 116
    [+] Every composite resource has compiled 32ms
Number of composite resource folders: 121
Number of composite resource folders (considering 'skippedDscResources'): 119
Number of composite resources: 116

InputObject      SideIndicator
-----------      -------------
AuditPolicies    <=
SecurityBase     <=
SecurityPolicies <=



    [-] Composite resource folder count matches composite resource count 41ms
      Expected 119, but got 116.
      108:         $compositeResouces.Count | Should -Be $compositeResouceFolders.Count
      bei Invoke-Assertion, D:\PublicRepository\CommonTasks\output\RequiredModules\Pester\4.10.1\Functions\Assertions\Should.ps1: Zeile 180
      bei Should<End>, D:\PublicRepository\CommonTasks\output\RequiredModules\Pester\4.10.1\Functions\Assertions\Should.ps1: Zeile 140
      bei <ScriptBlock>, D:\PublicRepository\CommonTasks\tests\Unit\DSCResources\DscResources.Tests.ps1: Zeile 108
      bei Invoke-Test, D:\PublicRepository\CommonTasks\output\RequiredModules\Pester\4.10.1\Functions\It.ps1: Zeile 289
      bei ItImpl, D:\PublicRepository\CommonTasks\output\RequiredModules\Pester\4.10.1\Functions\It.ps1: Zeile 241
      bei It, D:\PublicRepository\CommonTasks\output\RequiredModules\Pester\4.10.1\Functions\It.ps1: Zeile 132
      bei <ScriptBlock>, D:\PublicRepository\CommonTasks\tests\Unit\DSCResources\DscResources.Tests.ps1: Zeile 99
      bei DescribeImpl, D:\PublicRepository\CommonTasks\output\RequiredModules\Pester\4.10.1\Functions\Describe.ps1: Zeile 213
      bei Describe, D:\PublicRepository\CommonTasks\output\RequiredModules\Pester\4.10.1\Functions\Describe.ps1: Zeile 105
      bei <ScriptBlock>, D:\PublicRepository\CommonTasks\tests\Unit\DSCResources\DscResources.Tests.ps1: Zeile 83
      bei <ScriptBlock>, D:\PublicRepository\CommonTasks\output\RequiredModules\Pester\4.10.1\Pester.psm1: Zeile 1111
      bei Invoke-Pester<End>, D:\PublicRepository\CommonTasks\output\RequiredModules\Pester\4.10.1\Pester.psm1: Zeile 1137
      bei <ScriptBlock>, D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\Invoke-Pester.pester.build.ps1: Zeile 351        
      bei *Task, D:\PublicRepository\CommonTasks\output\RequiredModules\InvokeBuild\5.9.0\Invoke-Build.ps1: Zeile 560
      bei *Task, D:\PublicRepository\CommonTasks\output\RequiredModules\InvokeBuild\5.9.0\Invoke-Build.ps1: Zeile 532
      bei *Task, D:\PublicRepository\CommonTasks\output\RequiredModules\InvokeBuild\5.9.0\Invoke-Build.ps1: Zeile 532
      bei *Task, D:\PublicRepository\CommonTasks\output\RequiredModules\InvokeBuild\5.9.0\Invoke-Build.ps1: Zeile 532
      bei <ScriptBlock><End>, D:\PublicRepository\CommonTasks\output\RequiredModules\InvokeBuild\5.9.0\Invoke-Build.ps1: Zeile 721
      bei <ScriptBlock><Begin>, D:\PublicRepository\CommonTasks\Build.ps1: Zeile 507
      bei <ScriptBlock>, <Keine Datei>: Zeile 1
Tests completed in 3590.6s
Tests Passed: 233, Failed: 1, Skipped: 4, Pending: 0, Inconclusive: 0 
Done /./test/Pester_Tests_Stop_On_Fail/Invoke_Pester_Tests_v4 00:59:51.7823567

===============================================================================
                        INVOKE PESTER TESTS V5
Making sure the Module meets some quality standard (help, tests) using Pester 5.
-------------------------------------------------------------------------------
  /./test/Pester_Tests_Stop_On_Fail/Invoke_Pester_Tests_v5
  D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\Invoke-Pester.pester.build.ps1:422

Pester 5 is not used in the pipeline, skipping task.

Done /./test/Pester_Tests_Stop_On_Fail/Invoke_Pester_Tests_v5 00:00:00.0159999
Task /./test/Pester_Tests_Stop_On_Fail/Upload_Test_Results_To_AppVeyor skipped.

===============================================================================
                        FAIL BUILD IF PESTER TESTS FAILED
This task ensures the build job fails if the test aren't successful.
-------------------------------------------------------------------------------
  /./test/Pester_Tests_Stop_On_Fail/Fail_Build_If_Pester_Tests_Failed
  D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\Invoke-Pester.pester.build.ps1:361

Asserting that no test failed

        Project Name               = 'CommonTasks'
        Source Path                = 'D:\PublicRepository\CommonTasks\source'
        Output Directory           = 'D:\PublicRepository\CommonTasks\output'
        Release Notes path         = 'D:\PublicRepository\CommonTasks\output\ReleaseNotes.md'
        Built Module Subdirectory  = 'D:\PublicRepository\CommonTasks\output\Module'
        Module Manifest Path (src) = 'D:\PublicRepository\CommonTasks\source\CommonTasks.psd1'
        Versioned Output Directory = 'True'
        Built Module Manifest      = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4\CommonTasks.psd1'
        Built Module Base          = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4'
        Module Version             = '0.4'
        Module Version Folder      = '0.4'
        Pre-release Tag            = ''
        Built Module Root Script   = 'D:\PublicRepository\CommonTasks\output\Module\CommonTasks\0.4\CommonTasks.psm1'

        Pester Output Folder     = 'D:\PublicRepository\CommonTasks\output\testResults'
        Code Coverage Threshold  = '0'
        Pester Output Object = D:\PublicRepository\CommonTasks\output\testResults\PesterObject_CommonTasks_v0.4.Windows.PSv.5.1.19041.1320.xml
ERROR: Assertion failed. Failed 1 tests. Aborting Build
In D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\Invoke-Pester.pester.build.ps1:415 Zeichen:9
+         Assert-Build -Condition ($pesterObject.FailedCount -eq 0) -Me ...
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\Invoke-Pester.pester.build.ps1:361 Zeichen:1
+ task Fail_Build_If_Pester_Tests_Failed {
        Test Scripts  = tests, CommonTasks\tests
        Tags          =
        Exclude Tags  =
        Exclude Cov.  = test
        ModuleVersion = 0.4

        CodeCoverage                    =
        CodeCoverageOutputFile          =
+             task $workflow $workflowItem
+             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Build FAILED. 14 tasks, 1 errors, 0 warnings 01:00:08.9993342
Assert-Build : Assertion failed. Failed 1 tests. Aborting Build
In D:\PublicRepository\CommonTasks\output\RequiredModules\Sampler\0.112.1\tasks\Invoke-Pester.pester.build.ps1:415 Zeichen:9
+         Assert-Build -Condition ($pesterObject.FailedCount -eq 0) -Me ...
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Assert-Build], Exception
    + FullyQualifiedErrorId : Assert-Build

PS D:\PublicRepository\CommonTasks>

How to reproduce

Fetch the current repository and make a clean build with .\Build.ps1 -Resolvedependency

Expected behavior

Local build shall be finished without errors

Current behavior

Local build fails on different PCs

Suggested solution

Not a solution but some helpful information to find the problem:

The command "$dscResources = Get-DscResource -Module CommonTasks" at line 1 in DscResources.Tests.ps1 doesn't return the failed DSC resources.

If the command "Import-DscResource -ModuleName AuditPolicyDsc" in AuditPolicies.schema.psm1 is commented out the Get-DscResource command returns the AuditPolicies resource (but the build can't compile it).

Operating system the target node is running

Windows 10 Enterprise LTSC 2019 
Windows 10 Professional 21H2

PowerShell version and build the target node is running

5.1

Module version used

latest

.\Build.ps1 -ResolveDependency, integration tests fail

Executing script C:\Git\commontasks\commontasks\Tests\Integration\33 JeaEndpoints.Tests.ps1

  Describing JeaEndpoints DSC Resource compiles
PSDesiredStateConfiguration\Configuration : The term 'ConvertTo-Expression' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, 
verify that the path is correct and try again.
At C:\Git\commontasks\BuildOutput\Modules\commontasks\DSCResources\JeaEndpoints\JeaEndpoints.schema.psm1:1 char:1
+ configuration JeaEndpoints {
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (ConvertTo-Expression:String) [Configuration], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : CommandNotFoundException,Configuration

    [-] JeaEndpoints Compiles 2.83s
      Expected no exception to be thrown, but an exception "Compilation errors occurred while processing configuration 'Config_JeaEndpoints'. Please review the errors reported in error stream and modify your configuration code appropriately." was thrown from C:\Windows\System32\WindowsPowerShell\v1.0\Modules\PSDesiredStateConfiguration\PSDesiredStateConfiguration.psm1:3917 char:5
          +     throw $ErrorRecord
          +     ~~~~~~~~~~~~~~~~~~.
      19:         { Config_JeaEndpoints -ConfigurationData $configurationData -OutputPath $env:BHBuildOutput -ErrorAction Stop } | Should -Not -Throw
      at <ScriptBlock>, C:\Git\commontasks\commontasks\Tests\Integration\33 JeaEndpoints.Tests.ps1: line 19
    [-] JeaEndpoints should have created a mof file 25ms
      Expected the value to have type [System.IO.FileInfo] or any of its subtypes, but got $null with type $null.
      24:         $mofFile | Should -BeOfType System.IO.FileInfo
      at <ScriptBlock>, C:\Git\commontasks\commontasks\Tests\Integration\33 JeaEndpoints.Tests.ps1: line 24

Executing script C:\Git\commontasks\commontasks\Tests\Integration\34 JeaRole.Tests.ps1

  Describing JeaRoles DSC Resource compiles
Get-Content : Cannot find path 'D:\Untitled3 - Copy.ps1' because it does not exist.
At C:\Git\commontasks\BuildOutput\Modules\commontasks\DSCResources\JeaRoles\JeaRoles.schema.psm1:29 char:48
+ ... block]::Create((Get-Content -Path $functionDefinition.FilePath -Raw))
+                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (D:\Untitled3 - Copy.ps1:String) [Get-Content], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetContentCommand

PSDesiredStateConfiguration\Configuration : Exception calling "Create" with "1" argument(s): "Object reference not set to an instance of an object."
At C:\Git\commontasks\BuildOutput\Modules\commontasks\DSCResources\JeaRoles\JeaRoles.schema.psm1:1 char:1
+ configuration JeaRoles {
+ ~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Configuration], MethodInvocationException
    + FullyQualifiedErrorId : NullReferenceException,Configuration

    [-] JeaRoles Compiles 2.79s
      Expected no exception to be thrown, but an exception "Compilation errors occurred while processing configuration 'Config_JeaRoles'. Please review the errors reported in error stream and modify your configuration code appropriately." was thrown from C:\Windows\System32\WindowsPowerShell\v1.0\Modules\PSDesiredStateConfiguration\PSDesiredStateConfiguration.psm1:3917 char:5
          +     throw $ErrorRecord
          +     ~~~~~~~~~~~~~~~~~~.

 Loading default CIM keywords Processing
 Getting module list
    Processing
 Creating resource list
    Processing

Executing script C:\Git\commontasks\commontasks\Tests\Integration\99 Final.Tests.ps1

  Describing Final tests
Number of composite resources: 34
Number of compiled MOF files: 31
    [-] Every composite resource has compiled 3.18s
      Expected 31, but got 34.
      10:         $compositeResouces.Count | Should -Be $mofFiles.Count
      at <ScriptBlock>, C:\Git\commontasks\commontasks\Tests\Integration\99 Final.Tests.ps1: line 10
Tests completed in 199.93s
Tests Passed: 64, Failed: 5, Skipped: 0, Pending: 0, Inconclusive: 0 
ERROR: Assertion failed.

 Loading default CIM keywords Processing
 Getting module list
    Processing
 Creating resource list
    Processing

      19:         { Config_JeaRoles -ConfigurationData $configurationData -OutputPath $env:BHBuildOutput -ErrorAction Stop } | Should -Not -Throw
      at <ScriptBlock>, C:\Git\commontasks\commontasks\Tests\Integration\34 JeaRole.Tests.ps1: line 19
    [-] JeaRoles should have created a mof file 15ms
      Expected the value to have type [System.IO.FileInfo] or any of its subtypes, but got $null with type $null.
      24:         $mofFile | Should -BeOfType System.IO.FileInfo
      at <ScriptBlock>, C:\Git\commontasks\commontasks\Tests\Integration\34 JeaRole.Tests.ps1: line 24

    + CategoryInfo          : InvalidOperation: (:) [Assert-Build], Exception
    + FullyQualifiedErrorId : Assert-Build

Project License is not specified

Please specify the project license so that we can use the code in our commercial environment without getting trouble with our FOSS inspectors.

WindowsFeatures: Include additional parameters like Source

Resource proposal

Currently, WindowsFeatures takes a list of strings. It should (additionally) accept a list of hashtables like the other composites so that e.g. Features can be enabled that require a Source path.

Proposed properties

Additional parameter $Features with type [hashtable[]], where each hashtable follows the syntax of WindowsFeature:

@{
    Name = [string]
    [Credential = [PSCredential]]
    [DependsOn = [string[]]]
    [Ensure = [string]{ Absent | Present }]
    [IncludeAllSubFeature = [bool]]
    [LogPath = [string]]
    [PsDscRunAsCredential = [PSCredential]]
    [Source = [string]]
}

Special considerations or limitations

.

[Cluster] QuorumResource is not used

The cluster resource should use the QuorumResource parameter. The Credential parameter should be optional, since it is possible that the computer account is permitted to create the CNO

RegistryPolicies: Error when `Key` or `ValueName` parameters contain bracket "()"

Problem description

When Key or ValueName parameters contain bracket "()", the compilation failed because RegistryPolicies resource doesn't replace bracket in $executionName. And that cause trouble in DependsOn parameter for RefreshRegistryPolicy resource.

For exemple :

RegistryPolicies Test {
	GPupdateInterval = 30
	Values = @(
		@{
			Key = "Software\Policies\Microsoft\Internet Explorer\Main\FeatureControl\Feature_Restrict_ActiveXInstall"
			ValueName = '(Reserved)'
			TargetType = 'ComputerConfiguration'
			ValueData = '1'
			ValueType = 'String'
			Ensure = 'Present'
		},
		@{
			Key = "Software\Policies\Microsoft\Internet Explorer\Main\FeatureControl\Feature_Restrict_ActiveXInstall"
			ValueName = 'explorer.exe'
			TargetType = 'ComputerConfiguration'
			ValueData = '1'
			ValueType = 'String'
			Ensure = 'Present'
		}
	)

Verbose logs

No verbose log.

DSC configuration

RegistryPolicies Test {
	GPupdateInterval = 30
	Values = @(
		@{
			Key = "Software\Policies\Microsoft\Internet Explorer\Main\FeatureControl\Feature_zone_elevation"
			ValueName = '(Reserved)'
			TargetType = 'ComputerConfiguration'
			ValueData = '1'
			ValueType = 'String'
			Ensure = 'Present'
		},
		@{
			Key = "Software\Policies\Microsoft\Internet Explorer\Main\FeatureControl\Feature_zone_elevation"
			ValueName = 'explorer.exe'
			TargetType = 'ComputerConfiguration'
			ValueData = '1'
			ValueType = 'String'
			Ensure = 'Present'
		}
	)

Suggested solution

Update the replace regex in the resource:

$executionName = "$($value.Key)\$($value.ValueName)" -replace "[\s\\:*-+/{}```"']", '_'

From :

$executionName = "$($value.Key)\$($value.ValueName)" -replace "[\s\\:*-+/{}```"']", '_'

To

$executionName = "$($value.Key)\$($value.ValueName)" -replace "[\s()\\:*-+/{}```"']", '_'

Operating system the target node is running

OsName               : Microsoft Windows 10 Pro
OsOperatingSystemSKU : 48
OsArchitecture       : 64-bit
WindowsVersion       : 2009
WindowsBuildLabEx    : 19041.1.amd64fre.vb_release.191206-1406
OsLanguage           : fr-FR
OsMuiLanguages       : {fr-FR, en-US}

PowerShell version and build the target node is running

Name                           Value
----                           -----
PSVersion                      5.1.19041.1682
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.19041.1682
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1

CommonTasks version

0.7.0

ADDSServicePrincipals: New resource proposal

Resource proposal

ADDSServicePrincipals

Proposed properties

Property Type qualifier Data type Description Default value Allowed values
ServicePrincipalNames Hashtable[] Hashtable[] Hashtable array of ServicePrincipalName,Account $null Hashtable[]

Special considerations or limitations

Hashtable[] consists of
@{
ServicePrincipalName = 'abc'
Account = 'abc'
}

WebSites: Binding infos not supported

Problem description

Specifying the binding infos for a website, the MOF compilation fails.

Verbose logs

Write-NodeMOFFile : Invalid MOF definition for node 'localhost_WebSites': Exception calling "ValidateInstanceText" with "1" argument(s): "Convert property 'BindingInfo' value from type 
'STRING[]' to type 'INSTANCE[]' failed

DSC configuration

Items:
  - Name: TestSite1
    ApplicationPool: TestAppPool1
    BindingInfo:
      Protocol: HTTPS
      Port: 443
      HostName: test.com
      CertificateThumbprint: 466CD26A6E2F346A3A813D12E2BAAD0E886E7BBF
  - Name: TestSite2
    ApplicationPool: TestAppPool2
  # Remove IIS Default WebSite
  - Name: Default Web Site
    Ensure: Absent

Operating system the target node is running

OsName               : Microsoft Windows 10 Enterprise
OsOperatingSystemSKU : EnterpriseEdition
OsArchitecture       : 64-bit
WindowsVersion       : 2009
WindowsBuildLabEx    : 19041.1.amd64fre.vb_release.191206-1406
OsLanguage           : en-US
OsMuiLanguages       : {en-US}

PowerShell version and build the target node is running

Name                           Value
----                           -----
PSVersion                      5.1.19041.1320
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.19041.1320
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1

CommonTasks version

0.4

Only a few resources are exported.

Problem description

I could totally be doing something wrong but not all resources are available. These are the only ones that show up.

ImplementedAs Name ModuleName Version Properties


Composite AddsProtectFromAcciden... CommonTasks 0.6.0 {DependsOn, PsDscRunAsCredential, Pro...
Composite DnsServerQueryResoluti... CommonTasks 0.6.0 {DependsOn, PsDscRunAsCredential, Pol...
Composite DnsServerResponseRateL... CommonTasks 0.6.0 {DependsOn, PsDscRunAsCredential, Mod...
Composite SwitchLcmMode CommonTasks 0.6.0 {DependsOn, PsDscRunAsCredential, Sou...
Composite WaitForAllNodes CommonTasks 0.6.0 {DependsOn, PsDscRunAsCredential, Items}
Composite WaitForAnyNode CommonTasks 0.6.0 {DependsOn, PsDscRunAsCredential, Items}
Composite WaitForSomeNodes CommonTasks 0.6.0 {DependsOn, PsDscRunAsCredential, Items}
Composite WindowsFeatures CommonTasks 0.6.0 {DependsOn, PsDscRunAsCredential, Names}
Composite WindowsOptionalFeatures CommonTasks 0.6.0 {DependsOn, PsDscRunAsCredential, Nam...

Verbose logs

PS C:\Users\Administrator> Get-DscResource -Name DHCPServer
CheckResourceFound : The term 'DHCPServer' is not recognized as the name of a Resource.
At C:\Windows\system32\WindowsPowerShell\v1.0\Modules\PSDesiredStateConfiguration\PSDesiredStateConfiguration.psm1:4196
char:13
+             CheckResourceFound $Name $Resources
+             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
    + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,CheckResourceFound

How to reproduce

Execute Get-DscResource -Module CommonTasks

Expected behavior

All resources exported.

Current behavior

only about 8 resources are available

Suggested solution

I don't know

Operating system the target node is running

OsName               : Microsoft Windows Server 2019 Standard
OsOperatingSystemSKU : StandardServerEdition
OsArchitecture       : 64-bit
WindowsVersion       : 1809
WindowsBuildLabEx    : 17763.1.amd64fre.rs5_release.180914-1434
OsLanguage           : en-US
OsMuiLanguages       : {en-US}

PowerShell version and build the target node is running

Name                           Value
----                           -----
PSVersion                      5.1.17763.2268
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.17763.2268
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1

Module version used

Name        Version Path
----        ------- ----
CommonTasks 0.6.0   C:\Program Files\WindowsPowerShell\Modules\CommonTasks\0.6.0\CommonTasks.psd1

RequiredModulesDirectory Override Parameter in build.ps1 not working

Problem description

When trying to use the RequiredModulesDirectory parameter to override the default location of the RequireModules folder (output/RequiredModules) the path passed in never gets populated with the RequiredModule files, they continue to land in output/RequiredModules.

Verbose logs

No logs, just the resultant RequiredModules files are in the wrong place during build.

How to reproduce

Launch the build as follows:
.\build.ps1 -ResolveDependency -RequiredModulesDirectory RequiredModules

Expected behavior

RequiredModules files should end up in ./RequiredModules.

Current behavior

RequiredModules files currently end up in the default location of./output/RequiredModules.

Suggested solution

Add Target parameter to the Invoke-PSDepend call as follows:

    if (Test-Path -Path $DependencyFile)
    {
        $psDependParameters = @{
            Force = $true
            Path  = $DependencyFile
            Target = $PSDependTarget
        }

        # TODO: Handle when the Dependency file is in YAML, and -WithYAML is specified.
        Invoke-PSDepend @psDependParameters
    }

Operating system the target node is running

OsName               : Microsoft Windows 10 Enterprise
OsOperatingSystemSKU : EnterpriseEdition
OsArchitecture       : 64-bit
WindowsVersion       : 2009
WindowsBuildLabEx    : 19041.1.amd64fre.vb_release.191206-1406
OsLanguage           : en-US
OsMuiLanguages       : {en-US}

PowerShell version and build the target node is running

Name                           Value
----                           -----
PSVersion                      5.1.19041.1682
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.19041.1682
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1

Module version used

0.7.0 (latest)

.\Build.ps1 -ResolveDependency, integration tests fail

Executing script C:\Git\commontasks\commontasks\Tests\Integration\33 JeaEndpoints.Tests.ps1

  Describing JeaEndpoints DSC Resource compiles
PSDesiredStateConfiguration\Configuration : The term 'ConvertTo-Expression' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, 
verify that the path is correct and try again.
At C:\Git\commontasks\BuildOutput\Modules\commontasks\DSCResources\JeaEndpoints\JeaEndpoints.schema.psm1:1 char:1
+ configuration JeaEndpoints {
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (ConvertTo-Expression:String) [Configuration], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : CommandNotFoundException,Configuration

    [-] JeaEndpoints Compiles 2.83s
      Expected no exception to be thrown, but an exception "Compilation errors occurred while processing configuration 'Config_JeaEndpoints'. Please review the errors reported in error stream and modify your configuration code appropriately." was thrown from C:\Windows\System32\WindowsPowerShell\v1.0\Modules\PSDesiredStateConfiguration\PSDesiredStateConfiguration.psm1:3917 char:5
          +     throw $ErrorRecord
          +     ~~~~~~~~~~~~~~~~~~.
      19:         { Config_JeaEndpoints -ConfigurationData $configurationData -OutputPath $env:BHBuildOutput -ErrorAction Stop } | Should -Not -Throw
      at <ScriptBlock>, C:\Git\commontasks\commontasks\Tests\Integration\33 JeaEndpoints.Tests.ps1: line 19
    [-] JeaEndpoints should have created a mof file 25ms
      Expected the value to have type [System.IO.FileInfo] or any of its subtypes, but got $null with type $null.
      24:         $mofFile | Should -BeOfType System.IO.FileInfo
      at <ScriptBlock>, C:\Git\commontasks\commontasks\Tests\Integration\33 JeaEndpoints.Tests.ps1: line 24

Executing script C:\Git\commontasks\commontasks\Tests\Integration\34 JeaRole.Tests.ps1

  Describing JeaRoles DSC Resource compiles
Get-Content : Cannot find path 'D:\Untitled3 - Copy.ps1' because it does not exist.
At C:\Git\commontasks\BuildOutput\Modules\commontasks\DSCResources\JeaRoles\JeaRoles.schema.psm1:29 char:48
+ ... block]::Create((Get-Content -Path $functionDefinition.FilePath -Raw))
+                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (D:\Untitled3 - Copy.ps1:String) [Get-Content], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetContentCommand

PSDesiredStateConfiguration\Configuration : Exception calling "Create" with "1" argument(s): "Object reference not set to an instance of an object."
At C:\Git\commontasks\BuildOutput\Modules\commontasks\DSCResources\JeaRoles\JeaRoles.schema.psm1:1 char:1
+ configuration JeaRoles {
+ ~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Configuration], MethodInvocationException
    + FullyQualifiedErrorId : NullReferenceException,Configuration

    [-] JeaRoles Compiles 2.79s
      Expected no exception to be thrown, but an exception "Compilation errors occurred while processing configuration 'Config_JeaRoles'. Please review the errors reported in error stream and modify your configuration code appropriately." was thrown from C:\Windows\System32\WindowsPowerShell\v1.0\Modules\PSDesiredStateConfiguration\PSDesiredStateConfiguration.psm1:3917 char:5
          +     throw $ErrorRecord
          +     ~~~~~~~~~~~~~~~~~~.

 Loading default CIM keywords Processing
 Getting module list
    Processing
 Creating resource list
    Processing

Executing script C:\Git\commontasks\commontasks\Tests\Integration\99 Final.Tests.ps1

  Describing Final tests
Number of composite resources: 34
Number of compiled MOF files: 31
    [-] Every composite resource has compiled 3.18s
      Expected 31, but got 34.
      10:         $compositeResouces.Count | Should -Be $mofFiles.Count
      at <ScriptBlock>, C:\Git\commontasks\commontasks\Tests\Integration\99 Final.Tests.ps1: line 10
Tests completed in 199.93s
Tests Passed: 64, Failed: 5, Skipped: 0, Pending: 0, Inconclusive: 0 
ERROR: Assertion failed.

 Loading default CIM keywords Processing
 Getting module list
    Processing
 Creating resource list
    Processing

      19:         { Config_JeaRoles -ConfigurationData $configurationData -OutputPath $env:BHBuildOutput -ErrorAction Stop } | Should -Not -Throw
      at <ScriptBlock>, C:\Git\commontasks\commontasks\Tests\Integration\34 JeaRole.Tests.ps1: line 19
    [-] JeaRoles should have created a mof file 15ms
      Expected the value to have type [System.IO.FileInfo] or any of its subtypes, but got $null with type $null.
      24:         $mofFile | Should -BeOfType System.IO.FileInfo
      at <ScriptBlock>, C:\Git\commontasks\commontasks\Tests\Integration\34 JeaRole.Tests.ps1: line 24

    + CategoryInfo          : InvalidOperation: (:) [Assert-Build], Exception
    + FullyQualifiedErrorId : Assert-Build

Composite best practices: InstanceName

After I lost 2 or 3 days on a stupid oversight and wasted @raandree time I'd like to propose something like a best practices page (if there isn't something already) on composite creation and save someone else a lot of time.

I made a composite where i mixed Get-DscSplattedResource and the conventional Resource definition syntax.

configuration SharePointFarm
{
    param
    (
        # Shortend
    )
    Import-DscResource -ModuleName SharePointDSC
    Import-DscResource -ModuleName xPSDesiredStateConfiguration

    $PSBoundParameters.Remove('InstanceName')
    # Make the Setup Account a local Administrator
    xGroup 'LocalAdministrators' {
        Ensure           = 'Present'
        GroupName        = 'Administrators'
        MembersToInclude =  $SetupAccount.UserName
    }

    $ExecutionProperties = $PSBoundParameters
    $ExecutionProperties.Add('Ensure', 'Present')
    $ExecutionProperties.Add('IsSingleInstance', 'Yes')
    $ExecutionProperties.Add('PsDscRunAsCredential', $SetupAccount)
    if ($ExecutionProperties.ContainsKey('DependsOn'))
    {
        $ExecutionProperties.DependsOn = '[xGroup]LocalAdministrators'
    }
    else
    {
        $ExecutionProperties.Add('DependsOn', '[xGroup]LocalAdministrators')
    }

    $ExecutionProperties.Remove('SetupAccount')
    (Get-DscSplattedResource -ResourceName SPFarm -ExecutionName 'SPFarm' -Properties $ExecutionProperties -NoInvoke).Invoke($ExecutionProperties)


    # Setup Wizzard
    SPConfigWizard RunConfigWizard
    {
        IsSingleInstance     = "Yes"
        PsDscRunAsCredential = $SetupAccount
        DependsOn            = '[SPFarm]SPFarm'
    }
}

This code ends up make Composites with the Resouce ID [SharePointFarm] instead of [SharePointFarm]SharePointFarm
What i didn't know is that while Get-DscSplattedResource needs to have the InstanceNameremoved the conventional Resource definition needs it to create the ResourceID correctly.

After moving the .Remove('InstanceName') to the Get-DscSplattedResource Hashtable it works as expected.

configuration SharePointFarm
{
    param
    (
        # Shortend
    )
    Import-DscResource -ModuleName SharePointDSC
    Import-DscResource -ModuleName xPSDesiredStateConfiguration
    #
    # Make the Setup Account a local Administrator
    xGroup 'LocalAdministrators' {
        Ensure           = 'Present'
        GroupName        = 'Administrators'
        MembersToInclude =  $SetupAccount.UserName
    }

    # Create or Join Farm with SPFarm
    $spFarmValidParameters = @('AdminContentDatabaseName', 'ApplicationCredentialKey', 'CentralAdministrationAuth', 'CentralAdministrationPort', 'CentralAdministrationUrl', 'DatabaseCredentials', 'DatabaseServer', 'DeveloperDashboard', 'Ensure', 'FarmAccount', 'FarmConfigDatabaseName', 'Passphrase', 'RunCentralAdmin', 'ServerRole', 'SkipRegisterAsDistributedCacheHost',
        'UseSQLAuthentication')

    $spFarm = @{
        IsSingleInstance     = 'Yes'
        PsDscRunAsCredential = $SetupAccount
        DependsOn            = '[xGroup]LocalAdministrators'
    }
    foreach ($parameter in $spFarmValidParameters)
    {
        if ($PSBoundParameters.ContainsKey($parameter))
        {
            $spFarm.Add($parameter, $PSBoundParameters.Item($parameter))
        }
    }
    (Get-DscSplattedResource -ResourceName SPFarm -ExecutionName 'SPFarm' -Properties $spFarm -NoInvoke).Invoke($spFarm)


    # Setup Wizzard
    SPConfigWizard RunConfigWizard
    {
        IsSingleInstance     = "Yes"
        PsDscRunAsCredential = $SetupAccount
        DependsOn            = '[SPFarm]SPFarm'
    }
}

For discussion: Could it be a good habit to never remove a Key from the $PSBoundParameters and always call Get-DscSplattedResource with a dedicated Hashtable so you won't stab yourself in the back later if you add a resource.
Alternatively don't mix Get-DscSplattedResource with the conventional definition.

Error in publish_module_to_gallery task with Get-ChangeLogData

Problem description

In AzurePipeline, there is an error when you use Get-ChangeLogData function on Windows with PowerShell 7.
No problem with Windows PowerShell 5.1, or PowerShell 7 on Linux.

Get-ChangeLogData based the split to get date value with [environment]::NewLine.
But, in Windows, it's not the same character in each version of PowerShell:

#Powershell 5.1
[char[]][environment]::NewLine | % {[int]$_}

13
10
#Powershell 7.1.2
[int][environment]::NewLine
0

And now, the module is packaged with 'ubuntu-latest' image. That might cause some encoding or carriage return troubles.

Verbose logs

ERROR: Cannot bind parameter 'Date'. Cannot convert value "2022-03-08

### Added

- `VirtualMemoryFiles` Composite for adjusting the system page file via the resource `VirtualMemory` from the `ComputerManagementDsc` Module.
- `SharePointSetup` Composite for installing the SharePoint Prerequisits, Setup and optionally Language Packs.
### Changed

- Changed the build pipeline to Sampler.
  - Debugging Sampler migration:
    - Added 'Sampler.GitHubTasks'.
    - Moved DSCResources for faster build.
    - Removed dependencies for faster build.
- Fixed badges.
- Added back configurations and dependencies.
- Fixing issue with Cluster when only NodeMajority is used.
  - Fixed the fix: Quorum is not required in some SQL Always-On scenarios which did not work after the fix.
- Add new resource LocalUsers.
- Make DscLcmController independent from the DscDiagnostics resource.
- Add optional attributes to DscTagging resource.
- Update documentation.
- Applied HQRM standards.
- Fixing issue with AddsOrgUnitsAndGroups when OUs contain other non-word characters.
- Added MmaAgent to configure Microsoft Monitoring Agent.
- Added AddsServicePrincipalNames to configure SPNs.
- Disabling RebootNodeIfNeeded when LCM is on Monitor mode.
- Made 'WaitForClusterRetryIntervalSec' and 'WaitForClusterRetryCount' configurable in Cluster config.
- Added new configuration 'WebConfigPropertyCollections'.
- Fixed an issue with duplicate resource identifiers in 'WebConfigProperties'.
- Changed parameter 'Name' to 'Names' in 'WindowsFeatures' and 'WindowsOptionalFeatures' resources according to coding convention.
- Made the Office Online Server resources actually work and redesigned them.
  - Added 'OfficeOnlineServerMachineConfig' configuration.
- WindowsFeatures configuration does not longer install all sub features. If needed, use prefix '*'.

How to reproduce

Using Windows and PowerShell 7.1.2

Get-ChangeLogData -Path ./output/CHANGELOG.md

Expected behavior

Pipeline works without issue.

Current behavior

An error when Get-ChangelogData search the date in release title.

Suggested solution

Use ubuntu-latest image in pipeline for deploy task.

Operating system the target node is running

Windows Server 2019

PowerShell version and build the target node is running

$PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.2.1
PSEdition                      Core
GitCommitId                    7.2.1
OS                             Microsoft Windows 10.0.19043
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

Module version used

Latest

DSCR_FileContent: New resource proposal

Resource proposal

The module is available here , and it would be nice to integrate it into your CommonTasks.
For me I need it to edit .ini files.

Proposed properties

TextFile

Property Type qualifier Data type Description Default value Allowed values
Ensure Write String Specify the file exists or not Present Present / Absent
Path Key String The path of the file None None
Contents Write String The contents of file None None
Encoding Write String Text encoding for the file UTF8NoBOM UTF8NoBOM / UTF8BOM / utf32 / unicode / bigendianunicode / ascii / sjis
NewLine Write String New line code for the file CRLF CRLF / LF

IniFile

Property Type qualifier Data type Description Default value Allowed values
Ensure Write String Specify the key exists or not Present Present / Absent
Path Key String The path of the ini file None None
Key Key String Key element None None
Value Write String The value corresponding to the key None None
Section Key String The section to which the key belongs None None
Encoding Write String Text encoding for the ini file UTF8NoBOM UTF8NoBOM / UTF8BOM / utf32 / unicode / bigendianunicode / ascii / sjis
NewLine Write String New line code for the file CRLF CRLF / LF

JsonFile

Property Type qualifier Data type Description Default value Allowed values
Ensure Write String Specify the key exists or not Present Present / Absent
Path Key String The path of the JSON file None None
Key Key String Key element None None
Value Write String The value corresponding to the key None None
Encoding Write String Text encoding for the ini file UTF8NoBOM UTF8NoBOM / UTF8BOM / utf32 / unicode / bigendianunicode / ascii / sjis
NewLine Write String New line code for the file CRLF CRLF / LF

Special considerations or limitations

All composite resources should be sorted in namespaces

As the number of composite resources is getting larger, grouping them into namespaces is required

  • ADDomainController
  • WindowsComputerSettings
  • ConfigurationBase
  • DnsServerSettings
  • DscTagging
  • DscLcmMaintenanceWindows
  • DscLcmController
  • WindowsFilesAndFolders
  • WindowsNetwork
  • WindowsNetworkIpConfiguration
  • WindowsRegistryValues
  • SecurityBase
  • WebApplicationPools
  • WebApplications
  • WebSites
  • WebVirtualDirectories
  • WindowsSoftwarePackages
  • WindowsEventLogs
  • WindowsFeatures
  • WindowsServices
  • XmlContent

@nyanhp, does this scale and do the prefixes make sense?

VirtualMemoryFiles: New resource proposal

Resource proposal

A new composite ressource to configure the system page file via ComputerManagementDsc\VirtualMemory.
Configure one or more page files for a system.

I've tried do build one myself, but the build fails with:

[-] Composite resource folder count matches composite resource count 49ms
Expected 125, but got 115.
114: $compositeResouces.Count | Should -Be $compositeResouceFolders.Count
at , C:\Users\HannapCh\Repository\CommonTasks\tests\Unit\DSCResources\DscResources.Tests.ps1: line 114

and when used inside the DSCWorkshop Framework it does not recognise the Composite when building the Mof File.

"The term 'VirtualMemoryFiles' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the
spelling of the name, or if a path was included, verify that the path is correct and try again.

Is there an example guide how to add new ones?

Proposed properties

Property Type qualifier Data type Description Default value Allowed values
PropertyName Key String Detailed description None None

Special considerations or limitations

What i've tried:

  • Create a folder VirtualMemoryFiles at /source/DSCRessources/
  • Created the files
    • \source\DSCRessources\VirtualMemoryFiles.schema.psm1
    • \source\DSCRessources\VirtualMemoryFiles.psd1
    • tests\Unit\DSCResources\Assets\Config\VirtualMemoryFiles.yml

VirtualMemoryFiles.schema.psm1 contents:

configuration VirtualMemoryFiles
{
    param (
        [Parameter(Mandatory = $true)]
        [hashtable[]]
        $Files
    )

    Import-DscResource -ModuleName ComputerManagementDsc

    foreach ($file in $Files)
    {
        $executionName = $file.Drive
        (Get-DscSplattedResource -ResourceName VirtualMemory -ExecutionName $executionName -Properties $file -NoInvoke).Invoke($file)
    }
}

VirtualMemoryFiles.psd1 contents:

@{
    RootModule           = 'VirtualMemoryFiles.schema.psm1'

    ModuleVersion        = '0.0.1'

    GUID                 = 'decb37e2-f194-4502-bfee-aed06fafa34d'

    Author               = 'NA'

    CompanyName          = 'NA'

    Copyright            = 'NA'

    DscResourcesToExport = @('VirtualMemoryFiles')
}

VirtualMemoryFiles.yml contents:

Files:
  - Drive: C
  Type: CustomSize
  InitialSize: 4096
  MaximumSize: 4096
  - Drive: P
  Type: CustomSize
  InitialSize: 8192
  MaximumSize: 8192

The required module 'cScom' has additional dependencies to module 'AutomatedLab.Common' which is not part of the required module list.

Problem description

The required module 'cScom' has additional dependencies to module 'AutomatedLab.Common' which is not part of the required module list.

If you are using a private repository with only the modules listed in RequiredModules.psd1 and without fallback to PowershellGallery the build fails with an error (resolve depenencies).

The dependent module 'AutomatedLab.Common' is a very big module with 7MB and a lot of dll's inside.

Verbose logs

N/A

DSC configuration

Build of CommonTasks

Suggested solution

Remove the dependency to AutomatedLab.Common from module cScom (prefered) or add the missing module to RequiredModules.psd1.

Operating system the target node is running

Windows 10 / Windows Server 2019

PowerShell version and build the target node is running

5.1

CommonTasks version

0.8

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.