Skip to content

Custom Ansible Tower docker image for Windows guests.

License

Notifications You must be signed in to change notification settings

abass0/winrm-tower

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 

Repository files navigation

Ansible Tower Windows Ready Container (plus ServiceNow)

This is an Ansible Tower custom container image that brings the pre requirements to use it with Windows Hosts and, additionally, the requirements for ServiceNow integration.

License Latest Github release GitHub last commit

Container Image Description

This image was based on the following:

  • Red Hat Enterprise Linux 7

  • Ansible Tower 3.7.1-1

  • Python Packages (for connecting with Windows Hosts)

    • pywinrm
    • ptwinrm
  • Python Packages (for connecting with ServiceNow)

    • pysnow
    • netaddr

This image was tested on:

  • OpenShift v3.11
  • OpenShift v4.2
  • ServiceNow New York Release

Suporting Documentation (for Windows Hosts)

Ansible Tower's default container image does not contain the necessary python libraries for it to be used on Windows Hosts.

This article describes the procedure for adding python virtualenv to a custom image on OpenShift:

This image was also based on the official documentation for Ansible Tower deployment on OpenShift:

Additionally, there is some pre configuration that is needed to be performed on the Windows Host:

Suporting Documentation (for ServiceNow integration)

Using Tower on ServiceNow requires some configurations of tokens and credentials. This repo by Michael Ford walks trough the process of setting up Tower:

This documentation was also used to setup the user Token for OAuth2 to be able to authenticate with Tower - ServiceNow:

Swagger API documentation for Ansible Tower also helped on the process:

Additional Parameters for Ansible - Windows Comunication

These parameters go on the variables input of your inventory:

---
ansible_port: 5986
ansible_connection: winrm 
ansible_winrm_server_cert_validation: ignore
ansible_winrm_transport: ntlm