InTouch Hub · Blue Isle Software

GitHub

Read and create GitHub issues, pull requests, releases and repository metadata via the GitHub REST API. Needs an API Key credential holding a personal access token.

Provided free and as is, without warranty of any kind — including merchantability, fitness for a particular purpose, and the accuracy or completeness of any result. See the licence. You are responsible for checking what this produces before relying on it.

developer-devopsdevopsgitissuesstatus

GitHub

Read and create GitHub data through the GitHub REST API — issues, pull requests, releases and repository metadata.

This is the read-and-triage member of the GitHub family. Its siblings do the writing: github-publish (files), github-release (releases and assets), github-repo (repository administration) and github-insights (traffic and popularity).

Use case

Open an issue automatically when a workflow fails, mail yourself the open issues each morning, or check what shipped in the last release — without leaving InTouch.

Setup

  1. Create a personal access token at https://github.com/settings/tokens. A fine-grained token scoped to the repositories you care about is the better choice; it needs Issues: read/write and Contents: read for the operations here. A classic token needs repo.
  2. Store it once: Credentials → New → API Key, name it (e.g. github-blueisle), paste the token as the secret.
  3. Name that credential on every github task: "credentialName": "github-blueisle".

There is no apiKey input. Version 2.0.0 removed it. A token typed into a workflow travels into that workflow's exports, its activity log and any repository it is committed to — the exact exposure a vault exists to prevent. The credential is the only way in.

Operations

operation what it does required
list-issues open/closed/all issues on a repository owner, repo
get-issue one issue with its body and labels owner, repo, issueNumber
create-issue open a new issue owner, repo, title
list-prs pull requests, filtered by state owner, repo
list-releases published releases, newest first owner, repo
get-repo repository metadata — default branch, visibility, counts owner, repo

state filters list-issues and list-prs: open (default), closed or all. labels attaches a comma-separated label list when creating an issue.

Pipeline

  1. run (python, github.py) — resolves the token from the bound credential, calls one REST endpoint, and publishes the response.

Publishes

Customization

Non-2xx responses are returned rather than raised, so a workflow can branch on status — a 404 from get-issue is data, not a failure. Transport failures do fail the step.

Source

tool.iml (definition) · github.py (implementation) · manifest.yaml (catalog entry)

Publishes

The keys a later task may reference as {{taskName.key}}. Referencing anything not listed here resolves to nothing at run time.

Input Properties

Every property this tool accepts, from its own tool.iml.

Property Type Required Default Description
operation string yes — One of: list-issues, get-issue, create-issue, list-prs, list-releases, get-repo
owner string no — Repository owner (user or org login), e.g. 'octocat'. Required for all operations.
repo string no — Repository name, e.g. 'hello-world'. Required for all operations.
issueNumber string no — Issue number — required for get-issue.
title string no — Issue title — required for create-issue.
labels string no — Comma-separated label names to attach when creating an issue — optional.
state string no open Filter for list-issues / list-prs: open, closed, or all. Defaults to open.