Кто-либо успешно выполнил интеграционные тесты со встроенным Jboss, Шов и Знаток?

Я не уверен, что это « не делай этого » тоже ...

Благодаря чрезвычайно полезному обсуждению в https://unix.stackexchange.com/questions/213799/can-bash-write-to-its-own-input-stream/ ...

Утилита tailcd (для «tail-call cd»), которая работает как в bash, так и под Midnight Commander, позволяет использовать в таких скриптах, как

/ bin / mkcd:

mkdir "$1" && tailcd "$1"

Реализация сложная и требует xdotool. Команда tailcd должна быть последней командой в сценарии (это типичное требование совместимости для утилит, которые допускают несколько реализаций). Он взламывает поток ввода bash, а именно вставляет в него cd . В случае Midnight Commander, он дополнительно вставляет две комбинации клавиш Ctrl + O (включение / выключение панелей) и очень хакерским способом использует sleep для межпроцессной синхронизации (что обидно, но работает).

/ bin / tailcd:

#! /bin/bash
escapedname=`sed 's/[^a-zA-Z\d._/-]/\\\\&/g' <<< "$1"`
if [ -z "$MC_TMPDIR" ] ; then
xdotool type " cd $escapedname  "; xdotool key space Return
else
(sleep 0.1; xdotool type " cd $escapedname "; xdotool key space Return Ctrl+o; sleep 0.1; xdotool key Ctrl+o )&
fi

(Пробел перед cd не позволяет вставленной команде перейти в историю; пробелы после имени каталога требуются для его работы, но я этого не делаю знаю почему.)

Другая реализация tailcd не использует xdotool, но она не работает с Midnight Commander:

#!/bin/bash
escapedname=`sed 's/[^a-zA-Z\d._/-]/\\\\&/g' <<< "$1"`
perl -e 'ioctl(STDIN, 0x5412, 

Я не уверен, что это « не делай этого » тоже ...

Благодаря чрезвычайно полезному обсуждению в https://unix.stackexchange.com/questions/213799/can-bash-write-to-its-own-input-stream/ ...

Утилита tailcd (для «tail-call cd»), которая работает как в bash, так и под Midnight Commander, позволяет использовать в таких скриптах, как

/ bin / mkcd:

[110]

Реализация сложная и требует xdotool. Команда tailcd должна быть последней командой в сценарии (это типичное требование совместимости для утилит, которые допускают несколько реализаций). Он взламывает поток ввода bash, а именно вставляет в него cd . В случае Midnight Commander, он дополнительно вставляет две комбинации клавиш Ctrl + O (включение / выключение панелей) и очень хакерским способом использует sleep для межпроцессной синхронизации (что обидно, но работает).

/ bin / tailcd:

[111]

(Пробел перед cd не позволяет вставленной команде перейти в историю; пробелы после имени каталога требуются для его работы, но я этого не делаю знаю почему.)

Другая реализация tailcd не использует xdotool, но она не работает с Midnight Commander:

[112]

В идеале, tailcd будет / должно быть часть bash, используйте нормальное межпроцессное взаимодействие и т. д.

) for split "", join " ", @ARGV' " cd" "$escapedname"

В идеале, tailcd будет / должно быть часть bash, используйте нормальное межпроцессное взаимодействие и т. д.

\r'

В идеале, tailcd будет / должно быть часть bash, используйте нормальное межпроцессное взаимодействие и т. д.

6
задан Rich Seller 30 July 2009 в 21:23
поделиться

1 ответ

I gave up on the embedded JBoss and switched with using the Maven JBoss Plugin to deploy to a JBoss instance started as a separate process. Not ideal but there were to many conflicts with our code and Maven to get around. Is there a reason you need the embedded version?

You should be able to do something like this to deploy to JBoss in the pre-integration test phase so the integration test could run against. You would still have to launch jboss before maven. Not ideal, but this is working for me.

       <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>jboss-maven-plugin</artifactId>
          <executions>
            <execution>
              <phase>pre-integration-test</phase>
              <goals>
                <goal>deploy</goal>
              </goals>
              <configuration>
                    <jbossHome>/opt/JBoss/current</jbossHome>
                    <port>8080</port>
              </configuration>
            </execution>
          </executions>
        </plugin>
5
ответ дан 17 December 2019 в 04:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: