失败的! => {"changed": false, "msg": "apt cache update failed"} 尝试时

FAILED! => {"changed": false, "msg": "apt cache update failed"} when trying to

我是 Ansible and try, as an example, a task to install Vivaldi 的新手。我在角色 Vivaldi update 中的唯一任务从

开始
    - name: Run apt upgrade
      apt:
        upgrade: "yes"
        update_cache: yes
        cache_valid_time: 432000

    - name: Add Vivaldi Repository
      apt_repository:
          repo: "deb https://repo.vivaldi.com/stable/deb/ stable main"
          state: present
          filename: vivaldi.list
          update_cache: true
      tags:
         - vivaldi

因此,我在 localhost on a Debian 10 (Buster) 安装上失败了:

Linux 伦敦 4.19.0-12-amd64 #1 SMP Debian 4.19.152-1 (2020-10-18) x86_64 GNU/Linux) .

命令行上的所有命令都成功。

Ansible 是 2.9.15。

第一个任务 运行 成功(如果单独 运行),但第二个任务失败:

FAILED! => {"changed": false, "msg": "apt cache update failed"}.

添加存储库密钥的任务失败并显示:

FAILED! => {"changed": false, "id": "6D3789EDC3401E12", "msg": "key does not seem to have been added"}

但是,如果我手动将存储库添加到 /etc/apt/sources.list 最后一个任务,

    - name: Install Vivaldi
      apt:
          name: vivaldi-stable
          update_cache: yes
          state: latest
      tags:
         - vivaldi

成功了。

我做错了什么?

根据官方文档,您需要添加密钥,然后再添加存储库:

Manual setup of the Vivaldi Linux repositories

使用任务编辑您的剧本 Add key:

- name: Run apt upgrade
  apt:
    upgrade: "yes"
    update_cache: yes
    cache_valid_time: 432000

- name: Add key
  apt_key:
    url: https://repo.vivaldi.com/archive/linux_signing_key.pub
    state: present
  tags:
     - vivaldi

- name: Add Vivaldi Repository
  apt_repository:
      repo: "deb https://repo.vivaldi.com/stable/deb/ stable main"
      state: present
      filename: vivaldi.list
      update_cache: true
  tags:
     - vivaldi

- name: Install Vivaldi
  apt:
      name: vivaldi-stable
      update_cache: yes
      state: latest
  tags:
     - vivaldi