1

如何使用盐堆栈从 tar 球安装软件包?例如,我想从远程 tar 球安装 Apache Tomcat - 我该如何实现?我尝试使用 file.managed,但它在 source_hash 中显示不匹配 - 如何使用源 URL 动态预测校验和?

{% set tomcat = pillar.get('tomcat', {}) -%}
{% set version = tomcat.get('version', 'x.x.x') -%}
{% set tomcat_package = source + '/tomact-' + version + '.tar.gz' -%}
  file.managed:
    - name: {{ tomcat_package }}
    - source: http://tomcat.org/download/tomcat-{{ version }}.tar.gz
    - source_hash: {{ checksum }}
4

1 回答 1

3

file.managed只为您下载该文件。要提取它,请查看archive.extracted

tomcat:
  archive:
    - extracted
    - name: /opt/
    - source: http://mirrors.digipower.vn/apache/tomcat/tomcat-7/v7.0.47/bin/apache-tomcat-7.0.47.tar.gz
    - source_hash: md5=efbae77efad579b655ae175754cad3df
    - archive_format: tar
    - options: z
    - if_missing: /opt/apache-tomcat-7.0.47
于 2014-01-10T17:11:38.370 回答