lenshq/github
Clone, push, and work with repositories, issues, pull requests, and packages on GitHub.
5.3k downloadsUpdated 19 days ago
apiVersion: lns.run/v1
kind: connector
name: github
spec:
description: Clone, push, and work with repositories, issues, pull requests, and packages on GitHub.
methods:
- auth:
clientId: Ov23li83DpXv5N3JGwzo
deviceAuthorizationEndpoint: https://github.com/login/device/code
help: Sign in with a code shown here and entered at github.com/login/device.
kind: oauth_device
scopeGroups:
- label: Access
name: access
options:
- label: Read your profile, organisations, public repositories, and packages
name: read-only
scopes:
- read:org
- read:user
- read:packages
- label: Clone and push private repositories, and read packages
name: read-write
scopes:
- repo
- read:org
- read:packages
tokenEndpoint: https://github.com/login/oauth/access_token
verificationHosts:
- github.com
credentials:
- envVar: GH_TOKEN
injections:
- domain: github.com
kind: basic_x_access_token
- domain: codeload.github.com
kind: basic_x_access_token
- domain: api.github.com
kind: token_header
- domain: uploads.github.com
kind: token_header
- domain: npm.pkg.github.com
kind: bearer_header
- domain: maven.pkg.github.com
kind: bearer_header
placeholder: gho_LNSPLACEHOLDER0000000000000000000000
egress:
http:
- description: git clone and push over HTTPS
match: github.com
tlsTerminate: true
verdict: allow
- description: the REST and GraphQL API, which `gh` calls
match: api.github.com
tlsTerminate: true
verdict: allow
- description: tarball and zipball downloads
match: codeload.github.com
tlsTerminate: true
verdict: allow
- description: release asset uploads
match: uploads.github.com
tlsTerminate: true
verdict: allow
- description: release assets and LFS objects
match: objects.githubusercontent.com
verdict: allow
- description: the npm package registry
match: npm.pkg.github.com
tlsTerminate: true
verdict: allow
- description: the maven package registry
match: maven.pkg.github.com
tlsTerminate: true
verdict: allow
label: GitHub account
name: device
- auth:
help: Create a classic token at github.com/settings/tokens with repo, read:org and read:packages scope.
kind: token
credentials:
- envVar: GH_TOKEN
injections:
- domain: github.com
kind: basic_x_access_token
- domain: codeload.github.com
kind: basic_x_access_token
- domain: api.github.com
kind: token_header
- domain: uploads.github.com
kind: token_header
- domain: npm.pkg.github.com
kind: bearer_header
- domain: maven.pkg.github.com
kind: bearer_header
placeholder: gho_LNSPLACEHOLDER0000000000000000000000
egress:
http:
- description: git clone and push over HTTPS
match: github.com
tlsTerminate: true
verdict: allow
- description: the REST and GraphQL API, which `gh` calls
match: api.github.com
tlsTerminate: true
verdict: allow
- description: tarball and zipball downloads
match: codeload.github.com
tlsTerminate: true
verdict: allow
- description: release asset uploads
match: uploads.github.com
tlsTerminate: true
verdict: allow
- description: release assets and LFS objects
match: objects.githubusercontent.com
verdict: allow
- description: the npm package registry
match: npm.pkg.github.com
tlsTerminate: true
verdict: allow
- description: the maven package registry
match: maven.pkg.github.com
tlsTerminate: true
verdict: allow
label: Personal access token
name: token
serves:
- github.com
- api.github.com
- codeload.github.com
- objects.githubusercontent.com
- uploads.github.com
- npm.pkg.github.com
- maven.pkg.github.com