2015-02-09 3 views
2

Я пытаюсь установить разрешение в моем файле appspec.yml, но я получаю сообщение об ошибке о дублирующих настройках разрешений при запуске при развертыванииAWS CodeDeploy Дубликат разрешение

Дублированных настройках инструкции для /данных разрешения/html/httpdocs/ремесленник

Это в настоящее время (с исключением в виде списка), как объект разрешения настроен в моей appspec.yml, в этой threads рекомендации. У меня на самом деле есть несколько файлов, на которые мне нужны разные разрешения, но я не могу заставить их работать с одним файлом? Каков правильный путь?

permissions: 
    - object: /data/html/httpdocs/ 
    pattern: "**" 
    except: [/data/html/httpdocs/artisan] 
    owner: ubuntu 
    group: www-data 
    mode: 644 
    type: 
     - file 
    - object: /data/html/httpdocs/artisan 
    owner: ubuntu 
    group: www-data 
    mode: 755 
    type: 
     - file 

ответ

3

Я просто столкнулся с подобной проблемой, и мне пришлось перекопать исходный код codedeploy agent.

В случае (с плохой документацией) исключение для разрешений CodeDeploy в настоящее время принимает массив , относящийся к именам файлов. Вы должны быть в состоянии соответствовать файл мастеровых, как это:

permissions: 
    - object: /data/html/httpdocs/ 
    pattern: "**" 
    except: [artisan] 
    owner: ubuntu 
    group: www-data 
    mode: 644 
    type: 
     - file 
    - object: /data/html/httpdocs/artisan 
    owner: ubuntu 
    group: www-data 
    mode: 755 
    type: 
     - file 

Обратите внимание, что это не будет работать для папок или файлов, вложенных в папки. Вы можете использовать подстановочные знаки, но они будут соответствовать только исключениям для корневого каталога этого объекта.

Мне пришлось перенести некоторые из моих скриптов из подпапки в корень из-за этого.

Here's a link к релевантному кодовому виду кода агента.

Смежные вопросы