69 lines
1.8 KiB
YAML
69 lines
1.8 KiB
YAML
|
|
#Debug
|
||
|
|
- name: Debug iis_site_name
|
||
|
|
debug:
|
||
|
|
var: iis_site_name
|
||
|
|
|
||
|
|
- name: Debug iis_app_pool
|
||
|
|
debug:
|
||
|
|
var: iis_app_pool
|
||
|
|
|
||
|
|
- name: Debug aspnetcore_environtment
|
||
|
|
debug:
|
||
|
|
var: aspnetcore_environtment
|
||
|
|
|
||
|
|
- name: Debug blue_path
|
||
|
|
debug:
|
||
|
|
var: blue_path
|
||
|
|
|
||
|
|
# Kiểm tra các thông số Nexus
|
||
|
|
- name: Debug Nexus URL
|
||
|
|
debug:
|
||
|
|
var: nexus_url
|
||
|
|
|
||
|
|
- name: Debug artifact name
|
||
|
|
debug:
|
||
|
|
var: artifact_name
|
||
|
|
|
||
|
|
- name: Set environment variable for IIS App Pool
|
||
|
|
hosts: windows_servers
|
||
|
|
tasks:
|
||
|
|
- name: Thiết lập ASPNETCORE_ENVIRONMENT cho App Pool
|
||
|
|
win_shell: |
|
||
|
|
$appPoolName = "{{ iis_app_pool }}"
|
||
|
|
$envVarName = "ASPNETCORE_ENVIRONMENT"
|
||
|
|
$envVarValue = "{{ aspnetcore_environtment }}"
|
||
|
|
$appPool = Get-Item "IIS:\AppPools\$appPoolName"
|
||
|
|
$appPool.EnvironmentVariables[$envVarName] = $envVarValue
|
||
|
|
$appPool | Set-Item
|
||
|
|
args:
|
||
|
|
executable: powershell.exe
|
||
|
|
|
||
|
|
#Lấy đường dẫn vật lý của iis site
|
||
|
|
- name: Get the physical path of the current IIS site
|
||
|
|
win_shell: |
|
||
|
|
Import-Module WebAdministration
|
||
|
|
$site = Get-Website -Name "{{ iis_site_name}}"
|
||
|
|
$site.PhysicalPath
|
||
|
|
register: active_path
|
||
|
|
- debug:
|
||
|
|
var: active_path
|
||
|
|
|
||
|
|
- name: Handle error if active_path is null
|
||
|
|
fail:
|
||
|
|
msg: "The IIS site active path could not be determined."
|
||
|
|
when: active_path.stdout is not defined or active_path.stdout == ''
|
||
|
|
|
||
|
|
|
||
|
|
# Chuẩn hóa giá trị của active_path
|
||
|
|
- name: Normalize active_path
|
||
|
|
set_fact:
|
||
|
|
active_path: "{{ active_path.stdout | trim }}"
|
||
|
|
- debug:
|
||
|
|
var: active_path
|
||
|
|
|
||
|
|
# Chọn môi trường Blue hoặc Green để deploy
|
||
|
|
- name: Set target deployment environment
|
||
|
|
set_fact:
|
||
|
|
target_path: "{{ green_path if active_path == blue_path else blue_path }}" #lấy ra đường dẫn thư mục cần deploy
|
||
|
|
- debug:
|
||
|
|
var: target_path
|