【问题标题】:How do I set an environment variable for Ansible itself not using shell?如何在不使用 shell 的情况下为 Ansible 本身设置环境变量?
【发布时间】:2020-02-03 08:07:07
【问题描述】:

我想在我的测试区域的虚拟机上保留 tmp 目录。该问题有以下解决方案:在 Ansible 机器上将 ANSIBLE_KEEP_REMOTE_FILES 设置为 1。

问题在于 ansible 机器是本地 docker 容器,因此我需要确保始终设置此变量。否则我会丢失一些文件。当我重新启动系统并使用 Ansible 启动这个 docker 容器时,我失去了这个变量。

有没有办法在 Ansible 配置中的某处设置此环境变量 = 或在某处的剧本配置中?为了不忘记这个变量,我需要一个永久的解决方案。

谢谢!

【问题讨论】:

    标签: ansible continuous-deployment continuous-delivery


    【解决方案1】:

    问:“有没有办法在 Ansible 配置中设置这个环境变量?”

    答:是的。这是。例如

    $ cat ansible.cfg 
    [defaults]
    keep_remote_files = true
    

    DEFAULT_KEEP_REMOTE_FILES

    【讨论】:

    • @Hi Vladimir,你能再帮忙一点吗?有没有办法在拥有 remote_tmp = /tmp/ansible/ 的同时保留所有 /tmp 目录?
    • 我不明白。 “所有 /tmp 目录”到底是什么?
    • 只是 ansible 管理的 VM 上的 /tmp 目录。我已经让我的应用程序在这个 VM 上运行,并且它现在在 /tmp 中存储了一些数据
    • (Ansible 题外话)。我认为这取决于操作系统和/或虚拟机,例如How is the /tmp directory cleaned up?。请打开新问题。
    • 是的,我知道 tmp 目录的细节,这是一个临时解决方案。我们还没有获得 NAS。无论如何,谢谢,我会提出一个新问题!
    猜你喜欢
    • 2015-10-24
    • 2023-02-06
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 2020-03-15
    • 2017-11-11
    • 2011-10-13
    • 1970-01-01
    相关资源
    最近更新 更多