Solución:
No recomendaría usar shell para esto, ya que Ansible tiene el módulo apt diseñado solo para este propósito. He detallado el uso de apt a continuación.
En un libro de jugadas, puede actualizar y actualizar así:
- name: Update and upgrade apt packages
become: true
apt:
upgrade: yes
update_cache: yes
cache_valid_time: 86400 #One day
los cache_valid_time
El valor se puede omitir. Su propósito de los documentos:
Actualice la caché de apt si es más antigua que la cache_valid_time. Esta opción se configura en segundos.
Por lo tanto, es bueno incluirlo si no desea actualizar la caché cuando se ha actualizado recientemente.
Para hacer esto como un comando ad-hoc, puede ejecutar:
$ ansible all -m apt -a "upgrade=yes update_cache=yes cache_valid_time=86400" --become
Los comandos ad-hoc se describen en detalle aquí.
Tenga en cuenta que estoy usando --become
y become: true
. Este es un ejemplo de escalada de privilegios típica a través de Ansible. Tu usas -u user
y -K
(solicite la contraseña de escalada de privilegios). Use el que funcione para usted, esto es solo para mostrarle la forma más común.