Как использовать параметр namePattern DeployIt в веб-службе хранилища / запроса
Я пытаюсь использовать REST API, предоставленный DeployIt (v3.9), чтобы получить список всех пакетов, доступных в данном проекте. Таким образом, я использую GET /repository/query service
Итак, я звоню в эту службу со следующим URL:
http://[server]/deployit/repository/query?namePattern=my-app&type=udm.DeploymentPackage
К сожалению, я ничего не получаю (просто пустой список).
Если я удалю namePattern
из моего URL я получаю длинный список всех приложений (не только тех, которые меня интересуют). Так что, похоже, я не правильно установил namePattern
приписывать. В документации говорится:
шаблон поиска по имени. Это похоже на шаблон SQL "LIKE": символ "%" представляет любую строку из нуля или более символов, а символ "_" (подчеркивание) представляет любой отдельный символ. Любое буквальное использование этих двух символов должно начинаться с обратной косой черты ('\'). Следовательно, любой буквенный экземпляр обратной косой черты также должен быть экранирован, что приводит к двойной обратной косой черте ('\').
Поэтому я попробовал следующий URL:
- http: // [server] /deployit/repository/query?type=udm.DeploymentPackage&namePattern=my-app: пустой список
- http://[server]/deployit/repository/query?type=udm.DeploymentPackage&namePattern=%my-app%: ошибка 400
- http: // [server] /deployit/repository/query?type=udm.DeploymentPackage&namePattern=%25my-app%25 (пытается экранировать символ%): пустой список
- http://[server]/deployit/repository/query?type=udm.DeploymentPackage&namePattern=Applications/my-app/2.0.0 (с реальной версией): ошибка, символ '/' недопустим.
- http: // [server] /deployit/repository/query?type=udm.DeploymentPackage&namePattern=2.0.0: я получаю список всех приложений, развернутых с версией
2.0.0
(включая мойmy-app
), но это не то, что я ищу (я хочу, чтобы все версии были доступны на DeployIt дляmy-app
).
Итак, какой правильный URL-адрес для получения списка развернутых приложений?
1 ответ
Я решил свою проблему. На самом деле, namePattern
применяется только к последней части имени приложения, то есть к версии. Таким образом, я должен использовать parent
атрибут для получения списка моего приложения:
http://[server]/deployit/repository/query?type=udm.DeploymentPackage&parent=Applications%2Fmy-app&resultsPerPage=-1