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

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/
Last modified on August 17, 2020