小编Leg*_*ude的帖子

当我尝试更改文件的权限时,为什么会从 Ansible 收到此错误?

我在名为 tomcat 的角色中执行以下任务:

- name: copy tomcat file settings
  copy:
    src: "{{ item.src }}"
    dest: "{{ item.dest }}"
    owner: tomcat
    group: tomcat
    mode: "{{ item.mode }}"
  with_items:
  - { src: logrotate-tomcat7, dest: /etc/logrotate.d/tomcat7, mode: 0644 }
  - { src: keystore.pks, dest: /var/lib/tomcat7/webapps, mode: 0644  }
  - { src: jmxremote.access, dest: /etc/tomcat7, mode: 0644   }
  - { src: jmxremote.password, dest: /etc/tomcat7, mode: 0600 }
Run Code Online (Sandbox Code Playgroud)

当我运行调用 tomcat 角色的 playbook 时,我看到以下输出:

TASK [devops-server : copy tomcat file settings] *********************************
changed: [10.71.10.11] => (item={u'dest': …
Run Code Online (Sandbox Code Playgroud)

file-permissions ansible

4
推荐指数
1
解决办法
4790
查看次数

Ansible 相等比较中“-1”的意义是什么?

我正在查看此处的Ansible 文档,并看到将输出注册为变量的示例显示了以下内容:

- name: test play
  hosts: all

  tasks:

      - shell: cat /etc/motd
        register: motd_contents

      - shell: echo "motd contains the word hi"
        when: motd_contents.stdout.find('hi') != -1
Run Code Online (Sandbox Code Playgroud)

条件语句中的相等性检查when是 -1,但我会假设这是一个布尔值,因此返回 0 或 1。我无法在文档中找到任何内容来说明为什么负情况是-1 而不是 0。这让我担心,因为这是非标准行为,我想知道在这种比较中我可以期待哪些其他类型的返回值,以及无论如何,什么是成功?一个 0?一个1?

ansible

3
推荐指数
1
解决办法
9983
查看次数

为什么这个 Ansible 任务会报告失败?

我正在尝试配置一个 Ansible 任务,该任务将检查 Java cacerts 密钥库文件中是否存在特定证书,如果不存在,请安装它。

- name: copy cert to home
    copy:
      src: my_cert_file.crt
      dest: /home/ec2-user/my_cert_file.crt
      owner: root
      group: root
      mode: 0644

- name: check for domain SSL cert 
  shell: /usr/java/latest/bin/keytool -keystore /usr/java/latest/jre/lib/security/cacerts -storepass changeit -alias trusted_cert -list
  register: trusted_cert



- name: install SSL cert into cacerts
  shell: /usr/java/latest/bin/keytool -import -keystore /usr/java/latest/jre/lib/security/cacerts -storepass changeit -file /home/ec2-user/my_cert_file.crt -noprompt -alias trusted_cert
  when: trusted_cert.stdout.find('trustedCertEntry') == 1
Run Code Online (Sandbox Code Playgroud)

/usr/java/latest/bin/keytool -keystore /usr/java/latest/jre/lib/security/cacerts -storepass changeit -alias trusted_cert -list当证书不存在时,上述命令返回以下内容:

keytool error: java.lang.Exception: Alias <trusted_cert> does not …

shell ansible

0
推荐指数
1
解决办法
4670
查看次数

标签 统计

ansible ×3

file-permissions ×1

shell ×1