Files
nsg_ansible/roles/deploy-be-portal/tasks/setup.yml
T

60 lines
1.7 KiB
YAML
Raw Normal View History

#Debug
- name: Debug iis_site_name
debug:
var: iis_site_name
2025-03-03 18:40:02 +07:00
- name: Debug aspnetcore_environment
debug:
2025-03-03 18:40:02 +07:00
var: aspnetcore_environment
- 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
2025-03-04 10:06:53 +07:00
# Validate các biến var truyền vào
2025-03-03 18:08:45 +07:00
- name: Validate required variables
assert:
that:
- iis_site_name is defined and iis_site_name | length > 0
2025-03-03 18:40:02 +07:00
- aspnetcore_environment is defined and aspnetcore_environment | length > 0
2025-03-03 18:08:45 +07:00
- blue_path is defined and blue_path | length > 0
- nexus_url is defined and nexus_url | length > 0
- artifact_name is defined and artifact_name | length > 0
fail_msg: "One or more required variables are missing or empty!"
2025-03-04 10:06:53 +07:00
#Lấy đường dẫn vật lý của iis site/kiểm tra sự tồn tại của site
- name: Get the physical path of the current IIS site
win_shell: |
Import-Module WebAdministration
$site = Get-Website -Name "{{ iis_site_name}}"
2025-03-04 10:06:53 +07:00
if ($site) {
Write-Output $site.PhysicalPath
} else {
Write-Output "NOT_FOUND"
}
2025-03-04 10:37:14 +07:00
register: site_path
2025-03-04 10:37:14 +07:00
- name: Set fact for site path
set_fact:
active_path: "{{ site_path.stdout_lines[0] }}"
2025-03-04 10:06:53 +07:00
- name: Fail if site does not exist
fail:
msg: "IIS site {{ iis_site_name }} not found!"
2025-03-04 10:37:14 +07:00
when: active_path == "NOT_FOUND"
# 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