0

ここの例に従っています-> https://github.com/apache/camel-k-examples。取りかかっている05-knative-source-jira

この統合を実行すると、新しい jira 課題を問題なく読み取ってログに記録できます。チケットからの情報を使用しようとすると失敗したり、 jira addCommentプロデューサーでチケットに応答したりします。

オプションに静的なチケット番号を入力しようとしましたIssueKeyが、ビルド エラーが発生し、プロデューサーを実行することさえできません。

URIをいじってみました...

例: URI を -> に変更.to("jira://addComment?IssueKey=EQ-7")すると、ビルド時に以下が返されます

No signature of method: org.apache.camel.builder.ValueBuilder.to() is applicable for argument types: (String) values: [jira://addComment&IssueKey=EQ-7]

?と の両方でこれを試し&、同様の結果で URI にプロパティを追加しました。

かなり基本的なものが欠けているような気がするので、ドキュメントのポインタをいただければ幸いです。

完全な統合はこちら

// camel-k: language=groovy

from('knative:channel/jira')
  .unmarshal()
  .json()
  .log('Recieved:  ${body}')
  .to('direct:ticket')

from("direct:ticket")
  .setBody().simple("testing")
  .to("jira://addComment?IssueKey=EQ-7")
4

1 に答える 1

0

答えを見つけるのに十分なドキュメントを並べ替えることになりました。これを見つける可能性のある他の人のために(またはもう一度グーグルで検索した場合)、詳細を共有します。

鍵となったのは

a)課題キーに必要なヘッダーを設定します。ヘッダーの設定例

b) プロパティが正しく設定されていることを確認します。configmapを使用してプロパティを設定し、次に示すように URI で参照しました。これはDSLでも可能であると思いますが、URI を使用するのが最も簡単でした。

以下の機能統合。

from("direct:ticket")
  .setHeader("IssueKey").simple('${body["key"]}')
  .setBody().simple("We've recieved the ticket -- we'll update you soon!")
  .to("jira://addComment?jiraUrl={{url}}&consumerKey={{consumer_key}}&accessToken={{access_token}}&privateKey={{private_key}}&verificationCode={{verification_code}}")

于 2021-04-15T17:41:14.167 に答える