pm2 日志旋转与 ansible

pm2 log-rotate with ansible

我正在编写一个 ansible 剧本来执行各种 pm2 功能。

我搜索了一下,找不到有人设置 pm2-logrotate 的例子。

我相信我已经接近了,但我不确定我的 shell 命令是否有效。当我 ssh 进入子节点并 运行 sudo pm2 ls 它说 In-memory PM2 is out-of-date, do: $ pm2 update 即使我正在 运行 从我的剧本中执行该命令。我在这里错过了什么?

---
# RUN playbook
# ansible-playbook -K pm2-setup.yml

- name: Setup pm2 and pm2-logrotate
  hosts: devdebugs
  remote_user: ansible
  become: true

  tasks:
    - name: Install/Update pm2 globally
      community.general.npm: 
        name: pm2
        global: yes
        state: latest

    - name: Update In-memory pm2
      ansible.builtin.shell: pm2 update
      
    - name: Install/Update pm2-logrotate globally
      ansible.builtin.shell: pm2 install pm2-logrotate

    - name: Copy pm2-logrotate config
      ansible.builtin.copy:
        src: /home/ubuntu/files/pm2-logrotate-conf.json
        dest: /home/ubuntu/.pm2/module_conf.json
        owner: root
        group: root
        mode: '0644'
...

额外的问题:如果不需要 shell 命令(即如果已经安装了 pm2-logrotate),有没有办法跳过它们?

我混淆了服务器上的用户。我通过将 运行 指定为更新命令的 ubuntu 来修复此问题。