Menu

Подпись приложения

Max touch
2018-04-18
2018-05-22
  • Max touch

    Max touch - 2018-04-18

    Добрый день!

    Предлагаю добавить в собираемые приложения дополнительную полезную информацию, по умолчанию ее будет видно в плашке о Debug сборке.

    Преследовалась цель – каким либо легким способом узнать, что (кем, когда, какой версии приложение) задеплоено на инстансе

    В прод сборке плашка будет скрыта, но данные можно будет посмотреть в исходном коде html страницы

    Состав полей предлагаю обсудить, пока они такие Deploy at: ${time.stamp} From: ${computername} SVN: ${svnVersionInfo}, ${VERSION} JepRIA: ${JEPRIA_VERSION}, Size: ${fileSize}

    Данные для «подписи приложения» будут обновляться при каждом tomcat.deploy


    в build.xml нужно добавить новый target и вызвать через зависимость при deploy

    <!-- в JSP добавляем информацию о приложении -->
      <target name="do-sign" >
        <echo message="try to sign application"/>
        <trycatch property="errorMessage">
            <try>
            <!-- распаковываем war -->
            <unzip src= "${DISTR_DIR}/${DISTR_NAME}.war" dest="${DISTR_DIR}/war"/>
            <!-- готовим данные для вывода -->
            <tstamp>
                <format property="time.stamp" pattern="dd.MM.yyyy HH:mm:ss"/>
            </tstamp>
            <basename file="${pdir}" property="VERSION" />
            <propertyregex property="computername" input="${env.COMPUTERNAME}" regexp="[A-Z]" replace="*" global="true" />
            <length file="${DISTR_DIR}/${DISTR_NAME}.war" property="size"/>
            <math operation="divide" operand1="${size}" operand2="1048576" result="fileSize" datatype="int"/>
            <var name="info" value="Deploy at: ${time.stamp} From: ${computername} SVN: ${svnVersionInfo}, ${VERSION} JepRIA: ${JEPRIA_VERSION}, Size: ${fileSize}Mb" />
            <echo message="${info}"/>
            <!-- подписываем JSP -->
            <replace file="${DISTR_DIR}/war/${DISTR_NAME}.jsp" token="This is test build!" value="This is test build! &lt;br&gt; ${info}"/>
            <!-- запаковываем обратно war -->
            <jar basedir="${DISTR_DIR}/war" destfile="${DISTR_DIR}/${DISTR_NAME}.war" />
            <delete failonerror="false" dir="${DISTR_DIR}/war" />
            </try>
            <catch>
                <echo>
                    [WARNING]: Can't sign war!
                    ${errorMessage}
                </echo>
            </catch>
        </trycatch>
      </target>
    
     

    Last edit: Max touch 2018-04-19
    • Roman Zakharov

      Roman Zakharov - 2018-04-19

      Almir Abrarov, может удобнее будет фиксировать изменения в комментариях?
      А то непонятно какие изменения в основном сообщении.

       
      • Max touch

        Max touch - 2018-04-19

        Можно в коментариях, но на данный момент нет разницы, разработчик в Debug сразу видит информацию, не надо куда то лезть, в прод версии информация скрыта, но доступна в исходном коде как если бы это был комментарием

         

        Last edit: Max touch 2018-04-19
  • Max touch

    Max touch - 2018-05-22

     

    Last edit: Max touch 2018-05-22

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.