Как установить разрешение для скриптов в дочернем модуле с Maven - PullRequest
0 голосов
/ 27 июня 2019

Мы создаем приложение, которое будет генерировать дочерние приложения машинного обучения.Каждый из этих модулей будет использовать один и тот же базовый код, включая сценарии запуска;единственное, что меняется, - это вопрос, который они задают.

Когда я собираю и внедряю дочерние модули, я вижу, что у запускаемых сценариев, которые они наследуют, нет необходимых разрешений на выполнение.

Пока чтоЯ попытался установить разрешения с помощью <filemode>, чтобы установить их в плагине сборки, как описано здесь .

Вот как выглядит мой файл assembly.xml:

<fileSet>
            <directory>${project.parent.basedir}/src/main/resources/child/</directory>
            <excludes>
                <exclude>data/questions.csv</exclude>
            </excludes>
            <outputDirectory>/</outputDirectory>
            <filtered>true</filtered>
        </fileSet>

        <fileSet>
            <directory>${project.basedir}/src/main/resources/child/</directory>
            <includes>
                <include>**/*</include>
            </includes>
            <outputDirectory>/</outputDirectory>
            <filtered>true</filtered>
        </fileSet>

        <fileSet>
            <directory>${project.basedir}/src/main/resources/child/bin</directory>
            <outputDirectory>/bin</outputDirectory>
            <includes>
                <include>*.sh</include>
            </includes>
            <fileMode>0755</fileMode>
        </fileSet>

Структура моего проекта на моей локальной машине выглядит следующим образом:

+parentName
|
|
+--+child1
|  |
|  +--+src
|  |
|  +--+target--+child1.tar
|  |
|  +--pom.xml
|
+--+child2
|
+--+src
   |
   +--+assembly--+assembly.xml
   |
   +--+resources--+parent--+bin--+start.sh
   |
   +--pom.xml

СтруктураВыходной файл:

+child.tar
|
+--+child
   |
   +--+bin
      |
      +--start.sh

Как я уже сказал, я ожидаю, что разрешение в выходном файле start.sh будет исполняемым, но оно имеет только разрешения на чтение.Я не уверен, что это связано с тем, что он передается в дочерний модуль при сборке.

...