Инструмент командной строки для передачи или удаления приложений

improve this page | report issue

Обзор

Для развертывания приложений в Application Center в рамках процесса компоновки применяется инструмент командной строки.

Приложение можно передать в Application Center с помощью веб-интерфейса консоли Application Center. Кроме того, новое приложение можно передать с помощью инструмента командной строки.

Это в особенности удобно, если требуется интегрировать развертывание приложения в Application Center в процесс компоновки. Расположение инструмента: installDir/ApplicationCenter/tools/applicationcenterdeploytool.jar.

Инструмент поддерживает файлы приложений с расширениями APK и IPA. Его можно использовать отдельно или в качестве задачи Ant.

Каталог tools содержит все файлы, необходимые для работы инструмента.

  • applicationcenterdeploytool.jar: инструмент передачи.
  • json4j.jar: библиотека для формата JSON, необходимая для работы инструмента передачи.
  • build.xml: пример сценария Ant для передачи одного или нескольких файлов в Application Center.
  • acdeploytool.sh и acdeploytool.bat: простые сценарии для вызова java с помощью applicationcenterdeploytool.jar.

Перейти на

Передача приложения с помощью автономного инструмента

Для передачи приложения вызовите автономный инструмент из командной строки.
Для работы с автономным инструментом выполните следующие действия:

  1. Добавьте файлы applicationcenterdeploytool.jar и json4j.jar в путь к классам Java.
  2. Вызовите инструмент передачи из командной строки:

    java com.ibm.appcenter.Upload [параметры] [файлы]
    

В командной строке можно указать следующие параметры.

Параметр Содержимое Описание  
-s путь к серверу Путь к серверу Application Center.  
-c контекст Контекст веб-приложения Application Center.  
-u пользователь Имя пользователя для доступа к Application Center.  
-p пароль Пароль пользователя.  
-d описание Описание передаваемого приложения.  
-l метка Метка по умолчанию. Как правило, метка извлекается из дескриптора приложения, расположенного в передаваемом файле. Если метка отсутствует в дескрипторе приложения, применяется метка по умолчанию.  
-isActive true или false Приложение размещается в Application Center в качестве активного или неактивного приложения.  
-isInstaller true или false Приложение размещается в Application Center с указанным флагом “installer”.  
-isReadyForProduction true или false Приложение размещается в Application Center с указанным флагом “ready-for-production”.  
-isRecommended true или false Приложение размещается в Application Center с указанным флагом “recommended”.  
-e   Отображает полные данные трассировки стека исключительной ситуации в случае сбоя.  
-f   Принудительная передача приложений даже в том случае, если они уже существуют.  
-y   Выключает проверку безопасности SSL, чтобы разрешить публикацию на защищенных хостах без проверки сертификата SSL. Использование этого флага небезопасно, однако он упрощает тестирование локального хоста с временными собственными сертификатами SSL.

С помощью параметра файлы можно указать файлы пакетов приложений Android (.apk) или файлы приложений iOS (.ipa).
В следующем примере пользователь demo имеет пароль demopassword. Введите следующую команду.

java com.ibm.appcenter.Upload -s http://localhost:9080 -c applicationcenter -u demo -p demopassword -f app1.ipa app2.ipa

Удаление приложения с помощью автономного инструмента

Для удаления приложения из Application Center вызовите автономный инструмент из командной строки.
Для работы с автономным инструментом выполните следующие действия:

  1. Добавьте файлы applicationcenterdeploytool.jar и json4j.jar в путь к классам Java.
  2. Вызовите инструмент передачи из командной строки:

    java com.ibm.appcenter.Upload -delete [параметры] [файлы или приложения]
    

В командной строке можно указать следующие параметры.

Параметр Содержимое Описание
-s путь к серверу Путь к серверу Application Center.
-c контекст Контекст веб-приложения Application Center.
-u пользователь Имя пользователя для доступа к Application Center.
-p пароль Пароль пользователя.
-y   Выключает проверку безопасности SSL, чтобы разрешить публикацию на защищенных хостах без проверки сертификата SSL. Использование этого флага небезопасно, однако он упрощает тестирование локального хоста с временными собственными сертификатами SSL.

Укажите файлы или пакет приложения, операционную систему и версию. Если указаны файлы, то пакет, операционная система и версия определяются из файла и соответствующее приложение удаляется из Application Center. Приложения должны быть указаны в одном из следующих форматов:

  • пакет@ОС@версия: позволяет удалить из Application Center конкретную версию. Убедитесь, что указана внутренняя, а не коммерческая версия приложения.
  • пакет@ОС: позволяет удалить из Application Center все версии приложения.
  • пакет: позволяет удалить из Application Center все версии приложения для всех операционных систем.

Пример

В этом примере пользователь demo имеет пароль demopassword. Следующая команда позволяет удалить приложение iOS demo.HelloWorld в внутренней версией 3.0.

java com.ibm.appcenter.Upload -delete -s http://localhost:9080 -c applicationcenter -u demo -p demopassword demo.HelloWorld@iOS@3.0

Очистка кэша LDAP с помощью автономного инструмента

С помощью автономного инструмента можно очистить кэш LDAP или применить в Application Center изменения, внесенные в пользователей и группы LDAP.

Если в Application Center настроен каталог LDAP, то изменения пользователей и групп на сервере LDAP отображаются в Application Center с задержкой. Application Center использует кэш данных LDAP и изменения становятся видимыми только после истечения срока действия кэша. По умолчанию задержка составляет 24 часа. С помощью автономного инструмента можно очистить кэш данных LDAP и сделать изменения пользователей и групп доступными в Application Center.

Для работы с автономным инструментом выполните следующие действия:

  1. Добавьте файлы applicationcenterdeploytool.jar и json4j.jar в путь к классам Java.
  2. Вызовите инструмент передачи из командной строки:

    java com.ibm.appcenter.Upload -clearLdapCache [параметры]
    

В командной строке можно указать следующие параметры.

Параметр Содержимое Описание
-s путь к серверу Путь к серверу Application Center.
-c контекст Контекст веб-приложения Application Center.
-u пользователь Имя пользователя для доступа к Application Center.
-p пароль Пароль пользователя.
-y   Выключает проверку безопасности SSL, чтобы разрешить публикацию на защищенных хостах без проверки сертификата SSL. Использование этого флага небезопасно, однако он упрощает тестирование локального хоста с временными собственными сертификатами SSL.

Пример

В этом примере пользователь demo имеет пароль demopassword.

java com.ibm.appcenter.Upload -clearLdapCache -s http://localhost:9080 -c applicationcenter -u demo -p demopassword

Задача Ant для передачи или удаления приложения

Инструменты передачи и удаления можно использовать в качестве задачи Ant в сценариях Ant.
Для выполнения этих задач требуется Apache Ant. Минимальная поддерживаемая версия Apache Ant указана в разделе Системные требования.

Для удобства Apache Ant 1.8.4 входит в состав MobileFirst Server. В каталоге product_install_dir/shortcuts/ расположены следующие сценарии:

  • ant для UNIX / Linux
  • ant.bat для Windows

Эти сценарии готовы к использованию и не требуют настройки переменных среды. Если задана переменная среды JAVA_HOME, то сценарии учитывают ее.

Если инструмент передачи применяется в качестве задачи Ant, используется имя класса com.ibm.appcenter.ant.UploadApps. Имя класса для задачи Ant удаления: com.ibm.appcenter.ant.DeleteApps.

Параметры задачи Ant Описание
serverPath Для подключения к Application Center. Значение по умолчанию: http://localhost:9080.
context Контекст Application Center. Значение по умолчанию: /applicationcenter.
loginUser Имя пользователя, обладающего правами на передачу приложения.
loginPass Пароль пользователя, обладающего правами на передачу приложения.
forceOverwrite Если указано значение true, задача Ant попытается заменить существующие приложения в Application Center. Этот параметр доступен только в случае передачи.
file Файл .apk или .ipa для передачи в Application Center или удаления из Application Center. Для этого параметра не предусмотрено значение по умолчанию.
fileset Позволяет передать или удалить несколько файлов.
application Имя пакета приложения; этот параметр доступен только в случае удаления.
os Операционная система приложения. (Например, Android или iOS.) Этот параметр доступен только в случае удаления.
version Внутренняя версия приложения; этот параметр доступен только в случае удаления. Не указывайте коммерческую версию, поскольку ее нельзя использовать в качестве идентификатора версии.

Пример

Расширенный пример доступен в каталоге ApplicationCenter/tools/build.xml.
Ниже приведен пример использования задачи Ant в сценарии Ant.

<?xml version="1.0" encoding="UTF-8"?>
<project name="PureMeapAntDeployTask" basedir="." default="upload.AllApps">

  <property name="install.dir" value="../../" />
  <property name="workspace.root" value="../../" />

<!-- Свойства сервера -->
  <property name="server.path" value="http://localhost:9080/" />
  <property name="context.path" value="applicationcenter" />
  <property name="upload.file" value="" />
  <property name="force" value="true" />

  <!--  Свойства идентификации -->
  <property name="login.user" value="appcenteradmin" />
  <property name="login.pass" value="admin" />
  <path id="classpath.run">
    <fileset dir="${install.dir}/ApplicationCenter/tools/">
      <include name="applicationcenterdeploytool.jar" />
      <include name="json4j.jar"/>
    </fileset>
  </path>
  <target name="upload.init">
    <taskdef name="uploadapps" classname="com.ibm.appcenter.ant.UploadApps">
      <classpath refid="classpath.run" />
    </taskdef>
  </target>
  <target name="upload.App" description="Uploads a single application" depends="upload.init">
    <uploadapps serverPath="${server.path}"
      context="${context.path}"
      loginUser="${login.user}"
      loginPass="${login.pass}"
      forceOverwrite="${force}"
      file="${upload.file}" />
    </target>
    <target name="upload.AllApps" description="Uploads all found APK and IPA files" depends="upload.init">
    <uploadapps serverPath="${server.path}"
      loginUser="${login.user}"
      loginPass="${login.pass}"
      forceOverwrite="${force}"
       context="${context.path}" >
      <fileset dir="${workspace.root}">
        <include name="**/*.ipa" />
      </fileset>
    </uploadapps>
  </target>
</project>

Этот пример сценария Ant расположен в каталоге tools. С его помощью можно передать в Application Center одно приложение.

ant upload.App -Dupload.file=sample.ipa

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

ant upload.AllApps -Dworkspace.root=myDirectory

Свойства примера сценария Ant

| Свойство | Комментарий | |———-|———| | install.dir | Значение по умолчанию: ../../ | | server.path | Значение по умолчанию: http://localhost:9080. | | context.path | Значение по умолчанию: applicationcenter. | | upload.file | Для этого свойства не предусмотрено значение по умолчанию. Укажите точный путь к файлу. | | workspace.root | Значение по умолчанию: ../../ | | login.user | Значение по умолчанию: appcenteradmin. | | login.pass | Значение по умолчанию: admin. | | force Значение по умолчанию: true. |

Для того чтобы указать эти параметры в командной строке при вызове Ant, добавьте -D перед именем свойства. Пример:

-Dserver.path=http://localhost:8888/
Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.
Last modified on August 17, 2020