Я могу развернуть Apigee на моей локальной машине, но когда я пытаюсь сделать это из коробки Jenkins, которая живет в AWS, я получаю странную ошибку: «Строка \» - \ не допускается в комментариях «.Развертывание Apigee в окне Jenkins в AWS - как я могу исправить ошибку, «Строка " - "недопустима в комментариях. '?
Вот полная ошибка:
XMLFileListUtil:140
=============Searching for XML files in the following directory ================
/var/lib/jenkins/jobs/company-apigee-proxy-deploy-nonprod/workspace/deploy/company-apigee-ourproxy/target/apiproxy/proxies
00:14:03,571 DEBUG XMLFileListUtil:144 - =============Nuber of files found is================
1
00:14:03,771 INFO FileReader:71 - ============= Reading the config file located at ================
/var/lib/jenkins/jobs/company-apigee-proxy-deploy-nonprod/workspace/deploy/company-apigee-ourproxy/config.json
00:14:03,817 ERROR ConfigureMojo:124 - The string \"--\" is not permitted within comments.
погуглить для этого сообщения об ошибке просто показывает кучу людей, которые имеют «-» в комментариях XML, которые я делаю не так. (Я исчерпывающе просматривал все файлы, где он мог бы использовать полный текст поиска «найти в пути» в IntelliJ. В некоторых файлах есть некоторые обычные комментарии XML, но в комментарии отсутствуют «случаи».)
анзибль код я использую, чтобы пнуть скрипт, который инициирует Apigee развертывания является:
- name: execute deploy.sh script
command: bash -lc "bash deploy.sh"
register: deploy_script_output
args:
chdir: "{{ deploy_subdir }}"
Я попытался несколько вариаций на это тоже, как с помощью «оболочки:» и «сценарий:» но, похоже, не имеет значения.
.xml в файл, он жалуется на это:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TargetEndpoint name="ourproxy">
<Description/>
<FaultRules>
<FaultRule name="handleTargetErrors">
#common_code#
</FaultRule>
</FaultRules>
<PreFlow name="PreFlow">
<Request/>
<Response/>
</PreFlow>
<PostFlow name="PostFlow">
<Request/>
<Response/>
</PostFlow>
<Flows/>
<HTTPTargetConnection>
<SSLInfo>
<Enabled>true</Enabled>
<ClientAuthEnabled>true</ClientAuthEnabled>
<KeyStore>FROM CONFIG.JSON</KeyStore>
<KeyAlias>FROM CONFIG.JSON</KeyAlias>
</SSLInfo>
<URL>FROM CONFIG.JSON</URL>
</HTTPTargetConnection>
</TargetEndpoint>
«# common_code #» является «фрагмент», который принес в динамически с помощью плагина Apigee из других и имеет это в нем:
<Step>
<Name>am_common_redacted</Name>
</Step>
<Step>
<Name>am_common_redacted</Name>
</Step>
<Step>
<Name>am_common_redacted</Name>
</Step>
<Step>
<Name>am_common_redacted</Name>
</Step>
<Step>
<Name>am_common_redacted</Name>
</Step>
<Step>
<Name>am_common_redacted</Name>
</Step>
<Step>
<Name>am_common_redacted</Name>
</Step>
<Step>
<Name>am_common_redacted</Name>
</Step>
<Step>
<Name>am_common_redacted</Name>
</Step>
<Step>
<Name>am_common_redacted</Name>
</Step>
<Step>
<Name>am_common_redacted</Name>
</Step>
Я просмотрел все мои файлы .XML и .JSON для «-», где этого не должно быть, но я не могу его найти.
Что действительно странно, когда я запускаю сценарий развертывания на своей локальной машине, он работает, и это действительно заставляет меня сомневаться, что это проблема с содержимым файлов. Это какая-то странная причина для окружающей среды.
У кого-нибудь есть идеи? Я полностью озадачен этим.
Можете ли вы преднамеренно добавить комментарий к своему XML с помощью '--' внутри, а затем проверить, не получится ли такая же ошибка в том же месте в журнале при запуске на вашем локальном компьютере (где обычно это удается)? – techraf
Это отличная идея. Я попробую это. –
Я попробовал. Он не удался локально. Я получил ошибку «-». Я помещаю «-» внутри комментария XML. Хм, может быть, мне нужно еще больше размахивать файлами. Может быть, вычеркнуть каждое из комментариев XML-комментария. Все они выглядели хорошо сформированными для меня, но, возможно, они есть. Я буду рыть. –