openhound-github 0.3.1__tar.gz → 0.3.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {openhound_github-0.3.1 → openhound_github-0.3.2}/PKG-INFO +1 -1
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/workflow.py +39 -31
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/workflow_job.py +42 -4
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/CODE_OF_CONDUCT.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/CONTRIBUTING.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/GOVERNANCE.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/GitHub-COC-Header.png +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/GitHub-CONTRIB-Header.png +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/GitHub-GOV-Header.png +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/GitHub-Header.png +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/GitHub-LIC-Header.png +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/GitHub-SEC-Header.png +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/SECURITY.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/SO-Dark.svg +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/SO-FOSS-Dark.svg +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/SO-FOSS-Light.svg +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/SO-Light.svg +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/workflows/publish.yml +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/workflows/release-on-merge.yml +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.github/workflows/validate-branch.yml +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.gitignore +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.gitmodules +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/.pre-commit-config.yaml +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/LICENSE.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/README.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_AddAssignee.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_AddCollaborator.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_AddLabel.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_AddMember.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_AdminTo.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_BypassBranchProtection.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_BypassPullRequestAllowances.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CallsWorkflow.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CanAccess.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CanAssumeIdentity.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CanCreateBranch.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CanEditProtection.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CanPwnRequest.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CanReadSecretScanningAlert.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CanWriteBranch.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CloseDiscussion.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CloseIssue.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ClosePullRequest.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_Contains.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ConvertIssuesToDiscussions.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CreateDiscussionCategory.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CreateRepository.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CreateSoloMergeQueueEntry.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CreateTag.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CreateTeam.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_DeleteAlertsCodeScanning.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_DeleteDiscussion.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_DeleteDiscussionComment.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_DeleteIssue.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_DeleteTag.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_DependsOn.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_DeploysTo.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_EditCategoryOnDiscussion.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_EditDiscussionCategory.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_EditDiscussionComment.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_EditRepoAnnouncementBanners.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_EditRepoCustomPropertiesValues.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_EditRepoMetadata.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_EditRepoProtections.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasBaseRole.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasBranch.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasEnvironment.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasExternalIdentity.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasJob.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasMember.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasPersonalAccessToken.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasPersonalAccessTokenRequest.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasRole.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasSamlIdentityProvider.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasSecret.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasStep.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasVariable.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasWorkflow.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_InstalledAs.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_InviteMember.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_JumpMergeQueue.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageDeployKeys.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageDiscussionBadges.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageOrganizationWebhooks.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageRepoSecurityProducts.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageSecurityProducts.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageSettingsMergeTypes.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageSettingsPages.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageSettingsProjects.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageSettingsWiki.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageTopics.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageWebhooks.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_MapsToUser.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_MarkAsDuplicate.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_MemberOf.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_OrgBypassCodeScanningDismissalRequests.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_OrgBypassSecretScanningClosureRequests.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_OrgReviewAndManageSecretScanningBypassRequests.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_OrgReviewAndManageSecretScanningClosureRequests.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_Owns.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ProtectedBy.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_PushProtectedBranch.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ReadCodeScanning.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ReadOrganizationActionsUsageMetrics.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ReadOrganizationCustomOrgRole.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ReadOrganizationCustomRepoRole.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ReadRepoContents.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_RemoveAssignee.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_RemoveLabel.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ReopenDiscussion.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ReopenIssue.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ReopenPullRequest.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_RequestPrReview.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ResolveDependabotAlerts.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ResolveSecretScanningAlerts.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_RestrictionsCanPush.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_RunOrgMigration.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_SetInteractionLimits.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_SetIssueType.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_SetMilestone.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_SetSocialPreview.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_SyncedTo.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ToggleDiscussionAnswer.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ToggleDiscussionCommentMinimize.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_TransferRepository.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_UsesSecret.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_UsesVariable.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ValidToken.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ViewDependabotAlerts.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ViewSecretScanningAlerts.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_WriteCodeScanning.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_WriteOrganizationActionsSecrets.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_WriteOrganizationActionsSettings.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_WriteOrganizationActionsVariables.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_WriteOrganizationCustomOrgRole.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_WriteOrganizationCustomRepoRole.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_WriteOrganizationNetworkConfigurations.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_WriteRepoContents.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_WriteRepoPullRequests.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_App.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_AppInstallation.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_Branch.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_BranchProtectionRule.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_Environment.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_EnvironmentSecret.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_EnvironmentVariable.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_ExternalIdentity.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_OrgRole.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_OrgSecret.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_OrgVariable.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_Organization.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_PersonalAccessToken.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_PersonalAccessTokenRequest.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_RepoRole.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_RepoSecret.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_RepoVariable.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_Repository.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_SamlIdentityProvider.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_SecretScanningAlert.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_Team.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_TeamRole.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_User.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_Workflow.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_WorkflowJob.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_WorkflowStep.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/docs/og-docs.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/privilege_zone_rules/t0-all-repo-admin-role.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/privilege_zone_rules/t0-app-installations-all-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/privilege_zone_rules/t0-apps-all-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/privilege_zone_rules/t0-external-identities-owners.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/privilege_zone_rules/t0-organizations.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/privilege_zone_rules/t0-owner-users.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/privilege_zone_rules/t0-owners-role.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/privilege_zone_rules/t0-pats-all-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/privilege_zone_rules/t0-privilege-escalation-roles.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/privilege_zone_rules/t0-privilege-escalation-users.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/privilege_zone_rules/t0-saml-identity-providers.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/README.md +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/actions-sha-pinning-not-required.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/active-leaked-secrets.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/advanced-security-disabled-new-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/all-actions-allowed.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/app-installations-all-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/branch-protection-admins-not-enforced.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/branch-protection-deletions-allowed.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/branch-protection-force-pushes.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/branch-protection-no-code-owner-reviews.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/branch-protection-no-pr-reviews.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/branch-protection-no-status-checks.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/branch-protection-self-approval.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/branch-protection-stale-reviews.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/bypass-pr-requirements.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/dangerous-branch-perms.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/default-repository-permissions.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/demo-sso-to-cloud-round-trip.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/dependabot-alerts-disabled-new-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/dependabot-updates-disabled-new-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/dependency-graph-disabled-new-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/environments-admin-bypass.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/expired-pats.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/external-identities-without-scim.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/github-to-azure-identity.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/global-repo-perms.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/hybrid-identities.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/members-can-change-repo-visibility.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/members-can-create-pages.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/members-can-create-public-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/members-can-delete-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/members-can-fork-private-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/members-can-invite-outside-collaborators.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/org-owners.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/orgs-without-2fa.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/pats-all-repo-access.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/pending-pat-requests.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/private-repos-forking-allowed.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/privileged-custom-org-roles.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/privileged-hybrid-identities.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/public-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/push-protection-disabled-new-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/push-to-protected-branches.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/repos-secret-scanning-disabled.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/repos-vulnerable-to-workflow-secret-exfil.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/repository-workflows.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/saml-configuration.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/secret-scanning-alerts.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/secret-scanning-disabled-new-repos.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/secrets-reachable-by-user.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/team-membership-admin.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/team-structure.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/unprotected-branches.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/unprotected-default-branch-with-workflow.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/unprotected-default-branches.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/saved_searches/web-commit-signoff-not-required.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension/schema.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/extension.yaml +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/justfile +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/pyproject.toml +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/main.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/__init__.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/auth.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/graph.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/graphql.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/helpers.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/kinds/edges.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/kinds/nodes.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/lookup.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/main.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/__init__.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/actions_permission.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/app_installation.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/branch.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/branch_pr_bypass_allowance.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/branch_protection_rule.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/branch_push_allowance.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_admin.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_external_identity.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_helpers.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_managed_user.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_member.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_organization.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_role.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_role_team.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_role_user.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_saml_provider.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_team.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_team_member.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_team_organization.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_team_role.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/enterprise_user.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/env_secret.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/env_variable.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/environment.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/environment_branch_policy.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/external_identity.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/org.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/org_role.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/org_role_member.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/org_role_team.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/org_secret.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/org_variable.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/personal_access_token.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/personal_access_token_access.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/personal_access_token_request.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/projected_enterprise_team.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/repo_role_assignment.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/repository.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/repository_role.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/repository_secret.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/repository_variable.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/runner.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/saml_provider.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/scim_user.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/secret_scanning_alert.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/team.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/team_member.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/team_role.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/user.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/workflow_step.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/resources/__init__.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/resources/enterprise.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/resources/organization.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/source.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/transforms.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/actions-permissions.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/actionsecrets.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/app.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/appinstalls.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/branch-policies.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/branch-prot-rules.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/branches.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/custom-roles.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/environments.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/org-pat-request.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/org-pat.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/org-role-teams.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/org-role-users.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/org-roles.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/org.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/pat-repositories.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/repo-collaborators.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/repo-teams.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/repositories.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/scimusers.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/secrets.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/secretscanningalert.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/selected-org-secrets.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/variables.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_data/api/workflows.json +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_github_rest_client.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/tests/test_github_retry.py +0 -0
- {openhound_github-0.3.1 → openhound_github-0.3.2}/uv.lock +0 -0
|
@@ -51,8 +51,8 @@ class WorkflowStepDefinition(BaseModel):
|
|
|
51
51
|
name: str | None = None
|
|
52
52
|
uses: str | None = None
|
|
53
53
|
run: str | None = None
|
|
54
|
-
with_: dict[str,
|
|
55
|
-
env: dict[str,
|
|
54
|
+
with_: dict[str, str] = Field(default_factory=dict, alias="with")
|
|
55
|
+
env: dict[str, str] = Field(default_factory=dict)
|
|
56
56
|
|
|
57
57
|
@field_validator("with_", "env", mode="before")
|
|
58
58
|
@classmethod
|
|
@@ -79,23 +79,45 @@ class WorkflowStepDefinition(BaseModel):
|
|
|
79
79
|
return "unknown"
|
|
80
80
|
|
|
81
81
|
|
|
82
|
+
class Container(BaseModel):
|
|
83
|
+
image: str
|
|
84
|
+
credentials: dict[str, str] | None = None
|
|
85
|
+
env: dict[str, str] | None = None
|
|
86
|
+
ports: list[int] | None = None
|
|
87
|
+
|
|
88
|
+
def __str__(self) -> str:
|
|
89
|
+
return self.image
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
class RunsOn(BaseModel):
|
|
93
|
+
group: str | None = None
|
|
94
|
+
labels: list[str] | str | None = None
|
|
95
|
+
|
|
96
|
+
|
|
82
97
|
class WorkflowJobDefinition(BaseModel):
|
|
83
98
|
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
84
99
|
|
|
85
|
-
runs_on:
|
|
86
|
-
needs:
|
|
87
|
-
environment:
|
|
88
|
-
permissions:
|
|
100
|
+
runs_on: str | list[str] | RunsOn | None = Field(default=None, alias="runs-on")
|
|
101
|
+
needs: str | list[str] | None = None
|
|
102
|
+
environment: str | dict[str, str] | None = None
|
|
103
|
+
permissions: str | dict[str, str] | None = None
|
|
89
104
|
uses: str | None = None
|
|
90
|
-
container:
|
|
91
|
-
env: dict[str,
|
|
92
|
-
secrets: dict[str,
|
|
105
|
+
container: str | Container | None = None
|
|
106
|
+
env: dict[str, str] = Field(default_factory=dict)
|
|
107
|
+
secrets: dict[str, str] = Field(default_factory=dict)
|
|
93
108
|
steps: list[WorkflowStepDefinition] = Field(default_factory=list)
|
|
94
109
|
|
|
95
|
-
|
|
110
|
+
# This may seem strange, but the GitHub yaml format accepts empty values for keys
|
|
111
|
+
# additionally, to prevent other yaml parsing issues, make sure we always convert the key/value to string first
|
|
112
|
+
# for both env and secrets
|
|
113
|
+
@field_validator("env", "secrets", mode="before")
|
|
96
114
|
@classmethod
|
|
97
|
-
def dict_or_empty(cls, value: Any) -> dict[str,
|
|
98
|
-
return
|
|
115
|
+
def dict_or_empty(cls, value: Any) -> dict[str, str]:
|
|
116
|
+
return (
|
|
117
|
+
{f"{str(key)}": f"{str(value)}" for key, value in value.items()}
|
|
118
|
+
if isinstance(value, dict)
|
|
119
|
+
else {}
|
|
120
|
+
)
|
|
99
121
|
|
|
100
122
|
@field_validator("steps", mode="before")
|
|
101
123
|
@classmethod
|
|
@@ -123,27 +145,15 @@ class WorkflowJobDefinition(BaseModel):
|
|
|
123
145
|
return str(self.environment["name"])
|
|
124
146
|
return None
|
|
125
147
|
|
|
126
|
-
@property
|
|
127
|
-
def is_self_hosted(self) -> bool:
|
|
128
|
-
if isinstance(self.runs_on, str):
|
|
129
|
-
return self.runs_on == "self-hosted"
|
|
130
|
-
if isinstance(self.runs_on, list):
|
|
131
|
-
return "self-hosted" in [str(item) for item in self.runs_on]
|
|
132
|
-
return False
|
|
133
|
-
|
|
134
148
|
@property
|
|
135
149
|
def container_value(self) -> str | None:
|
|
136
|
-
if self.container
|
|
137
|
-
return None
|
|
138
|
-
if isinstance(self.container, str):
|
|
139
|
-
return self.container
|
|
140
|
-
return str(self.container)
|
|
150
|
+
return str(self.container) if self.container else None
|
|
141
151
|
|
|
142
152
|
|
|
143
153
|
class WorkflowDocument(BaseModel):
|
|
144
154
|
model_config = ConfigDict(extra="allow")
|
|
145
155
|
|
|
146
|
-
permissions:
|
|
156
|
+
permissions: str | dict[str, str] | None = None
|
|
147
157
|
jobs: dict[str, WorkflowJobDefinition] = Field(default_factory=dict)
|
|
148
158
|
|
|
149
159
|
@field_validator("jobs", mode="before")
|
|
@@ -490,10 +500,9 @@ class Workflow(BaseAsset):
|
|
|
490
500
|
for job_key, job in document.jobs.items():
|
|
491
501
|
secret_refs = []
|
|
492
502
|
variable_refs = []
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
)
|
|
503
|
+
secret_refs.extend(
|
|
504
|
+
mapping_references(SECRET_REFERENCE_RE, job.secrets, "secrets")
|
|
505
|
+
)
|
|
497
506
|
secret_refs.extend(mapping_references(SECRET_REFERENCE_RE, job.env, "env"))
|
|
498
507
|
variable_refs.extend(
|
|
499
508
|
mapping_references(VARIABLE_REFERENCE_RE, job.env, "env")
|
|
@@ -505,7 +514,6 @@ class Workflow(BaseAsset):
|
|
|
505
514
|
"name": f"{self.repository_name}\\{job_key}",
|
|
506
515
|
"job_key": job_key,
|
|
507
516
|
"runs_on": job.runs_on,
|
|
508
|
-
"is_self_hosted": job.is_self_hosted,
|
|
509
517
|
"container": job.container_value,
|
|
510
518
|
"environment": job.environment_name,
|
|
511
519
|
"permissions": job.permissions
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/src/openhound_github/models/workflow_job.py
RENAMED
|
@@ -21,6 +21,7 @@ from openhound_github.graph import GHNode, GHNodeProperties
|
|
|
21
21
|
from openhound_github.kinds import edges as ek
|
|
22
22
|
from openhound_github.kinds import nodes as nk
|
|
23
23
|
from openhound_github.main import app
|
|
24
|
+
from openhound_github.models.workflow import RunsOn
|
|
24
25
|
|
|
25
26
|
TEMPLATE_RE = re.compile(r"\$\{\{\s*[^}]+?\s*\}\}")
|
|
26
27
|
|
|
@@ -49,7 +50,7 @@ class GHWorkflowJobProperties(GHNodeProperties):
|
|
|
49
50
|
"""
|
|
50
51
|
|
|
51
52
|
job_key: str | None = None
|
|
52
|
-
runs_on:
|
|
53
|
+
runs_on: list[str] | None = None
|
|
53
54
|
is_self_hosted: bool = False
|
|
54
55
|
container: str | None = None
|
|
55
56
|
environment: str | None = None
|
|
@@ -153,8 +154,7 @@ class WorkflowJob(BaseAsset):
|
|
|
153
154
|
repository_name: str
|
|
154
155
|
repository_node_id: str
|
|
155
156
|
org_login: str
|
|
156
|
-
runs_on:
|
|
157
|
-
is_self_hosted: bool = False
|
|
157
|
+
runs_on: list[str] | None = None
|
|
158
158
|
container: str | None = None
|
|
159
159
|
environment: str | None = None
|
|
160
160
|
permissions: list[str] | None = None
|
|
@@ -172,14 +172,52 @@ class WorkflowJob(BaseAsset):
|
|
|
172
172
|
def normalize_permissions(cls, value: Any) -> list[str] | None:
|
|
173
173
|
if value is None:
|
|
174
174
|
return None
|
|
175
|
+
|
|
176
|
+
if isinstance(value, str):
|
|
177
|
+
return [value]
|
|
178
|
+
|
|
179
|
+
if isinstance(value, list):
|
|
180
|
+
return [str(item) for item in value]
|
|
181
|
+
|
|
175
182
|
if isinstance(value, dict):
|
|
176
|
-
return [f"{key}:{
|
|
183
|
+
return [f"{str(key)}:{str(value)}" for key, value in value.items()]
|
|
184
|
+
|
|
185
|
+
return [str(value)]
|
|
186
|
+
|
|
187
|
+
@field_validator("runs_on", mode="before")
|
|
188
|
+
@classmethod
|
|
189
|
+
def normalize_runs_on(cls, value: Any) -> list[str] | None:
|
|
190
|
+
if value is None:
|
|
191
|
+
return None
|
|
192
|
+
|
|
177
193
|
if isinstance(value, str):
|
|
178
194
|
return [value]
|
|
195
|
+
|
|
179
196
|
if isinstance(value, list):
|
|
180
197
|
return [str(item) for item in value]
|
|
198
|
+
|
|
199
|
+
if isinstance(value, RunsOn):
|
|
200
|
+
value = value.model_dump()
|
|
201
|
+
|
|
202
|
+
if isinstance(value, dict):
|
|
203
|
+
labels = value.get("labels")
|
|
204
|
+
if labels is None:
|
|
205
|
+
return None
|
|
206
|
+
|
|
207
|
+
if isinstance(labels, str):
|
|
208
|
+
return [labels]
|
|
209
|
+
|
|
210
|
+
if isinstance(labels, list):
|
|
211
|
+
return [str(item) for item in labels]
|
|
212
|
+
|
|
213
|
+
return [str(labels)]
|
|
214
|
+
|
|
181
215
|
return [str(value)]
|
|
182
216
|
|
|
217
|
+
@property
|
|
218
|
+
def is_self_hosted(self) -> bool:
|
|
219
|
+
return "self-hosted" in (self.runs_on or [])
|
|
220
|
+
|
|
183
221
|
@property
|
|
184
222
|
def as_node(self) -> GHNode:
|
|
185
223
|
return GHNode(
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_BypassBranchProtection.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CanAssumeIdentity.md
RENAMED
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CanEditProtection.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CreateDiscussionCategory.md
RENAMED
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_CreateSoloMergeQueueEntry.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_DeleteAlertsCodeScanning.md
RENAMED
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_DeleteDiscussionComment.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_EditCategoryOnDiscussion.md
RENAMED
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_EditDiscussionCategory.md
RENAMED
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_EditDiscussionComment.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_EditRepoProtections.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasExternalIdentity.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasPersonalAccessToken.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_HasSamlIdentityProvider.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageDiscussionBadges.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageSecurityProducts.md
RENAMED
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageSettingsMergeTypes.md
RENAMED
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageSettingsPages.md
RENAMED
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageSettingsProjects.md
RENAMED
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ManageSettingsWiki.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_PushProtectedBranch.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ReopenPullRequest.md
RENAMED
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ResolveDependabotAlerts.md
RENAMED
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_RestrictionsCanPush.md
RENAMED
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_SetInteractionLimits.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ToggleDiscussionAnswer.md
RENAMED
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_TransferRepository.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ViewDependabotAlerts.md
RENAMED
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_ViewSecretScanningAlerts.md
RENAMED
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_WriteCodeScanning.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_WriteRepoContents.md
RENAMED
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/edges/GH_WriteRepoPullRequests.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_BranchProtectionRule.md
RENAMED
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_EnvironmentSecret.md
RENAMED
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_EnvironmentVariable.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openhound_github-0.3.1 → openhound_github-0.3.2}/descriptions/nodes/GH_PersonalAccessToken.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|