Centos

Saltstack rpm 軟體包安裝失敗

  • January 17, 2017

所以我在執行 salt -G ‘os:centos’ state.apply 時遇到了這些錯誤

----------
     ID: filebeat
Function: pkg.installed
 Result: False
Comment: An exception occurred in this state: Traceback (most recent call la   st):
           File "/usr/lib/python2.6/site-packages/salt/state.py", line 1744,    in call
             **cdata['kwargs'])
           File "/usr/lib/python2.6/site-packages/salt/loader.py", line 1702   , in wrapper
             return f(*args, **kwargs)
           File "/usr/lib/python2.6/site-packages/salt/states/pkg.py", line    1442, in installed
             **kwargs)
           File "/usr/lib/python2.6/site-packages/salt/modules/yumpkg.py", l   ine 1111, in install
             rpm_info = __salt__['lowpkg.bin_pkg_info'](pkg_source)
           File "/usr/lib/python2.6/site-packages/salt/modules/rpm.py", line    120, in bin_pkg_info
             for field in pkginfo._fields:
         AttributeError: 'NoneType' object has no attribute '_fields'
Started: 07:57:34.542126
Duration: 10800.412 ms

變化:

這是我的 .yml 文件的一部分。

   filebeat:
  pkg.installed:
     {% if grains['os'] == 'Debian' or 'Ubuntu' %}
     - sources:
        - filebeat: https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-
5.1.2-amd64.deb
     {% elif grains['os'] == 'Centos' %}
     - sources:
        - filebeat : https://artifacts.elastic.co/downloads/beats/filebeat/filebeat
-5.1.2-x86_64.rpm
     {% endif %}

好的,我以遲鈍的方式進行了這項工作,也許有時有人會在這裡告訴我更好的方法。

   filebeat:
  pkg.installed:
     {% if grains['os'] == 'Debian' or 'Ubuntu' %}
     - sources:
        - filebeat: https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.2-amd64.deb
     {% endif %}
     {% if grains['os'] == 'CentOS' %}
     - sources:
        - filebeat: https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.2-x86_64.rpm
     {% endif %}

引用自:https://serverfault.com/questions/826744