On this page
win_dotnet_ngen – Runs ngen to recompile DLLs after .NET updates
New in version 2.0.
Synopsis
- After .NET framework is installed/updated, Windows will probably want to recompile things to optimise for the host.
 - This happens via scheduled task, usually at some inopportune time.
 - This module allows you to run this task on your own schedule, so you incur the CPU hit at some more convenient and controlled time.
 - http://blogs.msdn.com/b/dotnet/archive/2013/08/06/wondering-why-mscorsvw-exe-has-high-cpu-usage-you-can-speed-it-up.aspx
 
Notes
Note
- There are in fact two scheduled tasks for ngen but they have no triggers so aren’t a problem.
 - There’s no way to test if they’ve been completed.
 - The stdout is quite likely to be several megabytes.
 
Examples
- name: Run ngen tasks
  win_dotnet_ngen:
  Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| dotnet_ngen64_eqi_exit_code
        
        integer
         | 
      64-bit ngen executable exists | 
        
        The exit code after running the 64-bit ngen.exe executeQueuedItems command.
          | 
     
| dotnet_ngen64_eqi_output
        
        string
         | 
      64-bit ngen executable exists | 
        
        The stdout after running the 64-bit ngen.exe executeQueuedItems command.
         Sample:
        
       
        sample output
         | 
     
| dotnet_ngen64_update_exit_code
        
        integer
         | 
      64-bit ngen executable exists | 
        
        The exit code after running the 64-bit ngen.exe update /force command.
          | 
     
| dotnet_ngen64_update_output
        
        string
         | 
      64-bit ngen executable exists | 
        
        The stdout after running the 64-bit ngen.exe update /force command.
         Sample:
        
       
        sample output
         | 
     
| dotnet_ngen_eqi_exit_code
        
        integer
         | 
      32-bit ngen executable exists | 
        
        The exit code after running the 32-bit ngen.exe executeQueuedItems command.
          | 
     
| dotnet_ngen_eqi_output
        
        string
         | 
      32-bit ngen executable exists | 
        
        The stdout after running the 32-bit ngen.exe executeQueuedItems command.
         Sample:
        
       
        sample output
         | 
     
| dotnet_ngen_update_exit_code
        
        integer
         | 
      32-bit ngen executable exists | 
        
        The exit code after running the 32-bit ngen.exe update /force command.
          | 
     
| dotnet_ngen_update_output
        
        string
         | 
      32-bit ngen executable exists | 
        
        The stdout after running the 32-bit ngen.exe update /force command.
         Sample:
        
       
        sample output
         | 
     
Status
- This module is not guaranteed to have a backwards compatible interface. [preview]
 - This module is maintained by the Ansible Community. [community]
 
Authors
- Peter Mounce (@petemounce)
 
Hint
If you notice any issues in this documentation you can edit this document to improve it.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/2.8/modules/win_dotnet_ngen_module.html