|
|
|
- name: Create deb822 repo - check_mode
|
|
|
|
deb822_repository:
|
|
|
|
name: ansible-test focal archive
|
|
|
|
uris: http://us.archive.ubuntu.com/ubuntu
|
|
|
|
suites:
|
|
|
|
- focal
|
|
|
|
- focal-updates
|
|
|
|
components:
|
|
|
|
- main
|
|
|
|
- restricted
|
|
|
|
register: deb822_check_mode_1
|
|
|
|
check_mode: true
|
|
|
|
|
|
|
|
- name: Create deb822 repo
|
|
|
|
deb822_repository:
|
|
|
|
name: ansible-test focal archive
|
|
|
|
uris: http://us.archive.ubuntu.com/ubuntu
|
|
|
|
suites:
|
|
|
|
- focal
|
|
|
|
- focal-updates
|
|
|
|
components:
|
|
|
|
- main
|
|
|
|
- restricted
|
|
|
|
date_max_future: 10
|
|
|
|
register: deb822_create_1
|
|
|
|
|
|
|
|
- name: Check file mode
|
|
|
|
stat:
|
|
|
|
path: /etc/apt/sources.list.d/ansible-test-focal-archive.sources
|
|
|
|
register: deb822_create_1_stat_1
|
|
|
|
|
|
|
|
- name: Create another deb822 repo
|
|
|
|
deb822_repository:
|
|
|
|
name: ansible-test focal security
|
|
|
|
uris: http://security.ubuntu.com/ubuntu
|
|
|
|
suites:
|
|
|
|
- focal-security
|
|
|
|
components:
|
|
|
|
- main
|
|
|
|
- restricted
|
|
|
|
register: deb822_create_2
|
|
|
|
|
|
|
|
- name: Create deb822 repo idempotency
|
|
|
|
deb822_repository:
|
|
|
|
name: ansible-test focal archive
|
|
|
|
uris: http://us.archive.ubuntu.com/ubuntu
|
|
|
|
suites:
|
|
|
|
- focal
|
|
|
|
- focal-updates
|
|
|
|
components:
|
|
|
|
- main
|
|
|
|
- restricted
|
|
|
|
date_max_future: 10
|
|
|
|
register: deb822_create_1_idem
|
|
|
|
|
|
|
|
- name: Create deb822 repo (changed order of parameters) idempotency
|
|
|
|
deb822_repository:
|
|
|
|
uris: http://us.archive.ubuntu.com/ubuntu
|
|
|
|
name: ansible-test focal archive
|
|
|
|
date_max_future: 10
|
|
|
|
components:
|
|
|
|
- main
|
|
|
|
- restricted
|
|
|
|
suites:
|
|
|
|
- focal
|
|
|
|
- focal-updates
|
|
|
|
register: deb822_create_2_idem
|
|
|
|
|
|
|
|
- name: Create deb822 repo - check_mode
|
|
|
|
deb822_repository:
|
|
|
|
name: ansible-test focal archive
|
|
|
|
uris: http://us.archive.ubuntu.com/ubuntu
|
|
|
|
suites:
|
|
|
|
- focal
|
|
|
|
- focal-updates
|
|
|
|
components:
|
|
|
|
- main
|
|
|
|
- restricted
|
|
|
|
date_max_future: 10
|
|
|
|
register: deb822_check_mode_2
|
|
|
|
check_mode: yes
|
|
|
|
|
|
|
|
- name: Change deb822 repo mode
|
|
|
|
deb822_repository:
|
|
|
|
name: ansible-test focal archive
|
|
|
|
uris: http://us.archive.ubuntu.com/ubuntu
|
|
|
|
suites:
|
|
|
|
- focal
|
|
|
|
- focal-updates
|
|
|
|
components:
|
|
|
|
- main
|
|
|
|
- restricted
|
|
|
|
date_max_future: 10
|
|
|
|
mode: '0600'
|
|
|
|
register: deb822_create_1_mode
|
|
|
|
|
|
|
|
- name: Check file mode
|
|
|
|
stat:
|
|
|
|
path: /etc/apt/sources.list.d/ansible-test-focal-archive.sources
|
|
|
|
register: deb822_create_1_stat_2
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- deb822_check_mode_1 is changed
|
|
|
|
|
|
|
|
- deb822_check_mode_2 is not changed
|
|
|
|
|
|
|
|
- deb822_create_1 is changed
|
|
|
|
- deb822_create_1.dest == '/etc/apt/sources.list.d/ansible-test-focal-archive.sources'
|
|
|
|
- deb822_create_1.repo|trim == focal_archive_expected
|
|
|
|
|
|
|
|
- deb822_create_1_idem is not changed
|
|
|
|
- deb822_create_2_idem is not changed
|
|
|
|
|
|
|
|
- deb822_create_1_mode is changed
|
|
|
|
- deb822_create_1_stat_1.stat.mode == '0644'
|
|
|
|
- deb822_create_1_stat_2.stat.mode == '0600'
|
|
|
|
vars:
|
|
|
|
focal_archive_expected: |-
|
|
|
|
Components: main restricted
|
|
|
|
Date-Max-Future: 10
|
|
|
|
X-Repolib-Name: ansible-test focal archive
|
|
|
|
Suites: focal focal-updates
|
|
|
|
Types: deb
|
|
|
|
URIs: http://us.archive.ubuntu.com/ubuntu
|
|
|
|
|
|
|
|
- name: Remove repos
|
|
|
|
deb822_repository:
|
|
|
|
name: '{{ item }}'
|
|
|
|
state: absent
|
|
|
|
register: remove_repos_1
|
|
|
|
loop:
|
|
|
|
- ansible-test focal archive
|
|
|
|
- ansible-test focal security
|
|
|
|
|
|
|
|
- name: Check for repo files
|
|
|
|
stat:
|
|
|
|
path: /etc/apt/sources.list.d/ansible-test-{{ item }}.sources
|
|
|
|
register: remove_stats
|
|
|
|
loop:
|
|
|
|
- focal-archive
|
|
|
|
- focal-security
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- remove_repos_1 is changed
|
|
|
|
- remove_stats.results|map(attribute='stat')|selectattr('exists') == []
|
|
|
|
|
|
|
|
- name: Add repo with signed_by
|
|
|
|
deb822_repository:
|
|
|
|
name: ansible-test
|
|
|
|
types: deb
|
|
|
|
uris: https://deb.debian.org
|
|
|
|
suites: stable
|
|
|
|
components:
|
|
|
|
- main
|
|
|
|
- contrib
|
|
|
|
- non-free
|
|
|
|
signed_by: |-
|
|
|
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
|
|
|
|
|
|
|
mDMEYCQjIxYJKwYBBAHaRw8BAQdAD/P5Nvvnvk66SxBBHDbhRml9ORg1WV5CvzKY
|
|
|
|
CuMfoIS0BmFiY2RlZoiQBBMWCgA4FiEErCIG1VhKWMWo2yfAREZd5NfO31cFAmAk
|
|
|
|
IyMCGyMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQREZd5NfO31fbOwD6ArzS
|
|
|
|
dM0Dkd5h2Ujy1b6KcAaVW9FOa5UNfJ9FFBtjLQEBAJ7UyWD3dZzhvlaAwunsk7DG
|
|
|
|
3bHcln8DMpIJVXht78sL
|
|
|
|
=IE0r
|
|
|
|
-----END PGP PUBLIC KEY BLOCK-----
|
|
|
|
register: signed_by_inline
|
|
|
|
|
|
|
|
- name: Change signed_by to URL
|
|
|
|
deb822_repository:
|
|
|
|
name: ansible-test
|
|
|
|
types: deb
|
|
|
|
uris: https://deb.debian.org
|
|
|
|
suites: stable
|
|
|
|
components:
|
|
|
|
- main
|
|
|
|
- contrib
|
|
|
|
- non-free
|
|
|
|
signed_by: https://ci-files.testing.ansible.com/test/integration/targets/apt_key/apt-key-example-binary.gpg
|
|
|
|
register: signed_by_url
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- signed_by_inline.key_filename is none
|
|
|
|
- signed_by_inline.repo|trim == signed_by_inline_expected
|
|
|
|
- signed_by_url is changed
|
|
|
|
- signed_by_url.key_filename == '/etc/apt/keyrings/ansible-test.gpg'
|
|
|
|
- >
|
|
|
|
'BEGIN' not in signed_by_url.repo
|
|
|
|
vars:
|
|
|
|
signed_by_inline_expected: |-
|
|
|
|
Components: main contrib non-free
|
|
|
|
X-Repolib-Name: ansible-test
|
|
|
|
Signed-By:
|
|
|
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
|
|
|
.
|
|
|
|
mDMEYCQjIxYJKwYBBAHaRw8BAQdAD/P5Nvvnvk66SxBBHDbhRml9ORg1WV5CvzKY
|
|
|
|
CuMfoIS0BmFiY2RlZoiQBBMWCgA4FiEErCIG1VhKWMWo2yfAREZd5NfO31cFAmAk
|
|
|
|
IyMCGyMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQREZd5NfO31fbOwD6ArzS
|
|
|
|
dM0Dkd5h2Ujy1b6KcAaVW9FOa5UNfJ9FFBtjLQEBAJ7UyWD3dZzhvlaAwunsk7DG
|
|
|
|
3bHcln8DMpIJVXht78sL
|
|
|
|
=IE0r
|
|
|
|
-----END PGP PUBLIC KEY BLOCK-----
|
|
|
|
Suites: stable
|
|
|
|
Types: deb
|
|
|
|
URIs: https://deb.debian.org
|
|
|
|
|
|
|
|
- name: remove ansible-test repo
|
|
|
|
deb822_repository:
|
|
|
|
name: ansible-test
|
|
|
|
state: absent
|
|
|
|
register: ansible_test_repo_remove
|
|
|
|
|
|
|
|
- name: check for ansible-test repo and key
|
|
|
|
stat:
|
|
|
|
path: '{{ item }}'
|
|
|
|
register: ansible_test_repo_stats
|
|
|
|
loop:
|
|
|
|
- /etc/apt/sources.list.d/ansible-test.sources
|
|
|
|
- /etc/apt/keyrings/ansible-test.gpg
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- ansible_test_repo_remove is changed
|
|
|
|
- ansible_test_repo_stats.results|map(attribute='stat')|selectattr('exists') == []
|
|
|
|
|
|
|
|
- name: Check if http-agent works when using cloudflare repo - check_mode
|
|
|
|
deb822_repository:
|
|
|
|
name: cloudflared
|
|
|
|
types: deb
|
|
|
|
uris: https://pkg.cloudflare.com/cloudflared
|
|
|
|
suites: "bullseye"
|
|
|
|
components: main
|
|
|
|
signed_by: https://pkg.cloudflare.com/cloudflare-main.gpg
|
|
|
|
state: present
|
|
|
|
check_mode: true
|
|
|
|
register: ansible_test_http_agent
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- ansible_test_http_agent is changed
|