win_dotnet_ngen – Runs ngen to recompile DLLs after .NET updates
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.
 - https://docs.microsoft.com/en-us/dotnet/framework/tools/ngen-exe-native-image-generator#native-image-service
 - 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.9/modules/win_dotnet_ngen_module.html