mirror of https://github.com/jumpserver/jumpserver
perf: update playbook.yml
parent
994a484adb
commit
85574b43ee
|
@ -1,56 +1,140 @@
|
|||
---
|
||||
|
||||
- hosts: windows
|
||||
vars:
|
||||
- DownloadHost: https://demo.jumpserver.org/download
|
||||
- RDS_Licensing: enabled
|
||||
- RDS_LicenseServer: 127.0.0.1
|
||||
- RDS_LicensingMode: 4
|
||||
- RDS_fSingleSessionPerUser: 0
|
||||
- RDS_fSingleSessionPerUser: 1
|
||||
- RDS_MaxDisconnectionTime: 60000
|
||||
- RDS_RemoteAppLogoffTimeLimit: 0
|
||||
|
||||
tasks:
|
||||
- name: Install RDS-Licensing (RDS)
|
||||
ansible.windows.win_feature:
|
||||
name: RDS-Licensing
|
||||
state: present
|
||||
include_management_tools: yes
|
||||
when: RDS_Licensing == "enabled"
|
||||
- name: Install RDS-RD-Server (RDS)
|
||||
ansible.windows.win_feature:
|
||||
name: RDS-RD-Server
|
||||
state: present
|
||||
include_management_tools: yes
|
||||
register: win_feature
|
||||
- name: Reboot if installing RDS feature requires it
|
||||
ansible.windows.win_reboot:
|
||||
when: win_feature.reboot_required
|
||||
- name: Set RDS LicenseServer (regedit)
|
||||
ansible.windows.win_regedit:
|
||||
path: HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
|
||||
name: LicenseServers
|
||||
data: "{{ RDS_LicenseServer }}"
|
||||
type: string
|
||||
- name: Set RDS LicensingMode (regedit)
|
||||
ansible.windows.win_regedit:
|
||||
path: HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
|
||||
name: LicensingMode
|
||||
data: "{{ RDS_LicensingMode }}"
|
||||
type: dword
|
||||
- name: Set RDS fSingleSessionPerUser (regedit)
|
||||
ansible.windows.win_regedit:
|
||||
path: HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
|
||||
name: fSingleSessionPerUser
|
||||
data: "{{ RDS_fSingleSessionPerUser }}"
|
||||
type: dword
|
||||
- name: Set RDS MaxDisconnectionTime (regedit)
|
||||
ansible.windows.win_regedit:
|
||||
path: HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
|
||||
name: MaxDisconnectionTime
|
||||
data: "{{ RDS_MaxDisconnectionTime }}"
|
||||
type: dword
|
||||
when: RDS_MaxDisconnectionTime >= 60000
|
||||
- name: Set RDS RemoteAppLogoffTimeLimit (regedit)
|
||||
ansible.windows.win_regedit:
|
||||
path: HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
|
||||
name: RemoteAppLogoffTimeLimit
|
||||
data: "{{ RDS_RemoteAppLogoffTime }}"
|
||||
- name: Install RDS-Licensing (RDS)
|
||||
ansible.windows.win_feature:
|
||||
name: RDS-Licensing
|
||||
state: present
|
||||
include_management_tools: yes
|
||||
when: RDS_Licensing == "enabled"
|
||||
|
||||
- name: Install RDS-RD-Server (RDS)
|
||||
ansible.windows.win_feature:
|
||||
name: RDS-RD-Server
|
||||
state: present
|
||||
include_management_tools: yes
|
||||
register: rds_install
|
||||
|
||||
- name: Reboot if installing RDS feature requires it
|
||||
ansible.windows.win_reboot:
|
||||
post_reboot_delay: 10
|
||||
test_command: whoami
|
||||
when: rds_install.reboot_required
|
||||
|
||||
- name: Set RDS LicenseServer (regedit)
|
||||
ansible.windows.win_regedit:
|
||||
path: HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
|
||||
name: LicenseServers
|
||||
data: "{{ RDS_LicenseServer }}"
|
||||
type: string
|
||||
|
||||
- name: Set RDS LicensingMode (regedit)
|
||||
ansible.windows.win_regedit:
|
||||
path: HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
|
||||
name: LicensingMode
|
||||
data: "{{ RDS_LicensingMode }}"
|
||||
type: dword
|
||||
|
||||
- name: Set RDS fSingleSessionPerUser (regedit)
|
||||
ansible.windows.win_regedit:
|
||||
path: HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
|
||||
name: fSingleSessionPerUser
|
||||
data: "{{ RDS_fSingleSessionPerUser }}"
|
||||
type: dword
|
||||
|
||||
- name: Set RDS MaxDisconnectionTime (regedit)
|
||||
ansible.windows.win_regedit:
|
||||
path: HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
|
||||
name: MaxDisconnectionTime
|
||||
data: "{{ RDS_MaxDisconnectionTime }}"
|
||||
type: dword
|
||||
when: RDS_MaxDisconnectionTime >= 60000
|
||||
|
||||
- name: Set RDS RemoteAppLogoffTimeLimit (regedit)
|
||||
ansible.windows.win_regedit:
|
||||
path: HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
|
||||
name: RemoteAppLogoffTimeLimit
|
||||
data: "{{ RDS_RemoteAppLogoffTimeLimit }}"
|
||||
type: dword
|
||||
|
||||
- name: Download Jmservisor (jumpserver)
|
||||
ansible.windows.win_get_url:
|
||||
url: "{{ DownloadHost }}/Jmservisor.msi"
|
||||
dest: "{{ ansible_env.TEMP }}\\Jmservisor.msi"
|
||||
|
||||
- name: Install the Jmservisor (jumpserver)
|
||||
ansible.windows.win_package:
|
||||
path: "{{ ansible_env.TEMP }}\\Jmservisor.msi"
|
||||
state: present
|
||||
|
||||
- name: Download python-3.10.8
|
||||
ansible.windows.win_get_url:
|
||||
url: "{{ DownloadHost }}/python-3.10.8-amd64.exe"
|
||||
dest: "{{ ansible_env.TEMP }}\\python-3.10.8-amd64.exe"
|
||||
|
||||
- name: Install the python-3.10.8
|
||||
ansible.windows.win_package:
|
||||
path: "{{ ansible_env.TEMP }}\\python-3.10.8-amd64.exe"
|
||||
product_id: '{371d0d73-d418-4ffe-b280-58c3e7987525}'
|
||||
arguments:
|
||||
- /quiet
|
||||
- InstallAllUsers=1
|
||||
- PrependPath=1
|
||||
- Include_test=0
|
||||
- Include_launcher=0
|
||||
state: present
|
||||
register: win_install_python
|
||||
|
||||
- name: Reboot if installing Python package requires it
|
||||
ansible.windows.win_reboot:
|
||||
when: win_install_python.reboot_required
|
||||
|
||||
- name: Download pip packages
|
||||
ansible.windows.win_get_url:
|
||||
url: "{{ DownloadHost }}/pip_packages_v0.0.1.zip"
|
||||
dest: "{{ ansible_env.TEMP }}\\pip_packages_v0.0.1.zip"
|
||||
|
||||
- name: Unzip pip_packages
|
||||
community.windows.win_unzip:
|
||||
src: "{{ ansible_env.TEMP }}\\pip_packages_v0.0.1.zip"
|
||||
dest: "{{ ansible_env.TEMP }}"
|
||||
|
||||
- name: Install python requirements offline
|
||||
ansible.windows.win_shell: pip install -r "{{ ansible_env.TEMP }}\pip_packages_v0.0.1\requirements.txt" --no-index --find-links="{{ ansible_env.TEMP }}\pip_packages_v0.0.1"
|
||||
|
||||
- name: Download chromedriver (chrome)
|
||||
ansible.windows.win_get_url:
|
||||
url: "{{ DownloadHost }}/chromedriver_win32.106.zip"
|
||||
dest: "{{ ansible_env.TEMP }}\\chromedriver_win32.106.zip"
|
||||
|
||||
- name: Unzip chromedriver (chrome)
|
||||
community.windows.win_unzip:
|
||||
src: "{{ ansible_env.TEMP }}\\chromedriver_win32.106.zip"
|
||||
dest: C:\Program Files\JumpServer\drivers
|
||||
|
||||
- name: Set chromedriver on the global system path (chrome)
|
||||
ansible.windows.win_path:
|
||||
elements:
|
||||
- 'C:\Program Files\JumpServer\drivers'
|
||||
|
||||
- name: Download chrome msi package (chrome)
|
||||
ansible.windows.win_get_url:
|
||||
url: "{{ DownloadHost }}/googlechromestandaloneenterprise64.msi"
|
||||
dest: "{{ ansible_env.TEMP }}\\googlechromestandaloneenterprise64.msi"
|
||||
|
||||
- name: Install chrome (chrome)
|
||||
ansible.windows.win_package:
|
||||
path: "{{ ansible_env.TEMP }}\\googlechromestandaloneenterprise64.msi"
|
||||
state: present
|
||||
arguments:
|
||||
- /quiet
|
||||
|
|
Loading…
Reference in New Issue