You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| `JIRA_PROJECT` | Specifies the Jira project to synchronize with. | Mandatory |
178
-
| `JIRA_ISSUE_TYPE` | Specifies the JIRA issue type for new issues. Defaults to "Task" if not set. | Optional |
179
-
| `JIRA_COMPONENT` | The name of a JIRA component to add to every synced issue. The component must exist in JIRA. | Optional |
180
-
| `WEBHOOK_URL` | URL to be called after successful action | Optional |
181
-
| `JIRA_URL` | The main URL of your JIRA instance. | Inherited |
182
-
| `JIRA_USER` | The username used for logging into JIRA (basic auth). | Inherited |
183
-
| `JIRA_PASS` | The JIRA token (for token auth) or password (for basic auth) used for logging in. | Inherited |
184
-
185
-
- **GitHub Organizational Secrets**: `JIRA_URL`, `JIRA_USER`, `JIRA_PASS` - These secrets are **inherited from the GitHub organizational secrets, as they are common to all projects within the organization**.
| `JIRA_PROJECT` | Specifies the Jira project to synchronize with. | Mandatory |
178
+
| `JIRA_ISSUE_TYPE` | Specifies the JIRA issue type for new issues. Defaults to "Task" if not set. | Optional |
179
+
| `JIRA_COMPONENT` | The name of a JIRA component to add to every synced issue. The component must exist in JIRA. | Optional |
180
+
| `WEBHOOK_URL` | URL to be called after successful action | Optional |
181
+
| `JIRA_URL` | The main URL of your JIRA instance. | Inherited |
182
+
| `JIRA_USER` | The username used for logging into JIRA (basic auth). | Inherited |
183
+
| `JIRA_PASS` | The JIRA token (for token auth) or password (for basic auth) used for logging in. | Inherited |
184
+
| `GITHUB_ORG_READ_TOKEN` | GitHub PAT with `read:org` scope. Required to skip PRs from org members whose membership is **private**. Without it, those PRs are incorrectly synced to Jira. | Inherited |
185
+
186
+
- **GitHub Organizational Secrets**: `JIRA_URL`, `JIRA_USER`, `JIRA_PASS`, `SYNC_JIRA_ORG_READ_TOKEN` - These secrets are **inherited from the GitHub organizational secrets, as they are common to all projects within the organization**.
187
+
188
+
> \[!NOTE\]
189
+
> `SYNC_JIRA_ORG_READ_TOKEN` is a one-time org-level setup: create a Classic PAT with `read:org` scope on a service account, store it at [github.com/organizations/espressif/settings/secrets/actions](https://github.com/organizations/espressif/settings/secrets/actions) (access: *All repositories*), then add `GITHUB_ORG_READ_TOKEN: ${{ secrets.SYNC_JIRA_ORG_READ_TOKEN }}` to the `env:` block in each repo's `sync-jira.yml`.
186
190
187
191
> \[!WARNING\]
188
192
> Do not to set secrets at the individual repository level to avoid conflicts and ensure a unified configuration across all projects.
Copy file name to clipboardExpand all lines: action.yml
+1Lines changed: 1 addition & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -69,6 +69,7 @@ runs:
69
69
python sync_jira_actions/sync_to_jira.py
70
70
env:
71
71
GITHUB_TOKEN: ${{ env.GITHUB_TOKEN }} # Needs to be passed from caller workflow; by ENV (secure), not by input
72
+
GITHUB_ORG_READ_TOKEN: ${{ env.GITHUB_ORG_READ_TOKEN }} # Optional PAT with read:org scope; required to detect private org membership (GITHUB_TOKEN lacks this scope)
72
73
JIRA_PASS: ${{ env.JIRA_PASS }} # Needs to be passed from caller workflow; by ENV (secure), not by input
73
74
JIRA_URL: ${{ env.JIRA_URL }} # Needs to be passed from caller workflow; by ENV (secure), not by input
74
75
JIRA_USER: ${{ env.JIRA_USER }} # Needs to be passed from caller workflow; by ENV (secure), not by input
0 commit comments