puppetlabs / bolt-vanagon

Apache License 2.0
2 stars 31 forks source link

(maint) Add Powershell Module Manifest Template #142

Closed jpogran closed 4 years ago

jpogran commented 4 years ago

Adds the PuppetBolt.psd1 manifest file that is built along with the PuppetBolt.psm1 module file. This completes managing the PowerShell module creation process.

jpogran commented 4 years ago

Should not be merged until https://github.com/puppetlabs/bolt/pull/2008 is

beechtom commented 4 years ago

Built locally and installed on a Windows VM. Confirmed that the module manifest was generated correctly and that PowerShell loads the functions from the module.

@{
  ModuleToProcess   = 'PuppetBolt.psm1'
  ModuleVersion     = '2.19.0'
  GUID              = 'CF5DDF2B-F69B-4A2B-B7E4-B9A981D7415D'
  Author            = "Puppet, Inc"
  CompanyName       = "Puppet, Inc"
  Copyright         = '(c) 2017 Puppet, Inc. All rights reserved'
  FunctionsToExport = @(
    'bolt',
    'Convert-BoltPlan',
    'Get-BoltGroup',
    'Get-BoltInventory',
    'Get-BoltPlan',
    'Get-BoltPuppetfileModules',
    'Get-BoltTask',
    'Install-BoltPuppetfile',
    'Invoke-BoltApply',
    'Invoke-BoltCommand',
    'Invoke-BoltPlan',
    'Invoke-BoltScript',
    'Invoke-BoltTask',
    'New-BoltProject',
    'New-BoltSecretKey',
    'Protect-BoltSecret',
    'Receive-BoltFile',
    'Register-BoltPuppetfileTypes',
    'Send-BoltFile',
    'Unprotect-BoltSecret',
    'Update-BoltProject'
  )
  CmdletsToExport   = @()
  VariablesToExport = @()
  AliasesToExport   = @()
  PrivateData       = @{
    PSData = @{
      # Tags = @()
      LicenseUri   = 'https://github.com/puppetlabs/bolt/blob/main/LICENSE'
      ProjectUri   = 'https://github.com/puppetlabs/bolt'
      # IconUri = ''
      ReleaseNotes = 'https://puppet.com/docs/bolt/latest/bolt_release_notes.html'
    }
  }
}
PS C:\Users\Administrator> Get-BoltTask

facts                      Gather system facts
package                    Manage and inspect the state of packages
pkcs7::secret_createkeys   Create a key pair
pkcs7::secret_decrypt      Encrypt sensitive data with pkcs7
pkcs7::secret_encrypt      Encrypt sensitive data with pkcs7
puppet_agent::install      Install the Puppet agent package
puppet_agent::version      Get the version of the Puppet agent package installed. Returns nothing if none present.
puppet_conf                Inspect puppet agent configuration settings
reboot                     Reboots a machine
reboot::last_boot_time     Gets the last boot time of a Linux or Windows system
service                    Manage and inspect the state of services
terraform::apply           Apply an HCL manifest
terraform::destroy         Destroy resources managed with Terraform
terraform::initialize      Initialize a Terraform project directory
terraform::output          JSON representation of Terraform outputs

MODULEPATH:
C:/Users/Administrator/.puppetlabs/bolt/modules;C:/Users/Administrator/.puppetlabs/bolt/site-modules;C:/Users/Administrator/.puppetlabs/bolt/site

Use `bolt task show <task-name>` to view details and parameters for a specific task.