apiVersion: camel.apache.org/v1 kind: Kamelet metadata: name: jira-update-issue-sink annotations: camel.apache.org/kamelet.support.level: "Stable" camel.apache.org/catalog.version: "4.10.2" camel.apache.org/kamelet.icon: "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjU2cHgiIGhlaWdodD0iMjU2cHgiIHZpZXdCb3g9IjAgMCAyNTYgMjU2IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIj4KICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iOTguMDMwODY3NSUiIHkxPSIwLjE2MDU5OTU3MiUiIHgyPSI1OC44ODc3MDYyJSIgeTI9IjQwLjc2NTUyNDYlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMwMDUyQ0MiIG9mZnNldD0iMTglIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMyNjg0RkYiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPGxpbmVhckdyYWRpZW50IHgxPSIxMDAuNjY1MjQ3JSIgeTE9IjAuNDU1MDMyMTIlIiB4Mj0iNTUuNDAxODA5NSUiIHkyPSI0NC43MjY5ODA3JSIgaWQ9ImxpbmVhckdyYWRpZW50LTIiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMDA1MkNDIiBvZmZzZXQ9IjE4JSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjY4NEZGIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPC9kZWZzPgogICAgPGc+CgkJCQk8cGF0aCBkPSJNMjQ0LjY1Nzc3OCwwIEwxMjEuNzA2NjY3LDAgQzEyMS43MDY2NjcsMTQuNzIwMTA0NiAxMjcuNTU0MjA1LDI4LjgzNzMxMiAxMzcuOTYyODkxLDM5LjI0NTk5NzcgQzE0OC4zNzE1NzcsNDkuNjU0NjgzNSAxNjIuNDg4Nzg0LDU1LjUwMjIyMjIgMTc3LjIwODg4OSw1NS41MDIyMjIyIEwxOTkuODU3Nzc4LDU1LjUwMjIyMjIgTDE5OS44NTc3NzgsNzcuMzY4ODg4OSBDMTk5Ljg3NzM5MSwxMDcuOTk0MTU1IDIyNC42OTkxNzgsMTMyLjgxNTk0MyAyNTUuMzI0NDQ0LDEzMi44MzU1NTYgTDI1NS4zMjQ0NDQsMTAuNjY2NjY2NyBDMjU1LjMyNDQ0NCw0Ljc3NTYyOTM0IDI1MC41NDg4MTUsMy42MDcyMjAwMWUtMTYgMjQ0LjY1Nzc3OCwwIFoiIGZpbGw9IiMyNjg0RkYiPjwvcGF0aD4KCQkJCTxwYXRoIGQ9Ik0xODMuODIyMjIyLDYxLjI2MjIyMjIgTDYwLjg3MTExMTEsNjEuMjYyMjIyMiBDNjAuODkwNzIzOCw5MS44ODc0ODg4IDg1LjcxMjUxMTIsMTE2LjcwOTI3NiAxMTYuMzM3Nzc4LDExNi43Mjg4ODkgTDEzOC45ODY2NjcsMTE2LjcyODg4OSBMMTM4Ljk4NjY2NywxMzguNjY2NjY3IEMxMzkuMDI1OTA1LDE2OS4yOTE5MjMgMTYzLjg2MzYwNywxOTQuMDk3ODAzIDE5NC40ODg4ODksMTk0LjA5Nzc3OCBMMTk0LjQ4ODg4OSw3MS45Mjg4ODg5IEMxOTQuNDg4ODg5LDY2LjAzNzg1MTYgMTg5LjcxMzI2LDYxLjI2MjIyMjIgMTgzLjgyMjIyMiw2MS4yNjIyMjIyIFoiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMSkiPjwvcGF0aD4KCQkJCTxwYXRoIGQ9Ik0xMjIuOTUxMTExLDEyMi40ODg4ODkgTDAsMTIyLjQ4ODg4OSBDMy43NTM5MTM2MmUtMTUsMTUzLjE0MTkyIDI0Ljg0OTE5MTMsMTc3Ljk5MTExMSA1NS41MDIyMjIyLDE3Ny45OTExMTEgTDc4LjIyMjIyMjIsMTc3Ljk5MTExMSBMNzguMjIyMjIyMiwxOTkuODU3Nzc4IEM3OC4yNDE3NjcsMjMwLjQ1NTMyIDEwMy4wMjAyODUsMjU1LjI2NTY0NyAxMzMuNjE3Nzc4LDI1NS4zMjQ0NDQgTDEzMy42MTc3NzgsMTMzLjE1NTU1NiBDMTMzLjYxNzc3OCwxMjcuMjY0NTE4IDEyOC44NDIxNDgsMTIyLjQ4ODg4OSAxMjIuOTUxMTExLDEyMi40ODg4ODkgWiIgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC0yKSI+PC9wYXRoPgoJCTwvZz4KPC9zdmc+Cg==" camel.apache.org/provider: "Apache Software Foundation" camel.apache.org/kamelet.group: "JIRA" camel.apache.org/kamelet.namespace: "JIRA" labels: camel.apache.org/kamelet.type: "sink" spec: definition: title: "Jira Update Issue Sink" description: |- Update fields of an existing issue in Jira. The Kamelet expects the following headers to be set: - `issueKey` / `ce-issueKey`: as the issue code in Jira. - `issueTypeName` / `ce-issueTypeName`: as the name of the issue type (example: Bug, Enhancement). - `issueSummary` / `ce-issueSummary`: as the title or summary of the issue. - `issueAssignee` / `ce-issueAssignee`: as the user assigned to the issue (Optional). - `issuePriorityName` / `ce-issuePriorityName`: as the priority name of the issue (example: Critical, Blocker, Trivial) (Optional). - `issueComponents` / `ce-issueComponents`: as list of string with the valid component names (Optional). - `issueDescription` / `ce-issueDescription`: as the issue description (Optional). The issue description can be set from the body of the message or the `issueDescription`/`ce-issueDescription` in the header, however the body takes precedence. To authenticate a username/password or personal token must be defined. We recommend to use personal token as it is a safer way to get access to Jira. required: - jiraUrl type: object properties: jiraUrl: title: Jira URL description: The URL of your instance of Jira type: string example: http://my_jira.com:8081 username: title: Username description: The username to access Jira type: string x-descriptors: - urn:camel:group:credentials password: title: Password description: The password to access Jira type: string format: password x-descriptors: - urn:camel:group:credentials personal-token: title: Personal Token description: Personal Token type: string x-descriptors: - urn:camel:group:credentials types: in: mediaType: application/json dependencies: - "camel:core" - "camel:jackson" - "camel:jira" - "camel:kamelet" - "mvn:com.fasterxml.jackson.datatype:jackson-datatype-joda:2.12.5" template: from: uri: "kamelet:source" steps: - choice: when: - simple: "${header[ce-issueKey]}" steps: - setHeader: name: issueKey simple: "${header[ce-issueKey]}" - choice: when: - simple: "${header[ce-issueTypeName]}" steps: - setHeader: name: issueTypeName simple: "${header[ce-issueTypeName]}" - choice: when: - simple: "${header[ce-issueSummary]}" steps: - setHeader: name: issueSummary simple: "${header[ce-issueSummary]}" - choice: when: - simple: "${header[ce-issueAssignee]}" steps: - setHeader: name: issueAssignee simple: "${header[ce-issueAssignee]}" - choice: when: - simple: "${header[ce-issuePriorityName]}" steps: - setHeader: name: issuePriorityName simple: "${header[ce-issuePriorityName]}" - choice: when: - simple: "${header[ce-issueComponents]}" steps: - setHeader: name: issueComponents simple: "${header[ce-issueComponents]}" - choice: when: - simple: "${header[ce-issueDescription]}" steps: - setHeader: name: issueDescription simple: "${header[ce-issueDescription]}" - to: uri: "jira:UpdateIssue" parameters: jiraUrl: "{{jiraUrl}}" username: "{{?username}}" password: "{{?password}}" accessToken: "{{?personal-token}}"