首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
V2EX  ›  问与答

Vagrant + Ansible playbooks 自动部署过程中的坑爹事

  •  
  •   tabris17 · 2015-11-24 11:22:47 +08:00 · 1548 次点击
    这是一个创建于 1474 天前的主题,其中的信息可能已经有所发展或是发生改变。

    就问问这种问题大家有没有碰到过?如何解决的?

    playbooks 里如下脚本:

    - name: create new dir
      file: >
        path={{ item }} state=directory 
        owner=root group=root mode=0755
      with_items:
        - "/vargrant/new_dir"
    
    - name: add new file
      template: >
        dest=/vagrant/new_dir/new_file
        src=file.j2
        mode=0755 owner=root group=root
    

    /vagrant 目录是 vagrant 加载的宿主机的文件系统。

    执行 playbooks 报错:

    msg: Could not replace file: /home/vagrant/.ansible/tmp/ansible-tmp-xxx-xxx/source to /vagrant/new_file: [Errno 26] Text file busy

    现在使用如下临时替代方法:

    - name: add new file in temp path
      template: >
        dest={{ COMMON_TEMP_PATH }}/new_file 
        src=file.j2
        mode=0755 owner=root group=root
    
    - name: move new file to dest
      command: mv "{{ COMMON_TEMP_PATH }}/new_file" "{{ COMMON_BIN_PATH }}/new_file"
    

    COMMON_TEMP_PATH 是定义的临时文件夹。

    目前尚无回复
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2453 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 22ms · UTC 08:49 · PVG 16:49 · LAX 00:49 · JFK 03:49
    ♥ Do have faith in what you're doing.