Sanitized mirror from private repository - 2026-04-18 11:19:59 UTC
This commit is contained in:
62
ansible/automation/playbooks/configure_apt_proxy.yml
Normal file
62
ansible/automation/playbooks/configure_apt_proxy.yml
Normal file
@@ -0,0 +1,62 @@
|
||||
---
|
||||
- name: Configure APT Proxy on Debian/Ubuntu hosts
|
||||
hosts: debian_clients
|
||||
become: yes
|
||||
gather_facts: yes
|
||||
|
||||
vars:
|
||||
apt_proxy_host: 100.103.48.78
|
||||
apt_proxy_port: 3142
|
||||
apt_proxy_file: /etc/apt/apt.conf.d/01proxy
|
||||
|
||||
tasks:
|
||||
- name: Verify OS compatibility
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- ansible_os_family == "Debian"
|
||||
fail_msg: "Host {{ inventory_hostname }} is not Debian-based. Skipping."
|
||||
success_msg: "Host {{ inventory_hostname }} is Debian-based."
|
||||
tags: verify
|
||||
|
||||
- name: Create APT proxy configuration
|
||||
ansible.builtin.copy:
|
||||
dest: "{{ apt_proxy_file }}"
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0644'
|
||||
content: |
|
||||
Acquire::http::Proxy "http://{{ apt_proxy_host }}:{{ apt_proxy_port }}/";
|
||||
Acquire::https::Proxy "false";
|
||||
register: proxy_conf
|
||||
tags: config
|
||||
|
||||
- name: Ensure APT cache directories exist
|
||||
ansible.builtin.file:
|
||||
path: /var/cache/apt/archives
|
||||
state: directory
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0755'
|
||||
tags: config
|
||||
|
||||
- name: Test APT proxy connection (dry-run)
|
||||
ansible.builtin.command: >
|
||||
apt-get update --print-uris -o Acquire::http::Proxy="http://{{ apt_proxy_host }}:{{ apt_proxy_port }}/"
|
||||
register: apt_proxy_test
|
||||
changed_when: false
|
||||
failed_when: apt_proxy_test.rc != 0
|
||||
tags: verify
|
||||
|
||||
- name: Display proxy test result
|
||||
ansible.builtin.debug:
|
||||
msg: |
|
||||
✅ {{ inventory_hostname }} is using APT proxy {{ apt_proxy_host }}:{{ apt_proxy_port }}
|
||||
{{ apt_proxy_test.stdout | default('') }}
|
||||
when: apt_proxy_test.rc == 0
|
||||
tags: verify
|
||||
|
||||
- name: Display failure if APT proxy test failed
|
||||
ansible.builtin.debug:
|
||||
msg: "⚠️ {{ inventory_hostname }} failed to reach APT proxy at {{ apt_proxy_host }}:{{ apt_proxy_port }}"
|
||||
when: apt_proxy_test.rc != 0
|
||||
tags: verify
|
||||
Reference in New Issue
Block a user