pontos.github.models package #

Artifact#

class pontos.github.models.artifact.Artifact(id, node_id, name, size_in_bytes, url, archive_download_url, expired, created_at=None, expires_at=None, updated_at=None, workflow_run=None)#

A GitHub Artifact model

id#

ID of the artifact

Type:

int

node_id#

Node ID of the artifact

Type:

str

name#

Name of the artifact

Type:

str

size_in_bytes#

The size (in bytes) of the artifact

Type:

int

url#

REST API URL of the artifact

Type:

str

archive_download_url#

URL to download the artifact

Type:

str

expired#

True if the artifact has expired

Type:

bool

created_at#

Creation date of the artifact

Type:

Optional[datetime.datetime]

expires_at#

Expiration date of the artifact

Type:

Optional[datetime.datetime]

update_at#

Last modification date of the artifact

workflow_run#

Corresponding GitHub workflow run

Type:

Optional[pontos.github.models.artifact.ArtifactWorkflowRun]

class pontos.github.models.artifact.ArtifactWorkflowRun(id, repository_id, head_repository_id, head_branch, head_sha)#

The workflow run that uploaded the artifact

id#

ID of the workflow run

Type:

int

repository_id#

ID of the corresponding repository

Type:

int

head_repository_id#
Type:

int

head_branch#

Corresponding branch name

Type:

str

head_sha#

Commit ID of the head of the corresponding branch

Type:

str

Base#

class pontos.github.models.base.App(id, slug, node_id, owner, name, description, external_url, html_url, created_at, updated_at, events)#

GitHub app

id#

ID of the app

Type:

int

slug#

Name slug of the app

Type:

str

node_id#

Node ID of the app

Type:

str

owner#

Owner (user) of the app

Type:

pontos.github.models.base.User

name#

Name of the app

Type:

str

description#

Description of the app

Type:

str

external_url#

External URL

Type:

str

html_url#

URL to the web page of the app

Type:

str

created_at#

Creation date

Type:

str

updated_at#

Last modification date

Type:

str

events#

List of events

Type:

List[str]

class pontos.github.models.base.Event(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

A GitHub event type

https://docs.github.com/de/actions/using-workflows/events-that-trigger-workflows

BRANCH_PROTECTION_RULE#
CHECK_RUN#
CHECK_SUITE#
CREATE#
DELETE#
DEPLOYMENT#
DEPLOYMENT_STATUS#
DISCUSSION#
DISCUSSION_COMMENT#
FORK#
GOLLUM#
ISSUE_COMMENT#
ISSUES#
LABEL#
MERGE_GROUP#
MILESTONE#
PAGE_BUILD#
PROJECT#
PROJECT_CARD#
PROJECT_COLUMN#
PUBLIC#
PULL_REQUEST#
PULL_REQUEST_COMMENT#
PULL_REQUEST_REVIEW#
PULL_REQUEST_REVIEW_COMMENT#
PULL_REQUEST_TARGET#
PUSH#
REGISTRY_PACKAGE#
RELEASE#
REPOSITORY_DISPATCH#
SCHEDULE#
STATUS#
WATCH#
WORKFLOW_CALL#
WORKFLOW_DISPATCH#
WORKFLOW_RUN#
class pontos.github.models.base.FileStatus(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

File status

ADDED#

File is added

DELETED#

File is deleted

MODIFIED#

File is modified

RENAMED#

File is renamed

COPIED#

File is copied

CHANGED#

File is changed

UNCHANGED#

File is unchanged

class pontos.github.models.base.GitHubModel#

Base class for all GitHub models

class pontos.github.models.base.Permission(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Permissions on a repository/project at GitHub

https://docs.github.com/en/organizations/managing-user-access-to-your-organizations-repositories/repository-roles-for-an-organization

PULL#

Read permissions

PUSH#

Write permissions

TRIAGE#

Triage permissions

MAINTAIN#

Maintainer permissions

ADMIN#

Admin permissions (full access to the project)

class pontos.github.models.base.SortOrder(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Sort order: asc or desc

ASC#

Use ascending sort order

DESC#

Use descending sort order

class pontos.github.models.base.Team(id, node_id, url, html_url, name, slug, description, privacy, permission, members_url, repositories_url, parent=None)#

A GitHub Team model

id#

ID of the team

Type:

int

node_id#

Node ID of the team

Type:

str

url#

REST API URL for the team

Type:

str

html_url#

Web URL for the team

Type:

str

name#

Name of the team

Type:

str

slug#

Slug of the team name

Type:

str

description#

Description of the team

Type:

str

privacy#

Privacy scope of the team

Type:

pontos.github.models.base.TeamPrivacy

permission#

Permissions of the teams

Type:

pontos.github.models.base.Permission

members_url#

REST API URL to the members of the team

Type:

str

repositories_url#

REST API URL to the repositories of the team

Type:

str

parent#

An optional parent team

Type:

Optional[pontos.github.models.base.Team]

class pontos.github.models.base.TeamPrivacy(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Team privacy

SECRET#

A secret team

CLOSED#

A closed team

class pontos.github.models.base.TeamRole(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

A user’s role withing a team

MEMBER#

The user is a “normal” member

MAINTAINER#

The user is an admin of the team

class pontos.github.models.base.User(login, id, node_id, avatar_url, gravatar_id, url, html_url, followers_url, following_url, gists_url, starred_url, subscriptions_url, organizations_url, repos_url, events_url, received_events_url, type, site_admin)#

A GitHub user model

login#

The user login name

Type:

str

id#

The user ID

Type:

int

node_id#

The user node ID

Type:

str

avatar_url#

URL to the avatar image

Type:

str

gravatar_url#

URL to the gravatar avatar image

html_url#

URL to the users public profile

Type:

str

followers_url#

URL to the followers

Type:

str

following_url#

URL to users that the user if following

Type:

str

gists_url#

URL to the user’s gists

Type:

str

starred_url#

URL to the starred repositories of the user

Type:

str

subscriptions_url#

URL to the subscriptions

Type:

str

organizations_url#

URL to the user’s organizations

Type:

str

repos_url#

URL to the user’s repositories

Type:

str

events_url#

URL to the events

Type:

str

received_events_url#

URL to the received events

Type:

str

type#

The user’s type

Type:

str

site_admin#

True if the user is a site admin

Type:

bool

Branch#

class pontos.github.models.branch.BranchProtection(url, required_status_checks=None, required_pull_request_reviews=None, restrictions=None, enforce_admins=None, required_linear_history=None, allow_force_pushes=None, allow_deletions=None, block_creations=None, required_conversation_resolution=None, lock_branch=None, allow_fork_syncing=None, required_signatures=None)#

GitHub branch protection information

url#

URL to the branch protection rules

Type:

str

required_status_checks#

Required status check for the matching branches

Type:

Optional[pontos.github.models.branch.RequiredStatusChecks]

required_pull_request_reviews#

Required pull request reviews for the matching branches.

Type:

Optional[pontos.github.models.branch.RequiredPullRequestReviews]

restrictions#

Restrictions who can push to the matching branches.

Type:

Optional[pontos.github.models.branch.Restrictions]

enforce_admins#

Enforce the rules also for user in a admin role.

Type:

Optional[pontos.github.models.branch.BranchProtectionFeature]

required_linear_history#

Require a linear history before merging. Restricts merging if the matching branch is out of date.

Type:

Optional[pontos.github.models.branch.BranchProtectionFeature]

allow_force_pushes#

Allow force pushes to the matching branches.

Type:

Optional[pontos.github.models.branch.BranchProtectionFeature]

allow_deletions#

Allow to delete the matching branches.

Type:

Optional[pontos.github.models.branch.BranchProtectionFeature]

block_creations#

Restrict pushes that create matching branches.

Type:

Optional[pontos.github.models.branch.BranchProtectionFeature]

required_conversation_resolution#

Require conversation resolution before merging.

Type:

Optional[pontos.github.models.branch.BranchProtectionFeature]

lock_branch#

Mark matching branches as read-only. Users cannot push to matching branches.

Type:

Optional[pontos.github.models.branch.BranchProtectionFeature]

allow_fork_syncing#

Whether users can pull changes from upstream when the matching branch is locked.

Type:

Optional[pontos.github.models.branch.BranchProtectionFeature]

required_signatures#

Require git commit signatures.

Type:

Optional[pontos.github.models.branch.BranchProtectionFeature]

class pontos.github.models.branch.BranchProtectionFeature(enabled, url=None)#

GitHub branch protection feature setting

enable#

True if the feature is enabled

url#

REST API URL to change the feature

Type:

Optional[str]

class pontos.github.models.branch.BypassPullRequestAllowances(users, teams, apps)#

Settings to allow users, teams and apps to bypass pull request reviews

user#

List of user allowed to bypass required pull request reviews

teams#

List of teams allowed to bypass required pull request reviews

Type:

List[pontos.github.models.base.Team]

apps#

List of apps allowed to bypass required pull request reviews

Type:

List[pontos.github.models.base.App]

class pontos.github.models.branch.DismissalRestrictions(url, users_url, teams_url, users, teams, apps)#

Settings to only allow specific users, teams and apps to dismiss pull request reviews

url#

URL to the dismissal restrictions

Type:

str

users_url#

URL to the users of the dismissal restrictions

Type:

str

teams_url#

URL to the teams of the dismissal restrictions

Type:

str

users#

List of user allowed to dismiss pull request reviews

Type:

List[pontos.github.models.base.User]

teams#

List of teams allowed to dismiss pull request reviews

Type:

List[pontos.github.models.base.Team]

apps#

List of apps allowed to dismiss pull request reviews

Type:

List[pontos.github.models.base.App]

class pontos.github.models.branch.Restrictions(url, users_url, teams_url, apps_url, users, teams, apps)#

Branch protection push restrictions

url#

URL to the restrictions

Type:

str

users_url#

URL to the users of the restrictions

Type:

str

teams_url#

URL to the teams of the restrictions

Type:

str

apps_url#

URL to the apps of the restrictions

Type:

str

users#

List of restricted users

Type:

List[pontos.github.models.base.User]

teams#

List of restricted teams

Type:

List[pontos.github.models.base.Team]

apps#

List of restricted apps

Type:

List[pontos.github.models.base.App]

class pontos.github.models.branch.RequiredStatusChecks(url, strict, checks, enforcement_level=None)#

Required status checks settings of a branch protection

url#

URL to the required status checks

Type:

str

strict#

True to require status checks to pass before merging

Type:

bool

checks#

List of status checks

Type:

List[pontos.github.models.branch.StatusCheck]

enforcement_level#

Enforcement level of the required status checks

Type:

Optional[str]

class pontos.github.models.branch.StatusCheck(context, app_id=None)#

Status check

context#
Type:

str

app#

App ID as the source of the status check

class pontos.github.models.branch.RequiredPullRequestReviews(url, dismiss_stale_reviews, require_code_owner_reviews, required_approving_review_count, require_last_push_approval, dismissal_restrictions=None, bypass_pull_request_allowances=None)#

Requires pull request review settings of a branch protection

url#

URL to the required pull request reviews

Type:

str

dismiss_stale_reviews#

Dismiss stale reviews

Type:

bool

require_code_owner_reviews#

Require reviews by code owners

Type:

bool

required_approving_review_count#

Number of approvals required

Type:

int

require_last_push_approval#

Require to approve the last push

Type:

bool

dismissal_restrictions#

Restrictions for who can dismiss pull request reviews

Type:

Optional[pontos.github.models.branch.DismissalRestrictions]

bypass_pull_request_allowances#

Settings for allowing bypassing the required pull request reviews

Type:

Optional[pontos.github.models.branch.BypassPullRequestAllowances]

Organization#

class pontos.github.models.organization.CodeOfConduct(url, key, name, html_url)#

Code of Conduct

url#

URL to the code of conduct

Type:

str

key#

Key of the code of conduct

Type:

str

name#

Name of the code of conduct

Type:

str

html_url#

URL to the web page of the code of conduct

Type:

str

class pontos.github.models.organization.GitIgnoreTemplate(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Just a small part of the available gitignore templates at https://github.com/github/gitignore

C#

Template for C

CPP#

Template for C++

CMAKE#

Template for CMake

GO#

Template for Golang

JAVA#

Template for Java

MAVEN#

Template for maven

NODE#

Template for Nodejs

PYTHON#

Template for Python

RUST#

Template for Rust

class pontos.github.models.organization.InvitationRole(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

A invitation role

ADMIN#

Admin only

DIRECT_MEMBER#

Direct member only

BILLING_MANAGER#

Billing manager only

class pontos.github.models.organization.License(key, name, node_id, url=None, spdx_id=None, html_url=None)#

Software License

key#

Key of the license

Type:

str

name#

Name of the license

Type:

str

node_id#

Node ID of the license

Type:

str

url#

URL to the license

Type:

Optional[str]

spdx_id#

SPDX ID of the license

Type:

Optional[str]

html_url#

URL to the web page of the license

Type:

Optional[str]

class pontos.github.models.organization.LicenseType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

License Type

ACADEMIC_FREE_LICENSE_3_0#

afl-3.0

APACHE_LICENSE_2_0#

apache-2.0

ARTISTIC_LICENSE_2_0#

artistic-2.0

BOOST_SOFTWARE_LICENSE_1_0#

bsl-1.0

BSD_2_CLAUSE_SIMPLIFIED_LICENSE#

bsd-2-clause

BSD_3_CLAUSE_NEW_OR_REVISED_LICENSE#

bsd-3-clause

BSD_3_CLAUSE_CLEAR_LICENSE#

bsd-3-clause-clear

CREATIVE_COMMONS_LICENSE_FAMILY#

cc

CREATIVE_COMMONS_ZERO_1_0_UNIVERSAL#

cc0-1.0

CREATIVE_COMMONS_ATTRIBUTION_4_0#

cc-by-4.0

CREATIVE_COMMONS_ATTRIBUTION_SHARE_ALIKE_4_0#

cc-by-sa-4.0

DO_WHAT_THE_F_CK_YOU_WANT_TO_PUBLIC_LICENSE#

wtfpl

EDUCATIONAL_COMMUNITY_LICENSE_2_0#

ecl-2.0

ECLIPSE_PUBLIC_LICENSE_1_0#

epl-1.0

ECLIPSE_PUBLIC_LICENSE_2_0#

epl-2.0

EUROPEAN_UNION_PUBLIC_LICENSE_1_1#

eupl-1.1

GNU_AFFERO_GENERAL_PUBLIC_LICENSE_3_0#

agpl-3.0

GNU_GENERAL_PUBLIC_LICENSE_FAMILY#

gpl

GNU_GENERAL_PUBLIC_LICENSE_2_0#

gpl-2.0

GNU_GENERAL_PUBLIC_LICENSE_3_0#

gpl-3.0

GNU_LESSER_GENERAL_PUBLIC_LICENSE_FAMILY#

lgpl

GNU_LESSER_GENERAL_PUBLIC_LICENSE_2_1#

lgpl-2.1

GNU_LESSER_GENERAL_PUBLIC_LICENSE_3_0#

lgpl-3.0

ISC#

isc

LATEX_PROJECT_PUBLIC_LICENSE_1_3C_L#

ppl-1.3c

MICROSOFT_PUBLIC_LICENSE#

ms-pl

MIT#

mit

MOZILLA_PUBLIC_LICENSE_2_0#

mpl-2.0

OPEN_SOFTWARE_LICENSE_3_0#

osl-3.0

POSTGRESQL_LICENSE#

postgresql

SIL_OPEN_FONT_LICENSE_1_1#

ofl-1.1

UNIVERSITY_OF_ILLINOIS_NCSA_OPEN_SOURCE_LICENSE#

ncsa

THE_UNLICENSE#

unlicense

ZLIB_LICENSE#

zlib

class pontos.github.models.organization.MemberFilter(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

A member filter

TWO_FA_DISABLED#

Members with 2 factor authentication disabled

ALL#

All members

class pontos.github.models.organization.MemberRole(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

A member role

ALL#

All roles

ADMIN#

Admin only

MEMBER#

Member only

class pontos.github.models.organization.MergeCommitMessage(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Merge commit message setting

PR_BODY#

Use pull request body

PR_TITLE#

Use pull request title

BLANK#

Leave it blank

class pontos.github.models.organization.MergeCommitTitle(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Merge commit title

PR_TITLE#

Use pull request title

MERGE_MESSAGE#

Use provided merge commit message

class pontos.github.models.organization.Organization(avatar_url, events_url, followers_url, following_url, gists_url, html_url, id, login, node_id, organizations_url, received_events_url, repos_url, site_admin, starred_url, subscriptions_url, type, url, email=None, gravatar_id=None, name=None, starred_at=None)#

A GitHub organization

avatar_url#

URL to the avatar image

Type:

str

events_url#

URL to the events

Type:

str

followers_url#

URL to the followers

Type:

str

following_url#

URL to users which the organization is following

Type:

str

gists_url#

URL to gists of the organization

Type:

str

html_url#

URL to the web page of the organization

Type:

str

id#

ID of the organization

Type:

int

login#

Login name of the organization

Type:

str

node_id#

Node ID of the organization

Type:

str

organizations_url#

URL to the organization

Type:

str

received_events_url#

URL to the received events

Type:

str

repos_url#

URL to the list of repositories

Type:

str

site_admin#
Type:

bool

starred_url#

URL to the list of starring users

Type:

str

subscriptions_url#
Type:

str

type#

Type of the organization

Type:

str

url#

URL to the organization

Type:

str

email#

Email address

Type:

Optional[str]

gravatar_id#

ID of the connected gravatar account

Type:

Optional[str]

name#

Name of the organization

Type:

Optional[str]

starred_at#
Type:

Optional[datetime.datetime]

class pontos.github.models.organization.Repository(archive_url, assignees_url, blobs_url, branches_url, collaborators_url, comments_url, commits_url, compare_url, contents_url, contributors_url, deployments_url, downloads_url, events_url, fork, forks_url, full_name, git_commits_url, git_refs_url, git_tags_url, hooks_url, html_url, id, issue_comment_url, issue_events_url, issues_url, keys_url, labels_url, languages_url, merges_url, milestones_url, name, node_id, notifications_url, owner, private, pulls_url, releases_url, stargazers_url, statuses_url, subscribers_url, subscription_url, tags_url, teams_url, trees_url, url, allow_auto_merge=None, allow_forking=None, allow_merge_commit=None, allow_rebase_merge=None, allow_squash_merge=None, allow_update_branch=None, anonymous_access_enabled=None, archived=None, clone_url=None, code_of_conduct=None, created_at=None, default_branch=None, delete_branch_on_merge=None, description=None, disabled=None, forks_count=None, forks=None, git_url=None, has_discussions=None, has_downloads=None, has_issues=None, has_pages=None, has_projects=None, has_wiki=None, homepage=None, is_template=None, language=None, license=None, merge_commit_title=None, merge_commit_message=None, mirror_url=None, network_count=None, open_issues_count=None, open_issues=None, organization=None, permissions=None, pushed_at=None, security_and_analysis=None, size=None, ssh_url=None, stargazers_count=None, subscribers_count=None, svn_url=None, squash_merge_commit_message=None, squash_merge_commit_title=None, temp_clone_token=None, topics=<factory>, updated_at=None, use_squash_pr_title_as_default=None, visibility=None, watchers_count=None, watchers=None, web_commit_signoff_required=None)#

A GitHub repository model

archive_url#
Type:

str

assignees_url#
Type:

str

blobs_url#
Type:

str

branches_url#
Type:

str

collaborators_url#
Type:

str

comments_url#
Type:

str

commits_url#
Type:

str

compare_url#
Type:

str

contents_url#
Type:

str

contributors_url#
Type:

str

deployments_url#
Type:

str

downloads_url#
Type:

str

events_url#
Type:

str

fork#
Type:

bool

forks_url#
Type:

str

full_name#
Type:

str

git_commits_url#
Type:

str

git_refs_url#
Type:

str

git_tags_url#
Type:

str

hooks_url#
Type:

str

html_url#
Type:

str

id#
Type:

int

issue_comment_url#
Type:

str

issue_events_url#
Type:

str

issues_url#
Type:

str

keys_url#
Type:

str

labels_url#
Type:

str

languages_url#
Type:

str

merges_url#
Type:

str

milestones_url#
Type:

str

name#
Type:

str

node_id#
Type:

str

notifications_url#
Type:

str

owner#
Type:

pontos.github.models.base.User

private#
Type:

bool

pulls_url#
Type:

str

releases_url#
Type:

str

stargazers_url#
Type:

str

statuses_url#
Type:

str

subscribers_url#
Type:

str

subscription_url#
Type:

str

tags_url#
Type:

str

teams_url#
Type:

str

trees_url#
Type:

str

url#
Type:

str

allow_auto_merge#
Type:

Optional[bool]

allow_forking#
Type:

Optional[bool]

allow_merge_commit#
Type:

Optional[bool]

allow_rebase_merge#
Type:

Optional[bool]

allow_squash_merge#
Type:

Optional[bool]

allow_update_branch#
Type:

Optional[bool]

anonymous_access_enabled#
Type:

Optional[bool]

archived#
Type:

Optional[bool]

clone_url#
Type:

Optional[str]

code_of_conduct#
Type:

Optional[pontos.github.models.organization.CodeOfConduct]

created_at#
Type:

Optional[datetime.datetime]

default_branch#
Type:

Optional[str]

delete_branch_on_merge#
Type:

Optional[bool]

description#
Type:

Optional[str]

disabled#
Type:

Optional[bool]

forks_count#
Type:

Optional[int]

forks#
Type:

Optional[int]

git_url#
Type:

Optional[str]

has_discussions#
Type:

Optional[bool]

has_downloads#
Type:

Optional[bool]

has_issues#
Type:

Optional[bool]

has_pages#
Type:

Optional[bool]

has_projects#
Type:

Optional[bool]

has_wiki#
Type:

Optional[bool]

homepage#
Type:

Optional[str]

is_template#
Type:

Optional[bool]

language#
Type:

Optional[str]

license#
Type:

Optional[pontos.github.models.organization.License]

merge_commit_title#
Type:

Optional[pontos.github.models.organization.MergeCommitTitle]

merge_commit_message#
Type:

Optional[pontos.github.models.organization.MergeCommitMessage]

mirror_url#
Type:

Optional[str]

network_count#
Type:

Optional[int]

open_issues_count#
Type:

Optional[int]

open_issues#
Type:

Optional[int]

organization#
Type:

Optional[pontos.github.models.organization.Organization]

permissions#
Type:

Optional[pontos.github.models.organization.RepositoryPermissions]

pushed_at#
Type:

Optional[datetime.datetime]

security_and_analysis#
Type:

Optional[pontos.github.models.organization.SecurityAndAnalysis]

size#
Type:

Optional[int]

ssh_url#
Type:

Optional[str]

stargazers_count#
Type:

Optional[int]

subscribers_count#
Type:

Optional[int]

svn_url#
Type:

Optional[str]

squash_merge_commit_message#
Type:

Optional[pontos.github.models.organization.SquashMergeCommitMessage]

squash_merge_commit_title#
Type:

Optional[pontos.github.models.organization.SquashMergeCommitTitle]

temp_clone_token#
Type:

Optional[str]

topics#
Type:

Optional[List[str]]

updated_at#

Last modification date

Type:

Optional[datetime.datetime]

use_squash_pr_title_as_default#
Type:

Optional[bool]

visibility#
Type:

Optional[str]

watchers_count#
Type:

Optional[int]

watchers#
Type:

Optional[int]

web_commit_signoff_required#
Type:

Optional[bool]

class pontos.github.models.organization.RepositoryPermissions(admin, push, pull, maintain=None, triage=None)#

GitHub repository permissions

admin#
Type:

bool

push#
Type:

bool

pull#
Type:

bool

maintain#
Type:

Optional[bool]

triage#
Type:

Optional[bool]

class pontos.github.models.organization.RepositoryType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

A repository type

ALL#

All repository types

PUBLIC#

Public repository

PRIVATE#

Private repository

FORKS#

Forked repository

SOURCES#
MEMBER#
INTERNAL#
class pontos.github.models.organization.SecurityAndAnalysis(advanced_security=None, dependabot_security_updates=None, secret_scanning=None, secret_scanning_push_protection=None)#

Security and analysis

advanced_security#

Status of GitHub Advanced Security is used

Type:

Optional[pontos.github.models.organization.SecurityAndAnalysisType]

dependabot_security_updates#

Status of Dependabot security updates are used

Type:

Optional[pontos.github.models.organization.SecurityAndAnalysisType]

secret_scanning#

Status of Secret Scanning is used

Type:

Optional[pontos.github.models.organization.SecurityAndAnalysisType]

secret_scanning_push_protection#

Status of Secret Scanning Push Protection is used

Type:

Optional[pontos.github.models.organization.SecurityAndAnalysisType]

class pontos.github.models.organization.SecurityAndAnalysisStatus(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Security and analysis status

ENABLED#

enabled

DISABLED#

disabled

class pontos.github.models.organization.SecurityAndAnalysisType(status)#

Security and analysis type

status#
Type:

pontos.github.models.organization.SecurityAndAnalysisStatus

class pontos.github.models.organization.SquashMergeCommitMessage(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Squash merge commit message setting

PR_BODY#

Use pull request body

COMMIT_MESSAGES#

Use commit messages

BLANK#

Leave it blank

class pontos.github.models.organization.SquashMergeCommitTitle(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Squash merge commit title

PR_TITLE#

Use pull request title

COMMIT_OR_PR_TITLE#

Use pull request or commit title

Pull Request#

class pontos.github.models.pull_request.AuthorAssociation(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Pull request author association

COLLABORATOR#

Author is a collaborator

CONTRIBUTOR#

Author is a contributor

FIRST_TIMER#

First time pull request

FIRST_TIME_CONTRIBUTOR#

Author is a first time contributor

MANNEQUIN#

Author is a mannequin

MEMBER#

Author is a member

NONE#

None

OWNER#

Author is owner

class pontos.github.models.pull_request.AutoMerge(enabled_by, merge_method, commit_title, commit_message)#

Auto merge information

enabled_by#

User who enabled the auto merge

Type:

pontos.github.models.base.User

merge_method#

Method that is used for the auto merge

Type:

pontos.github.models.pull_request.MergeMethod

commit_title#

Commit title of the auto merge

Type:

str

commit_message#

Commit message of the auto merge

Type:

str

class pontos.github.models.pull_request.Comment(id, node_id, url, html_url, issue_url, created_at, updated_at, author_association, body=None, user=None, reactions=None)#

A single comment of a pull request/issue

id#

Unique identifier of the comment

Type:

int

node_id#

Node ID of the comment

Type:

str

url#

URL for the issue comment

Type:

str

body#

Contents of the issue comment

Type:

Optional[str]

html_url#

URL to the web page of the comment

Type:

str

created_at#

Creation date

Type:

datetime.datetime

updated_at#

Last modification date

Type:

datetime.datetime

issue_url#

URL to the pull request

Type:

str

author_association#

How the author is associated with the repository

Type:

pontos.github.models.pull_request.AuthorAssociation

user#

Author of the comment

Type:

Optional[pontos.github.models.base.User]

reactions#

Reactions to the comment

Type:

Optional[pontos.github.models.pull_request.Reactions]

class pontos.github.models.pull_request.DiffEntry(additions, blob_url, changes, contents_url, deletions, filename, raw_url, sha, status, patch=None, previous_filename=None)#

Diff information of a pull request commit

additions#

Number of additions

Type:

int

blob_url#

URL to the binary blob

Type:

str

changes#

Number of changes

Type:

int

contents_url#

URL to the contents

Type:

str

deletions#

Number of deletions

Type:

int

filename#

Corresponding file name

Type:

str

raw_url#

URL to the raw content

Type:

str

sha#

Git commit ID of the change

Type:

str

status#

File status

Type:

pontos.github.models.base.FileStatus

patch#

Patch of the diff

Type:

Optional[str]

previous_filename#

Previous file name

Type:

Optional[str]

class pontos.github.models.pull_request.Label(id, node_id, url, name, color, default, description=None)#

Pull request label

id#

ID of the label

Type:

int

node_id#

Node ID of the label

Type:

str

url#

URL to the label

Type:

str

name#

Name of the label

Type:

str

color#

Color code of the label

Type:

str

default#

True if it is a default label

Type:

bool

description#

Description of the label

Type:

Optional[str]

class pontos.github.models.pull_request.MergeMethod(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

The (auto) merge method

MERGE#

Create a merge commit

SQUASH#

Squash commits into a single commit

REBASE#

Rebase commits onto the target branch

class pontos.github.models.pull_request.Milestone(closed_issues, created_at, html_url, id, labels_url, node_id, number, open_issues, state, title, updated_at, url, closed_at=None, creator=None, description=None, due_on=None)#

Pull request milestone

closed_issues#

Number of closed issues

Type:

int

created_at#

Creation date

Type:

datetime.datetime

html_url#

URL to the web page of the milestone

Type:

str

id#

ID of the milestone

Type:

int

labels_url#

URL to the labels of the milestone

Type:

str

node_id#

Node ID of the milestone

Type:

str

number#

Milestone number

Type:

int

open_issues#

Number of open issues in the milestone

Type:

int

state#

State of the milestone

Type:

pontos.github.models.pull_request.MilestoneState

title#

Title of the milestone

Type:

str

updated_at#

Last modification date

Type:

datetime.datetime

url#

URL of the milestone

Type:

str

closed_at#

Closed date

Type:

Optional[datetime.datetime]

creator#

Use who created the milestone

Type:

Optional[pontos.github.models.base.User]

description#

Description of the milestone

Type:

Optional[str]

due_on#

Due date of the milestone

Type:

Optional[datetime.datetime]

class pontos.github.models.pull_request.MilestoneState(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

State of a pull request milestone (open, closed)

OPEN#

Milestone is open

CLOSED#

Milestone is closed

class pontos.github.models.pull_request.PullRequest(additions, author_association, base, changed_files, comments_url, comments, commits_url, commits, created_at, deletions, diff_url, head, html_url, id, issue_url, locked, maintainer_can_modify, mergeable_state, merged, node_id, number, patch_url, review_comment_url, review_comments_url, review_comments, state, statuses_url, title, updated_at, url, user, active_lock_reason=None, assignee=None, assignees=<factory>, auto_merge=None, body=None, closed_at=None, draft=None, labels=<factory>, merge_commit_sha=None, mergeable=None, merged_at=None, merged_by=None, milestone=None, rebaseable=None, requested_reviewers=<factory>, requested_teams=<factory>)#

A GitHub pull request

additions#

Number of changes

Type:

int

author_association#

Author role

Type:

pontos.github.models.pull_request.AuthorAssociation

base#

Reference to the source branch

Type:

pontos.github.models.pull_request.PullRequestRef

changed_files#

Number of changed files

Type:

int

comments_url#

URL to the pull request comments

Type:

str

comments#

Number of comments

Type:

int

commits_url#

URL to the pull request commits

Type:

str

commits#

Number of commits

Type:

int

created_at#

Creation date

Type:

datetime.datetime

deletions#

Number of deletions

Type:

int

diff_url#

URL to the diff view

Type:

str

head#

Reference to the target branch

Type:

pontos.github.models.pull_request.PullRequestRef

html_url#

URL to the web page of the pull request

Type:

str

id#

ID of the pull request

Type:

int

issue_url#

URL to the pull request

Type:

str

locked#

True if the pull request is locked

Type:

bool

maintainer_can_modify#

True if the maintainer can modify the pull request

Type:

bool

mergeable_state#

Mergeable state

Type:

str

merged#

True if the pull request is merged

Type:

bool

node_id#

Node ID of the pull request

Type:

str

number#

Pull request number

Type:

int

patch_url#

URL to the diff patch

Type:

str

review_comment_url#
Type:

str

review_comments_url#

URL to the reviewer comments

Type:

str

review_comments#

Number of reviewer comments

Type:

int

state#

State of the pull request

Type:

pontos.github.models.pull_request.PullRequestState

statuses_url#

URL of the pull request statuses

Type:

str

title#

Pull request title

Type:

str

updated_at#

Last modification date

Type:

datetime.datetime

url#

URL to the pull request

Type:

str

user#

User who created the pull request

Type:

pontos.github.models.base.User

active_lock_reason#

Optional[str] = None

Type:

Optional[str]

assignee#

Assigned user

Type:

Optional[pontos.github.models.base.User]

assignees#

List of assigned users

Type:

List[pontos.github.models.base.User]

auto_merge#

True if the pull request should be merged automatically

Type:

Optional[pontos.github.models.pull_request.AutoMerge]

body#

Body text of the pull request

Type:

Optional[str]

closed_at#

Date when the pull request was closed

Type:

Optional[datetime.datetime]

draft#

True if the pull request is a draft

Type:

Optional[bool]

labels#

List of assigned labels

Type:

List[pontos.github.models.pull_request.Label]

merge_commit_sha#

Git commit ID of the merge commit

Type:

Optional[str]

mergeable#

True if the pull request is mergeable

Type:

Optional[bool]

merged_at#

Date when the pull request got merged

Type:

Optional[datetime.datetime]

merged_by#

User who merged the pull request

Type:

Optional[pontos.github.models.base.User]

milestone#

A connected milestone

Type:

Optional[pontos.github.models.pull_request.Milestone]

rebaseable#

True if the pull request is rebaseable

Type:

Optional[bool]

requested_reviewers#

List of users requested as reviewers

Type:

List[pontos.github.models.base.User]

requested_teams#

List of teams requested as reviewers

Type:

List[pontos.github.models.base.Team]

class pontos.github.models.pull_request.PullRequestCommit(url, sha, node_id, html_url, comments_url, commit, author, stats=None, files=<factory>, committer=None, parents=<factory>)#

Pull request commit

url#

URL to the pull request commit

Type:

str

sha#

Git commit ID

Type:

str

node_id#

Node ID of the pull request commit

Type:

str

html_url#

URL to the web page of the pull request commit

Type:

str

comments_url#

URL to the pull request comments

Type:

str

commit#

Git commit object

Type:

pontos.github.models.pull_request.PullRequestCommitDetails

author#

Author of the pull request commit

Type:

pontos.github.models.base.User

stats#

File stats of the pull request commit

Type:

Optional[pontos.github.models.pull_request.Stats]

files#

Diff information about the files in pull request commit

Type:

List[pontos.github.models.pull_request.DiffEntry]

committer#

Committer of the pull request

Type:

Optional[pontos.github.models.base.User]

parents#

List of parent commits

Type:

List[pontos.github.models.pull_request.PullRequestCommitParent]

class pontos.github.models.pull_request.PullRequestCommitDetails(comment_count, message, tree, url, verification, author=None, committer=None)#

Detailed information of a pull request commit

comment_count#

Number of comments

Type:

int

message#

Commit message

Type:

str

tree#

Commit tree

Type:

pontos.github.models.pull_request.Tree

url#

URL to the pull request commit

Type:

str

verification#

Verification details of the pull request commit

Type:

pontos.github.models.pull_request.PullRequestCommitVerification

author#

Author of the pull request commit

Type:

Optional[pontos.github.models.pull_request.PullRequestCommitUser]

committer#

Committer of the pull request commit

Type:

Optional[pontos.github.models.pull_request.PullRequestCommitUser]

class pontos.github.models.pull_request.PullRequestCommitParent(url, sha, html_url=None)#

Pull request parent commit information

url#

URL to the parent commit

Type:

str

sha#

Git commit ID of the parent commit

Type:

str

html_url#

URL to the web page of the parent commit

Type:

Optional[str]

class pontos.github.models.pull_request.PullRequestCommitUser(name, email, date)#

User information of a commit

name#

Name of the user

Type:

str

email#

Email address of the user

Type:

str

date#
Type:

datetime.datetime

class pontos.github.models.pull_request.PullRequestCommitVerification(verified, reason, signature=None, payload=None)#

Verification details of a pull request commit

verified#

True if the commit is verified

Type:

bool

reason#

Details of the verification

Type:

str

signature#

Signature of the verification

Type:

Optional[str]

payload#

Payload of the verification

Type:

Optional[str]

class pontos.github.models.pull_request.PullRequestRef(label, ref, sha, user, repo)#

Pull request reference

label#

Label of the pull request reference

Type:

str

ref#

Pull request reference name

Type:

str

sha#

Git commit ID of pull request reference

Type:

str

user#

User who created the pull request reference

Type:

pontos.github.models.base.User

repo#

Corresponding repository

Type:

pontos.github.models.organization.Repository

class pontos.github.models.pull_request.PullRequestState(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Pull request state

OPEN#

Pull request is open

CLOSED#

Pull request is closed

class pontos.github.models.pull_request.Stats(additions, deletions, total)#

Pull request commit stats

additions#

Number of additions

Type:

int

deletions#

Number of deletions

Type:

int

total#

Total number of changes

Type:

int

class pontos.github.models.pull_request.Tree(url, sha)#

Git tree information

url#

URL to the tree

Type:

str

sha#

Git ID of the tree

Type:

str

Release#

class pontos.github.models.release.Release(assets_url, created_at, draft, html_url, id, node_id, prerelease, tag_name, target_commitish, upload_url, url, assets=<factory>, author=None, body_html=None, body_text=None, body=None, discussion_url=None, mentions_count=None, name=None, published_at=None, reactions=None, tarball_url=None, zipball_url=None)#

A GitHub release model

assets_url#

URL to the release assets

Type:

str

created_at#

Creation Date

Type:

datetime.datetime

draft#

True if the release is a draft

Type:

bool

html_url#

URL to the web page of the release

Type:

str

id#

ID of the release

Type:

int

node_id#

Node ID of the release

Type:

str

prerelease#

True if the release is a pre release

Type:

bool

tag_name#

Name of the tag referenced by the release

Type:

str

target_commitish#

Git commit ID of the tag references by the release

Type:

str

upload_url#

URL to upload release assets to

Type:

str

url#

URL of the release

Type:

str

assets#

Information about the release assets

Type:

List[pontos.github.models.release.ReleaseAsset]

author#

User created the release

Type:

Optional[pontos.github.models.base.User]

body_html#

Body of the release as HTML

Type:

Optional[str]

body_text#

Body of the release as text

Type:

Optional[str]

body#

Body of the release

Type:

Optional[str]

discussion_url#

URL to the release discussion

Type:

Optional[str]

mentions_count#
Type:

Optional[int]

name#

Name of the release

Type:

Optional[str]

published_at#

Publication date of the release

Type:

Optional[datetime.datetime]

reactions#

Reaction information

Type:

Optional[pontos.github.models.release.ReleaseReactions]

tarball_url#

URL to the tarball archive of the release

Type:

Optional[str]

zipball_url#

URL to the zip archive of the release

Type:

Optional[str]

class pontos.github.models.release.ReleaseAsset(url, browser_download_url, id, node_id, name, state, content_type, size, download_count, created_at, updated_at, label=None, uploader=None)#

A GitHub release asset model

url#

URL of the release asset

Type:

str

browser_download_url#

Direct URL to download the asset from

Type:

str

id#

ID of the asset

Type:

int

node_id#

Node ID of the asset

Type:

str

name#

Name of the asset

Type:

str

state#

State of the asset

Type:

pontos.github.models.release.ReleaseAssetState

content_type#

MIME content type of the asset

Type:

str

size#

Size of the asset

Type:

int

download_count#

Number of downloads

Type:

int

created_at#

Creation date

Type:

datetime.datetime

updated_at#

Upload date

Type:

datetime.datetime

label#

Label of the asset

Type:

Optional[str]

uploader#

User who uploaded the asset

Type:

Optional[pontos.github.models.base.User]

class pontos.github.models.release.ReleaseAssetState(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

State of a release asset

UPLOADED#

Uploaded

OPEN#

Open

class pontos.github.models.release.ReleaseReactions(url, total_count, laugh, confused, heart, hooray, eyes, rocket)#

Reactions to a GitHub release

url#

URL to the release reactions

Type:

str

total_count#

Total number of reactions

Type:

int

laugh#

Number of user reacted with laugh

Type:

int

confused#

Number of user reacted with confused

Type:

int

heart#

Number of user reacted with heart

Type:

int

hooray#

Number of user reacted with hooray

Type:

int

eyes#

Number of user reacted with eyes

Type:

int

rocket#

Number of user reacted with rocket

Type:

int

Search#

class pontos.github.models.search.InDescriptionQualifier#

Qualifier for searching in repository descriptions

class pontos.github.models.search.InNameQualifier#

Qualifier for searching in repository names

class pontos.github.models.search.InReadmeQualifier#

Qualifier for searching in repository READMEs

class pontos.github.models.search.InTopicsQualifier#

Qualifier for searching in repository topics

class pontos.github.models.search.IsPrivateQualifier#

Qualifier for searching for private repositories

class pontos.github.models.search.IsPublicQualifier#

Qualifier for searching for public repositories

class pontos.github.models.search.NotQualifier(qualifier)#

Qualifier for negating another qualifier

Example

Exclude a repository from a search

from pontos.github.models import NotQualifier, RepositoryQualifier

qualifier = NotQualifier(RepositoryQualifier("foo/bar"))
class pontos.github.models.search.OrganizationQualifier(organization)#

Qualifier for searching within a specific organization

Search within an organization

Parameters:

organization (str) – Name of the organization to search within

class pontos.github.models.search.Qualifier#

An abstract base class for search qualifiers

operator#

The search operator

Type:

str

term#

The search term

Type:

str

class pontos.github.models.search.RepositoryQualifier(repository)#

Qualifier for searching within a specific repository

Search within a repository

Parameters:

repository (str) – owner/repo

class pontos.github.models.search.RepositorySort(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Sort repositories by

STARS#

GitHub starts

FORKS#

GitHub forks

HELP_WANTED_ISSUES#

Number of issues with help wanted label

UPDATED#

Last updated

class pontos.github.models.search.SortOrder(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Sort order: asc or desc

ASC#

Use ascending sort order

DESC#

Use descending sort order

class pontos.github.models.search.UserQualifier(user)#

Qualifier for searching within a specific user space

Search within an user space

Parameters:

user (str) – Name of the user

Tag#

class pontos.github.models.tag.GitObjectType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

A git object type

COMMIT#

A commit object

TREE#

A tree object

BLOB#

A blob object

class pontos.github.models.tag.Tag(node_id, tag, sha, url, message, tagger, object, verification=None)#

A GitHub tag model

node_id#

Node ID of the tag

Type:

str

tag#

The tag name

Type:

str

sha#

The corresponding sha (git ID)

Type:

str

url#

URL to the tag

Type:

str

message#

The git commit message of the tag

Type:

str

tagger#

The creator of the tag

Type:

pontos.github.models.tag.Tagger

object#

The corresponding git object

Type:

pontos.github.models.tag.GitObject

verification#

The verification status of the tag

Type:

Optional[pontos.github.models.tag.Verification]

class pontos.github.models.tag.Tagger(date, email, name)#

GitHub user who created a tag

date#

Date of the tag

Type:

datetime.datetime

email#

Email address of the user

Type:

str

name#

Name of the user

Type:

str

class pontos.github.models.tag.Verification(verified, reason, payload=None, signature=None)#

Verification details of a tag

verified#

True if the tag is verified

Type:

bool

reason#

Details of the reason of the verification status

Type:

pontos.github.models.tag.VerificationReason

payload#

Payload of the verification

Type:

Optional[str]

signature#

Signature of the verification

Type:

Optional[str]

class pontos.github.models.tag.VerificationReason(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Verification reason details

EXPIRED_KEY#

Signature key has expired

NOT_SIGNING_KEY#

No signature key available

GPGVERIFY_ERROR#

GPG verification error

GPGVERIFY_UNAVAILABLE#

GPG verification not available

UNSIGNED#

Not signed

UNKNOWN_SIGNATURE_TYPE#

Unknown signature type

NO_USER#

No user

UNVERIFIED_EMAIL#

Email address not verified

BAD_EMAIL#

Bad email address

UNKNOWN_KEY#

Unknown signature key

MALFORMED_SIGNATURE#

Malformed signature

INVALID#

Invalid signature

VALID#

Valid signature

Workflow#

class pontos.github.models.workflow.Workflow(id, node_id, name, path, state, created_at, updated_at, url, html_url, badge_url, deleted_at=None)#

GitHub workflow

id#

ID of the workflow

Type:

int

node_id#

Node ID of the workflow

Type:

str

name#

Name of the workflow

Type:

str

path#

Path of the workflow file

Type:

str

state#

State of the workflow

Type:

pontos.github.models.workflow.WorkflowState

created_at#

Creation date

Type:

datetime.datetime

updated_at#

Last modification date

Type:

datetime.datetime

url#

URL to the workflow

Type:

str

html_url#

URL to the web page of the workflow

Type:

str

badge_url#

URL to the workflow status badge

Type:

str

deleted_at#

Deletion date of the workflow

Type:

Optional[datetime.datetime]

class pontos.github.models.workflow.WorkflowState(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

State of a workflow

ACTIVE#

Workflow is active

DELETED#

Workflow is deleted

DISABLED_FORK#

Workflow is disabled because it is run from a fork

DISABLED_INACTIVITY#

Workflow is disabled because if inactivity

DISABLED_MANUALLY#

Workflow is disabled manually

class pontos.github.models.workflow.WorkflowRun(artifacts_url, cancel_url, check_suite_url, created_at, event, head_repository, head_sha, html_url, id, jobs_url, logs_url, node_id, repository, rerun_url, run_number, updated_at, url, workflow_id, workflow_url, actor=None, check_suite_id=None, check_suite_node_id=None, conclusion=None, display_title=None, head_branch=None, head_commit=None, head_repository_id=None, name=None, path=None, previous_attempt_url=None, pull_requests=<factory>, referenced_workflows=<factory>, run_attempt=None, run_started_at=None, status=None, triggering_actor=None)#

GitHub workflow run

artifacts_url#

URL to created artifacts within the workflow run

Type:

str

cancel_url#

URL to cancel the workflow run

Type:

str

check_suite_url#

URL to the status checks

Type:

str

created_at#

Creation date of the workflow run

Type:

datetime.datetime

event#

Event that triggered the workflow run

Type:

pontos.github.models.base.Event

head_repository#
Type:

pontos.github.models.workflow.WorkflowRunRepository

head_sha#
Type:

str

html_url#

URL to the web page of the workflow run

Type:

str

id#

ID of the workflow run

Type:

int

jobs_url#

URL to the workflow run jobs

Type:

str

logs_url#

URL to the workflow run logs

Type:

str

node_id#

Node ID of the workflow run

Type:

str

repository#

Corresponding repository of the workflow run

Type:

pontos.github.models.workflow.WorkflowRunRepository

rerun_url#

URL to rerun the workflow

Type:

str

run_number#

Number of the run

Type:

int

updated_at#

Last modification date

Type:

datetime.datetime

url#

URL to the workflow run

Type:

str

workflow_id#

ID of the corresponding workflow

Type:

int

workflow_url#

URL to the corresponding workflow

Type:

str

actor#

User that runs the workflow

Type:

Optional[pontos.github.models.base.User]

check_suite_id#
Type:

Optional[int]

check_suite_node_id#
Type:

Optional[str]

conclusion#

Conclusion of the workflow run

Type:

Optional[str]

display_title#

Displayed title of the workflow run

Type:

Optional[str]

head_branch#
Type:

Optional[str]

head_commit#
Type:

Optional[pontos.github.models.workflow.WorkflowRunCommit]

head_repository_id#
Type:

Optional[int]

name#

Name of the workflow

Type:

Optional[str]

path#

Path to the workflow file

Type:

Optional[str]

previous_attempt_url#

URL to the previous workflow run attempt

Type:

Optional[str]

pull_requests#

List of pull requests

Type:

List[Dict]

referenced_workflows#

List of references workflows

Type:

List[pontos.github.models.workflow.WorkflowRunWorkflow]

run_attempt#

Number of the run attempt

Type:

Optional[int]

run_started_at#

Date the run started at

Type:

Optional[datetime.datetime]

status#

Status of the workflow run

Type:

Optional[pontos.github.models.workflow.WorkflowRunStatus]

triggering_actor#

User who triggered the workflow run

Type:

Optional[pontos.github.models.base.User]

class pontos.github.models.workflow.WorkflowRunCommit(id, tree_id, message, timestamp, author=None, committer=None)#

GitHub workflow run commit reference

id#

ID of the commit

Type:

str

tree_id#

Tree ID of the commit

Type:

str

message#

Message of the commit

Type:

str

timestamp#

Timestamp of the commit

Type:

datetime.datetime

author#

Author of the commit

Type:

Optional[pontos.github.models.workflow.WorkflowRunCommitUser]

committer#

Committer of the commit

Type:

Optional[pontos.github.models.workflow.WorkflowRunCommitUser]

class pontos.github.models.workflow.WorkflowRunCommitUser(name, email)#

User information of a workflow run commit

name#

Name of the user

Type:

str

email#

Email address of the user

Type:

str

class pontos.github.models.workflow.WorkflowRunRepository(id, url, name, node_id, full_name=None, owner=None, private=None, html_url=None, description=None, fork=None, archive_url=None, assignees_url=None, blobs_url=None, branches_url=None, collaborators_url=None, comments_url=None, commits_url=None, compare_url=None, contents_url=None, contributors_url=None, deployments_url=None, downloads_url=None, events_url=None, forks_url=None, git_commits_url=None, git_refs_url=None, git_tags_url=None, git_url=None, issue_comment_url=None, issue_events_url=None, issues_url=None, keys_url=None, labels_url=None, languages_url=None, merges_url=None, milestones_url=None, notifications_url=None, pulls_url=None, releases_url=None, ssh_url=None, stargazers_url=None, statuses_url=None, subscribers_url=None, subscription_url=None, tags_url=None, teams_url=None, trees_url=None, hooks_url=None)#

GitHub workflow run repository

id#

ID of the repository

Type:

int

url#

URL to the repository

Type:

str

name#

Name of the repository

Type:

str

node_id#

Node ID of the repository

Type:

str

full_name#

Full name of the repository

Type:

Optional[str]

owner#

Owner of the repository

Type:

Optional[pontos.github.models.base.User]

private#

True if the repository is private

Type:

Optional[bool]

html_url#

URL to the web page of the repository

Type:

Optional[str]

description#

Description of the repository

Type:

Optional[str]

fork#

True if the repository is a fork

Type:

Optional[bool]

archive_url#

URL to the archive of the repository

Type:

Optional[str]

assignees_url#

URL to the assignees

Type:

Optional[str]

blobs_url#

URL to the binary blobs

Type:

Optional[str]

branches_url#

URL to the branches

Type:

Optional[str]

collaborators_url#

URL to the collaborators

Type:

Optional[str]

comments_url#

URL to the comments

Type:

Optional[str]

commits_url#

URL to commits

Type:

Optional[str]

compare_url#

URL to compare

Type:

Optional[str]

contents_url#

URL to the contents

Type:

Optional[str]

contributors_url#

URL to the contributors

Type:

Optional[str]

deployments_url#

URL to deployments

Type:

Optional[str]

downloads_url#

URL to downloads

Type:

Optional[str]

events_url#

URL to the events

Type:

Optional[str]

forks_url#

URL to the forks of the repository

Type:

Optional[str]

git_commits_url#

URL to the commits of the repository

Type:

Optional[str]

git_refs_url#

URL to the git refs

Type:

Optional[str]

git_tags_url#

URL to the git tags

Type:

Optional[str]

git_url#

Git clone URL

Type:

Optional[str]

issue_comment_url#

URL to the issue comments

Type:

Optional[str]

issue_events_url#

URL to the issue events

Type:

Optional[str]

issues_url#

URL to the issues

Type:

Optional[str]

keys_url#

URL to the keys

Type:

Optional[str]

labels_url#

URL to the labels

Type:

Optional[str]

languages_url#

URL to the languages

Type:

Optional[str]

merges_url#

URL to the merges

Type:

Optional[str]

milestones_url#

URL to the milestones

Type:

Optional[str]

notifications_url#

URL to the notifications

Type:

Optional[str]

pulls_url#

URL to the pull requests

Type:

Optional[str]

releases_url#

URL to releases

Type:

Optional[str]

ssh_url#

Git clone URL using ssh

Type:

Optional[str]

stargazers_url#

URL to the stargazers

Type:

Optional[str]

statuses_url#

URL to the statuses

Type:

Optional[str]

subscribers_url#

URL to the subscribers

Type:

Optional[str]

subscription_url#

URL to subscribe to the repository

Type:

Optional[str]

tags_url#

URL to the tags

Type:

Optional[str]

teams_url#

URL to the teams

Type:

Optional[str]

trees_url#

URL to the trees

Type:

Optional[str]

hooks_url#

URL to the hooks

Type:

Optional[str]

class pontos.github.models.workflow.WorkflowRunStatus(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Status of a workflow run

ACTION_REQUIRED#

Use action is required

CANCELLED#

The workflow run is canceled

COMPLETED#

The workflow run is completed

FAILURE#

The workflow run failed

IN_PROGRESS#

The workflow run is in progress

NEUTRAL#

Neutral

QUEUED#

The workflow run is queued

REQUESTED#

The workflow run is requested

SKIPPED#

The workflow run is skipped

STALE#

The workflow run is stale

SUCCESS#

The workflow run is finished successfully

TIMED_OUT#

The workflow run has timed out

WAITING#

The workflow run is waiting

PENDING#

The workflow run is pending

class pontos.github.models.workflow.WorkflowRunWorkflow(path, sha, ref=None)#

GitHub workflow of a workflow run

path#

Path to the workflow file

Type:

str

sha#

Git commit ID of the workflow file

Type:

str

ref#
Type:

Optional[str]